mcpField
P
plan-interrogate

plan-interrogate

github.com/rohitg00Agent 工作流2.9k147 次安装4 周前更新
代码仓库

关于 plan-interrogate

plan-interrogate 是一项在开始实现前厘清计划中未决事项的技能。它按依赖顺序逐项提问,并生成决策清单;还可整理项目术语和决策记录。

主要功能

  1. 01复述并确认计划
  2. 02梳理决策及其依赖
  3. 03每次提出一个聚焦问题
  4. 04检查现有代码与文档
  5. 05生成已解决的决策清单

适用场景

  1. 01编码前明确计划
  2. 02解决相互依赖的设计选择
  3. 03记录项目专属术语
  4. 04记录有争议或影响长远的决策

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/rohitg00/pro-workflow --skill plan-interrogate

安装后在 Claude Code 中输入/plan-interrogate确认已加载。

详细介绍

plan-interrogate

在编写任何代码之前,解决所有未决事项,推动计划从草案走向定案。

方法

  1. 用一段话重述计划。请用户确认这就是要审查的计划。重述有误时,不要继续。
  2. 提取决策树。每个分支点都成为一个节点。将每个节点标记为 open(未决)或 resolved(已解决)。已解决的节点需附带来源标签:user(用户已回答)、inferred(代码库或现有约束已确定)。
  3. 按依赖顺序解决问题。一个节点依赖的所有节点都已解决时,该节点才可处理。
  4. 对每个可处理的未决节点,只问一个问题。问题要简洁,尽可能采用二选一或少量选项的形式。
  5. 每个问题都要附上一个推荐答案和一句理由。用户可以确认、选择其他选项或提出异议。
  6. 提问前,先检查代码库、之前的提交或现有文档中是否已有答案。如果有,就跳过提问,并将节点标记为已解决,来源写作 inferred: <path>。
  7. 只有在没有未决节点时才能结束。将已解决的决策树以扁平列表形式输出:Decision - Choice - Source (user | inferred: <path>)。

反模式

  • 一次问多个问题。用户会失去上下文,你也无法逐个针对回答作出反应。
  • 未经探索就提问。如果花十五秒查看就能找到答案,那就先查看。
  • 提问时不给建议。没有立场的问题只是调查问卷,会把设计工作推给用户。
  • 跳过未解决的节点继续推进。如果依赖项尚未确定,后续问题就问得太早。

输出

这次审查会产出三项成果,而不只是答案。主动提出是否要编写每一项;不要强行要求。

  1. 决策清单(始终需要)。将已解决的决策树整理为扁平列表: Decision - Choice - Source (user | inferred: <path>)。

  2. CONTEXT.md(审查中出现项目专属术语时)。创建一份简短的共用词汇文件:列出你和用户需要明确的每个领域术语,并用项目自身的措辞为其写一行定义。这样可以避免 Agent 在下次会话中用二十个词表达一个词的意思,并确保代码中的命名一致。每行一个术语: term - what it means here。提示后续会话参考此文件。再次运行时,应将新术语合并到现有内容中,而不是覆盖原有内容。

  3. 决策记录(仅用于有争议或难以撤销的节点)。每项未来读者可能会质疑的决策都写一份简短记录:说明背景、所选方案、排除的替代方案及理由。将记录保存在 docs/decisions/NNNN-slug.md。先读取该目录,并从现有记录中的最大编号开始编号,以免记录编号冲突。跳过显而易见的选择——为琐碎选择写记录只会制造噪音。

输出约定

决策清单应便于用户粘贴到计划文档中。不要写概述性文字。不要含糊其辞。如果用户拒绝决定某个节点,就将其标记为 DEFERRED,并注明用户给出的理由——这与未决不同。编写 CONTEXT.md 或决策记录时,应使用项目自身的语言,而不是通用模板。

评论

支持 Markdown