mcpField
D
decide

decide

github.com/rshade生产力390 次安装2 周前更新
代码仓库

关于 decide

decide 是一项通过三个 Agent 进行结构化辩论、协助战略决策达成共识的技能。它研究对立观点,要求倡议者回应质疑,并由主持者形成建议与决策计划。

主要功能

  1. 01将决策整理为对立立场
  2. 02每轮并行运行三个 Agent
  3. 03以外部研究支撑论点
  4. 04第二轮要求各方作出让步
  5. 05输出共识、指标与风险缓解方案

适用场景

  1. 01比较不同的架构方案
  2. 02评估产品或商业策略选项
  3. 03决策前梳理取舍与风险
  4. 04将共识记录到项目文档

安装

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

$npx skills add https://github.com/rshade/agent-skills --skill decide

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

附带文件references/debate-prompts.md

详细介绍

对抗式共识协议

开展一场结构化的三方辩论,就战略决策达成共识。两位倡导者分别以最有力的方式论证对立立场,主持人则提出尖锐问题、识别风险,并综合形成具有约束力的共识。

为何有效:对抗式结构能揭示头脑风暴容易遗漏的论点。以证据为依据的研究可避免陷入认知封闭。第二轮要求作出让步,可防止立场固化。主持人在听取双方意见后,撰写具有约束力的共识。

准备工作验证

开始辩论前,确认输入包含一个真实决策,且至少有两个可区分的选项或行动方案。

如果输入是事实性问题、解释请求或只有一个选项的陈述,则直接作答:「本协议最适合用于在多个方案之间作出选择。你能否重新表述一下,说明正在权衡哪些选项?或者直接向我提问?」

如有疑问,请继续——优先选择开展辩论。

阶段 0:研究并界定决策

步骤 0.1:收集背景信息

阅读项目文档和上下文文件,了解决策范围。常见资料包括 README、架构文档、产品文档、近期 Git 历史记录,以及用户提及的任何文件。

步骤 0.2:确定两个立场

根据决策主题,提出两个明确且相互对立的立场:

  • 立场 A:决策的一方
  • 立场 B:与之对立的一方

如果主题自然包含两个方面(例如「gRPC 与 REST」),就直接采用这两个方面。如果主题较为开放(例如「定价策略」),则研究相关领域,并提出两种最有力的对立方案。

步骤 0.3:确定约束条件

从用户消息或项目文档中提取硬性约束:预算上限、时间要求、团队规模、技术限制、业务要求和不可妥协的价值观。

步骤 0.4:呈现简报

在继续之前,生成辩论简报。根据以下三个条件进行评估:

  • 两个立场能否在没有明显重叠的情况下表述?
  • 问题是否真实开放(没有诱导性或预设答案)?
  • 是否至少存在两个有实质差异的结果?

如果全部符合条件,则呈现简报并进入阶段 1:

Decision: [one-line summary]
Position A: [name] — [one-sentence description]
Position B: [name] — [one-sentence description]
Constraints: [list any hard constraints]
Launching Round 1...

如果有任何条件不符合,则呈现简报,并询问用户是要重新界定问题,还是按现状继续。

阶段 1:第一轮——立场文件

并行启动三个 Agent。每个 Agent 独立运行,且无法读取其他 Agent 的输出。

  • 倡导者 A:以最有力的方式论证立场 A。进行外部研究,寻找至少 2 个支持性来源。撰写全面的立场文件,涵盖架构、实施计划、成本、时间表、风险和缓解措施,并在文中引用来源。
  • 倡导者 B:以与倡导者 A 相同的结构和研究要求,以最有力的方式论证立场 B。
  • 主持人:利用外部反面证据,对两个立场进行批判性审视。每个立场至少寻找 2 个挑战性来源。列出 10 个最尖锐的问题(每个立场 5 个),指出每种方案的 5 个最大风险,提出混合模式,并给出初步建议。

按照 references/debate-prompts.md 中的第一轮部分编写 Agent 提示词。

综合第一轮结果

三个 Agent 全部完成后,向用户呈现:

  1. 三方一致之处——共识要点表格
  2. 各方分歧之处——列出各 Agent 立场的分歧点表格
  3. 对关键分歧作简要说明

随后立即进入第二轮。

第 2 阶段:第 2 轮 — 强制达成共识

并行启动三个 Agent。每个 Agent 都会收到其他 Agent 论点的摘要,并必须作出回应。

  • 修订后的支持方 A:回应支持方 B 和主持人的最有力质疑。坦诚承认合理观点,在立场 A 仍然最有说服力之处进行辩护,并陈述修订后的立场。
  • 修订后的支持方 B:采用相同结构,回应支持方 A 和主持人的质疑。
  • 共识主持人:推动达成最终共识。撰写具有约束力的共识文件:达成一致的模型、已解决的分歧、执行时间表、3 项关键指标、最大的单一风险,以及一段式电梯推介。

按照 references/debate-prompts.md 中的第 2 轮部分编写 Agent 提示词。

第 3 阶段:呈现结果

第 3.1 步:呈现共识

向用户展示:

  1. 各支持方作出的关键让步(哪些因素改变了他们的想法)
  2. 共识模型 — 主持人的最终建议
  3. 结构或计划详情(层级、架构、时间表)
  4. 要追踪的关键指标
  5. 最大风险及其缓解措施
第 3.2 步:询问是否需要保存

询问用户是否要保存共识。根据决策类型确定合适的文件:

  • 业务决策 → biz.md
  • 架构决策 → ARCHITECTURE.md 或 ADR-NNN.md
  • 产品决策 → PRODUCT.md
  • 战略 → 合适的项目文档
  • 或者在没有合适文件时新建文件

编排器指南

  • 每轮始终在同一步骤中并行启动全部 3 个 Agent
  • 绝不编辑 Agent 的论点 — 如实呈现
  • 主持人在第 2 轮形成的共识是具有约束力的输出 — 但用户拥有最终决定权,可推翻该共识
  • 简要控制自身评论篇幅 — 分析由 Agent 完成;你负责综合并呈现
  • 如果第 2 轮后 Agent 仍未达成共识,指出尚存的分歧,并请用户打破僵局,而不是继续进行更多轮次
  • 根据领域调整提示词细节 — 定价决策需要成本数据;架构决策需要技术权衡
  • 在每个 Agent 提示词中加入相关项目背景 — Agent 各自独立运行,无法读取彼此的输出

评论

支持 Markdown