Community写作与编辑github.com

Kefan-Lin/debate

一个用于 Claude Code 的技能,可针对任何主题运行结构化的多方辩论——子智能体进行双方或多角度辩论,主张会被事实核查,中立的裁判会合成一份带有置信度评级的裁决。

debate 是什么?

这个技能将 Claude Code 转变为一场结构化辩论的主持人。用户可以提出任何问题(例如“我们应该用 Rust 重写服务吗?”),然后该技能会调度多个子智能体作为辩手,支持双方(肯定/否定)或三方以上的多角度辩论。辩手们被并行地生成,通过多轮交锋(开篇陈词、反驳、结辩)展开辩论,每一轮都会将对方的论点传递给辩手,以确保辩论的公平性和连续性。该技能还包含一个可选的事实核查步骤,由一个中立的核查代理验证双方的实证主张,最终由主智能体或一个专门的“裁判”子智能体合成一份详细的裁决。裁决不仅包括“谁赢了”,还会总结各方的核心论点、关键分歧、弱点和证据缺口,并给出置信度评级。该技能适用于 Claude Code(以及可能支持子智能体调用的类似平台),其设计核心是保持子智能体的无状态性,通过主持人在每一轮手动传递上下文来模拟辩论的交互逻辑。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add Kefan-Lin/debate

Installed? Explore more 写作与编辑 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

辩论

通过调度子智能体作为辩手、主持多轮辩论,然后合成一份全面的裁决,来运行一场结构化的辩论。你是主持人,而不是辩手——在合成步骤之前保持中立。

快速开始

用户:“辩论一下我们是否应该用 Rust 重写服务。”

  1. 界定一个明确的辩题并选择立场(默认:2 方——肯定方 / 否定方)。
  2. 第一轮——并行生成每个辩手,进行开篇陈词。
  3. 第二轮及之后——再次生成每个辩手,并为他们提供对手上一轮的论点。
  4. 合成一份裁决(由你,或一个专门的裁判子智能体来完成)。

关键规则:子智能体是无状态的

每次 Agent 调用都是冷启动,没有之前调用的记忆。因此,一场真正的辩论依赖于你,即主持人,在每一轮中执行以下操作:

  • 自己维护完整的辩论记录。
  • 当为反驳阶段生成辩手时,将对手的最新论点粘贴到其提示中。 一个看不到自己需要反驳什么的辩手只会自说自话。
  • 在同一轮中并发生成辩手(在一条消息中),这样他们谁都看不到本回合对手的文本——他们只对上一轮的内容做出反应。这保证了公平性。
  • 优化——如果你的工具支持延续之前的子智能体(例如 Claude Code 返回一个 agentId / SendMessage),则继续使用每个辩手而不是重新生成:它已经记住了自己上一轮的论点,因此你只需要粘贴对手的最新论点。仍然需要单独生成同一轮的辩手以保持本轮公平。

工作流程

对于任何超出单轮快速辩论的情况,请为每一步创建一个 TodoWrite 条目。

  1. 界定——将主题重新表述为一个清晰、可辩论的辩题。确定以下事项:

    • 立场:默认为 2 方(肯定方/否定方),或针对多方利益相关者的问题选择 3 个或以上的命名视角(例如“内部构建” / “购买 SaaS” / “采用开源”)。请参阅 REFERENCE.md → 多角度。
    • 轮次:默认为 2 轮(开篇陈词 + 反驳);对于困难主题可设为 3 轮(增加结辩)。
    • 事实核查:默认为关闭;对于注重实证/主张的主题请开启——在合成(步骤 4)之前,一个中立的核查员会检查各方的事实性主张。
    • 裁判:默认由你合成;对于追求最大公正性或需要一个计分式裁决的情况,可生成一个专门的裁判子智能体(步骤 5)。
    • 只有当辩题存在歧义时才向用户确认界定;否则直接进行。
  2. 第一轮——开篇陈词——在一条消息中,为每一方/角度生成一个 subagent_type: "general-purpose" 代理。为每个代理提供:辩题、其被分配到的立场、其他立场的名称(以便其了解全局)、以及规则(基于证据、为你的立场做最有利辩护、不轻易退让)。将每份开篇陈词收集到你的记录中。

  3. 反驳轮次——在一条消息中,重新生成每个辩手。每个提示现在包括:辩题、其立场、其自己之前的论点,以及所有其他方上一轮的完整论点以供反驳(对于 3 方以上,粘贴所有论点并做好标注)。可选地增加一轮结辩。

4.(可选)事实核查——如果已启用,则生成一个中立的核查子智能体,并提供从记录中提取的各方的事实性主张。它会将每个主张标记为“已证实 / 有争议 / 无法验证”,并附带一行原因,且不偏袒任何一方。将其发现带入步骤 5,并对被标记的主张进行折扣处理。

  1. 合成裁决——由你自己根据记录进行推理,或者生成一个专门的裁判子智能体,并提供完整的记录(以及任何事实核查结果)。输出下面结构化的裁决。

请参阅 REFERENCE.md 获取每个角色——开篇、反驳、结辩、事实核查员、裁判——以及模式的复制粘贴式提示模板。

裁决格式

输出一份全面的综合评估——不仅仅是“谁赢了”:

  • 辩题——辩论的确切问题。
  • 各方的核心论点——每个立场以 2-4 个要点形式进行最有利的辩护。
  • 关键分歧——实际上决定问题的真正分歧点。
  • 退让与弱点——各方在哪些方面做了让步或论证不力。
  • 如何解决——能够解决每个关键分歧的证据、数据或测试。
  • 裁决——一个有理有据的结论,并附有明确的置信度等级(以及在什么条件下结论会改变)。如果确实势均力敌,请说明并解释原因。
  • 注意事项——假设条件、缺失信息、范围限制。

对于 3 个或以上角度,“关键分歧”部分需要映射哪些立场存在冲突,哪些可以调和,而“裁决”可能推荐一个混合或排序的立场,而不是只指定一个赢家。如果进行了事实核查,请列出有争议/无法验证的主张,并对任何依赖这些主张的结论进行折扣处理。

调优

  • 快速评估:2 方,1 轮,你作为裁判。快速的正反方对比。
  • 深度探索:2-3 方,3 轮,专门的裁判子智能体。
  • 多角度:为多方利益相关者的决策选择 3 个或以上命名立场;裁决会映射冲突与可调和立场,而不是指定单一赢家。
  • 红队测试:1 个提案 + 1 个对手,其唯一工作就是找出提案的漏洞。
  • 事实核查辩论:为注重实证/主张的主题启用事实核查步骤,使裁决仅基于经过验证的主张。

相关技能