Skip to main content
Native 只把会改变用户可见结果的决定交给用户。仓库结构、依赖行为和运行环境等可查事实由 Agent 调查;实现方式由 Agent 根据风险选择。native.clarification_mode 只决定这些用户问题如何分轮,不改变 Shape、Build、Verify、Archive,也不降低进入 Build 前的要求。

选择澄清模式

.comet/config.yaml 中配置:
字段缺失时使用 sequential。切换模式不会清除 brief 中已有的 [blocking] 项,也不会把未回答问题自动按推荐项补全。先处理当前持久化问题,再按新模式组织下一轮。

本轮可回答问题集

Batch 不是把所有未知项一次性列成问卷。Native 会为每个问题检查三个条件:
  1. 它依赖的用户决定已经确定;
  2. 回答所需的仓库或环境事实已经查清;
  3. 它的答案不依赖本轮另一道尚未回答的问题。
同时满足三个条件的问题组成“本轮可回答问题集”。仍依赖其他决定或调查结果的问题留到下一轮。这样可以减少往返,同时避免要求用户在缺少前置信息时猜测。

小鱼在折页台阶上夹住本轮问题卡,已确定的前提在下方,下一轮问题在上方等待

每道问题仍应分别给出:
  • 问题:需要确定的用户可见行为;
  • 推荐:基于当前目标和权衡给出的建议;
  • 影响:不同选项会如何改变范围、结果或风险。

Claude Code 中的结构化提问

当前工具列表提供 AskUserQuestion 时,Native 优先使用 Claude Code 的结构化问题界面。Sequential 每轮提交一道问题;Batch 只有在整轮问题能满足当前工具的问题数、选项数和字段限制时,才把整组问题放进同一次调用。 同一轮不会拆成多次阻塞式工具调用。若整轮无法完整放入一次调用,Native 会把整轮统一降级为编号文本,保留相同的问题、选项、推荐和影响,再等待用户按编号回答。 单选和多选按决定本身的语义使用:
  • 选项互斥时使用单选;
  • 只有一个决定允许同时选择多个彼此兼容的选项时才使用多选;
  • 不使用一道多选题压缩多个独立决定。
如果本会话第一次结构化提问调用失败,后续轮次直接使用文本形式,不重复触发同一宿主错误。工具调用成功后也不会再输出一套重复的文本问题。

问题如何保存与恢复

对话不是恢复依据。Batch 会把本轮问题按固定编号保存到 brief.md
用户回答后,已确认内容写入 Decisions 和完整目标规格,对应阻塞项才会移除。未回答或含糊的项目继续保留 [blocking] 当所有问题解决后,Batch 还会生成一次目标、范围、关键决定、验收标准和非目标的共享理解摘要,并保存最终确认:
只有用户明确确认后才移除该项并进入 Build。Sequential 不增加通用最终确认;没有用户决定时直接继续。

跨会话继续一轮澄清

恢复时先读取项目配置,再读取 brief 中已经保存的编号:
不要根据聊天记忆重建问题,也不要因为配置模式已经改变而重新编号当前轮次。先把用户答案对应到已保存的 Q1、Q2,再计算后续问题。 继续阅读:用户决定与需求澄清协议Native 配置恢复与故障处理
最后修改于 2026年7月22日