用途:在需要用户做决定时,用问题工具提供可选择的选项列表,而不是纯文本的是/否或自由输入提示。核心规则是:当答案可以表达为一组选项时,不要用纯文本问是/否问题。
主要能力:支持确认(删除、覆盖、推送、部署等破坏性或不可逆操作前)、策略选择(存在多种可行方案且用户偏好重要时)、澄清(请求含糊且不同理解导致明显不同工作时)、多步工作流(让用户在阶段之间引导方向)。不用于无需决策的简单信息确认。
使用方式:工具接受问题数组,每个问题包含 question(完整问题文本,必填)、header(不超过30字符的短标签,必填)、options({label, description} 对象数组,必填)、multiple(可选,设为 true 允许多选)。工具会自动追加“Type your own answer”选项,不要自行添加“Other”。选项设计规则:label 为1–5个词的简洁动作或名词短语;description 用一句话说明该选择的作用;推荐或最常见选项放首位,必要时在 label 末尾加 (Recommended);覆盖所有有意义的路径,至少包含“执行”和“取消”;选项不得重复。
常见模式:确认模式使用三选项(Proceed (Recommended)、Cancel、Edit / Adjust);策略选择模式列出各方案并在 description 中说明权衡;澄清模式在开工前澄清真正的歧义,不要询问可用合理默认值决定的细节。多选仅在用户确实需要选择多项时使用,选项保持2–7项。
限制与反模式:避免纯文本是/否、选项过多(8个以上)、含糊标签(如“Option 1”)、自行添加“Other”、询问每个细枝末节、一次提出多个问题(除非问题紧密相关)。