Communityライティング&編集github.com

Kefan-Lin/debate

A Claude Code skill that runs a structured multi-agent debate on any topic — subagents argue 2-side or multi-perspective, claims get fact-checked, and a neutral judge synthesizes a confidence-rated verdict.

debate とは?

debate is a Claude Code agent skill that a Claude Code skill that runs a structured multi-agent debate on any topic — subagents argue 2-side or multi-perspective, claims get fact-checked, and a neutral judge synthesizes a confidence-rated verdict.

対応Claude Code~Codex CLI~Cursor
npx skills add Kefan-Lin/debate

Installed? Explore more ライティング&編集 skills: steipete/notion, affaan-m/seo, affaan-m/brand-voice · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

debate は何をしますか?

Run a structured debate by dispatching subagents as debaters, moderating rounds between them, then synthesizing a comprehensive verdict. You are the moderator, not a debater — stay neutral until the synthesis step.

Quick start

User: "Debate whether we should rewrite the service in Rust."

  1. Frame a sharp resolution + pick sides (default: 2 — Affirmative / Negative).
  2. Round 1 — spawn each debater in parallel for opening statements.
  3. Round 2+ — spawn each debater again, feeding them the opponent's last arguments.
  4. Synthesize a verdict (you, or a dedicated Judge subagent).

Critical rule: subagents are stateless

Each Agent call starts cold with no memory of prior calls. A real debate therefore depends on you, the moderator, doing this every round:

  • Keep the full running transcript yourself.
  • When spawning a debater for a rebuttal, paste the opponent's latest arguments into its prompt. A debater that can't see what it's rebutting will monologue.
  • Spawn same-round debaters in one message (parallel) so neither sees the other's current-round text — they react only to the previous round. This keeps it fair.
  • Optimization — if your harness supports continuing a prior subagent (e.g. Claude Code returns an agentId / SendMessage), continue each debater instead of re-spawning: it already remembers its own prior argument, so you only need to paste the opponent's latest arguments. Still spawn same-round debaters separately to keep the round fair.

Workflow

Create a TodoWrite item per step for anything beyond a single quick round.

  1. Frame — Restate the topic as a crisp, debatable resolution. Decide:

    • Sides: 2 (Affirmative/Negative) by default, or 3+ named perspectives for multi-stakeholder questions (e.g. "Build in-house" / "Buy SaaS" / "Adopt OSS"). See REFERENCE.md → Multi-perspective.
    • Rounds: 2 (opening + rebuttal) by default; 3 (add closing) for hard topics.
    • Fact-check: off by default; turn on for empirical / claim-heavy topics — a neutral verifier checks each side's factual claims before synthesis (step 4).
    • Judge: you synthesize by default; spawn a dedicated Judge subagent for maximal impartiality or a scored decision (step 5).
    • Confirm framing with the user only if the topic is ambiguous; otherwise proceed.
  2. Round 1 — Opening statements — In a single message, spawn one subagent_type: "general-purpose" agent per side / perspective. Give each: the resolution, its assigned stance, the names of the other stances (so it knows the field), and the rules (evidence-based, steelman your side, concede nothing unearned). Collect every opening statement into your transcript.

  3. Rebuttal round(s) — In a single message, re-spawn each debater. Each prompt now includes: the resolution, its stance, its own prior argument, and every other side's full prior arguments to rebut (for 3+ sides, paste all of them, labeled). Optionally add a closing round.

  4. (Optional) Fact-check — If enabled, spawn one neutral verifier subagent with every side's factual claims pulled from the transcript. It marks each claim Supported / Disputed / Unverifiable with a one-line reason and does not take a side. Carry its findings into step 5 and discount flagged claims.

  5. Synthesize the verdict — Reason over the transcript yourself, or spawn a dedicated Judge subagent with the complete transcript (plus any fact-check findings). Produce the structured verdict below.

See REFERENCE.md for copy-paste prompt templates for every role — opening, rebuttal, closing, fact-checker, judge — and modes.

Verdict format

Output a comprehensive synthesis — not just "who won":

  • Resolution — the exact question debated.
  • Strongest case per side — each position steelmanned in 2–4 bullets.
  • Cruxes — the points of genuine disagreement that actually decide the question.
  • Concessions & weak points — where each side gave ground or argued poorly.
  • What would resolve it — the evidence, data, or test that would settle each crux.
  • Verdict — a reasoned conclusion with an explicit confidence level (and the conditions under which it would flip). If genuinely balanced, say so and explain why.
  • Caveats — assumptions, missing information, scope limits.

With 3+ perspectives, the Cruxes section maps which stances conflict and which are reconcilable, and the Verdict may recommend a hybrid or sequenced position rather than crowning one winner. If fact-check ran, list disputed/unverifiable claims and discount any conclusion that leaned on them.

Tuning

  • Quick take: 2 sides, 1 round, you judge. Fast pro/con.
  • Deep dive: 2–3 sides, 3 rounds, dedicated Judge subagent.
  • Multi-perspective: 3+ named stances for multi-stakeholder calls; the verdict maps conflicts vs. reconcilable positions instead of picking a single winner.
  • Red team: 1 proposal + 1 adversary whose only job is to break it.
  • Fact-checked debate: enable the fact-checker step for empirical / claim-heavy topics so the verdict rests only on verified claims.

関連スキル

steipete/notion

Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.

community

affaan-m/seo

Audit, plan, and implement SEO improvements across technical SEO, on-page optimization, structured data, Core Web Vitals, and content strategy. Use when the user wants better search visibility, SEO remediation, schema markup, sitemap/robots work, or keyword mapping.

community

affaan-m/brand-voice

Build a source-derived writing style profile from real posts, essays, launch notes, docs, or site copy, then reuse that profile across content, outreach, and social workflows. Use when the user wants voice consistency without generic AI writing tropes.

community

affaan-m/crosspost

Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.

community

affaan-m/x-api

X/Twitter API integration for posting tweets, threads, reading timelines, search, and analytics. Covers OAuth auth patterns, rate limits, and platform-native content posting. Use when the user wants to interact with X programmatically.

community

affaan-m/content-engine

Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.

community