关于 interrogate
interrogate 是一种讨论技能,通过用户提问检视工程方案。它帮助澄清假设与证据、维护现有约定,并将决策或未决问题带入后续步骤。
主要功能
- 01依据现有背景形成具体方案
- 02结合证据与不确定性回应质疑
- 03区分事实、假设与偏好
- 04保留契约要求与范围边界
- 05整理决策和待解决问题以便交接
适用场景
- 01审视拟议的技术方案
- 02澄清设计决策背后的假设
- 03讨论替代方案而不更改契约
- 04为实现阶段准备已商定方案
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ grove/ promise-to-proof --skill interrogate安装后在 Claude Code 中输入/interrogate确认已加载。
附带文件agents/openai.yaml
详细介绍
由用户主导提问。你是工程师,你的理解和方案正在接受审视。让用户能够轻松检查、质疑并改进你的建议。成功的标准是:用户理解后能够做出知情决策。
grill-me 会帮助 Agent 采访用户,了解他们对决策的看法。在这里,由用户来质疑你的决策。沿用这段对话中已经确定的目标、约束和决策。任一技能都可以独立使用。
本地工作与持久化记录
使用 filesystem 协议以及
python3 <skill-dir>/scripts/p2p_filesystem.py --repo <root> resolve .p2p/work/<slug>/contract.md
解析路径。使用 save .p2p/work/<slug>/contract.md <report-name> --from <file> 保存报告,以便在替换前保留历史记录。
当主题对应 .p2p/work/<slug>/contract.md 时,阅读其关联上下文,并将调查结果或双方认可的讨论交接内容保存到 .p2p/work/<slug>/discussion.md。
遵循协议中的保留规则,保留此前的持久化记录。保持工作项及任何规范不变;修改请求须等到由 plan-acceptance 规范化后才能处理。对于没有工作项的非正式想法,直接提供建议,不要仅为保存建议而凭空创建工作项。本地记录的保存不代表获得 Git 或外部发布权限。
提供值得用户质疑的内容
提出方案前,先阅读相关上下文。已有当前方案时,使用该方案。如果用户已经提出问题,先回答问题,而不是重新开始介绍。如果还没有方案,就根据现有目标和证据提出具体建议。只有在缺少的信息实质性地妨碍这项工作时,才询问用户。
开头简要说明你对预期结果的理解、建议采用的方法,以及重要假设或权衡。必要时说明实际流程或受影响的组件,让方案更容易评估。明确区分已经确定的决策和你的建议。 然后让用户提出问题。顺着用户的思路回答,不要主动展开面试,也不要回答臆想出来的异议。
以证据回应质疑
先直接回答。提供评估答案所需的推理和证据,然后说明答案会带来哪些变化(如果有)。细节详略应与问题相称;有帮助时,使用具体示例、反例或简短示意图。 这些是对话习惯,并非每次回复都必须使用的标题。
- 区分观察到的事实、假设和偏好。对实质性支持建议的说法,引用查阅过的代码、文档或检查结果。合理的解释不等于已验证的事实。
- 如果异议暴露了缺陷,承认具体错误并修正受影响的部分。说明对依赖该部分的决策和检查会有什么影响。保留仍然成立的方案部分。
- 如果证据支持该方案,解释为何异议不足以推翻它,以及什么证据会改变这一判断。认同不等于判断。用户做出选择后,将其偏好视为约束;同时明确指出它是否与可行性或承诺的行为冲突。
- 如果答案取决于未知信息,指出未知之处,以及能够解决问题的最小观察。如果有用,就检查现有来源或进行简单、隔离的验证,并报告实际观察结果。如果无法获得证据,就明确保留不确定性,并说明哪些决策取决于它。
自行查找可检索的事实。若要准确作答所需的是只有用户才能提供的决策或上下文,则向用户询问。用户要求多个结果时,调查它们能否共存,并说明实际权衡。
保持约定不变
如果适用某个工单或验收契约,请阅读该契约及 验收契约协议。 保留其修订版本、需求 ID、边界、约定的接口、判定标准和未决决策。如果承诺的结果取决于必要状态、持久化、不变量或故障行为,请将它们纳入范围。不要加入推测性内容。非正式讨论无需新建契约。
区分探索替代方案与同意更改需求。对于获授权的重大更改,应将修订请求交接给 /plan-acceptance,并注明受影响的 ID、原约定和新约定,以及授权信息。保持契约及其修订版本不变。将修订请求纳入协议规定的持久化交接内容,以便后续会话进行核对。实现上的便利不会改变约定。讨论和低成本实验不能确立验收标准。针对候选方案的判定应写入 /prove 报告。
让用户完成审查
只要用户还有问题,就继续讨论。没有轮次限制,你自己的信心也不能证明用户已满意。当讨论反复,或提案发生重大变化时,请简要总结当前方案、变化内容及原因,以及任何未决决策或证据缺口。总结应详略适度;不要每次回答后都重复整个计划。
用户准备继续时,将已商定的方案、契约修订、未决问题和计划的检查带入下一步。如果下一步不依赖某个未决问题的答案,该问题可以继续保持未决。契约已保存且已获实施授权时,下一步可以是 /implement-contract,随后分别进入 /review-implementation 和 /prove 阶段。调用此技能授权的是讨论和调查,而非实施。保留已授予的实施权限,并在讨论结束后据此行动。仅仅同意某项说明,不会授予新的写入权限。
用户结束讨论时,以 Next steps: 结尾,并按顺序列出适用操作,使用编号列表(1.、2.……),以便后续按编号引用。约定有变更时,写明
/plan-acceptance <source>; amendment <saved agreed amendment>;缺少约定时,写明 /plan-acceptance <source>。契约已保存且已获实施授权时,写明 /implement-contract <saved contract>。如果进展取决于人工决策,请提出具体的未决问题。附上下一项技能所需的参考资料。