Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add XRenSiu/claude-code-forge --skill persona-debategit clone --depth 1 https://github.com/XRenSiu/claude-code-forgeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/xrensiu/claude-code-forge/persona-debate)<a href="https://agentmods.dev/skills/xrensiu/claude-code-forge/persona-debate"><img src="https://agentmods.dev/badge/skills/xrensiu/claude-code-forge/persona-debate/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/xrensiu/claude-code-forge/persona-debate"><img src="https://agentmods.dev/badge/skills/xrensiu/claude-code-forge/persona-debate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00121 | $0.02080 |
| Opus 5.5 | $0.00048 | $0.00832 |
| Sonnet 5.5 | $0.00024 | $0.00416 |
| Haiku 4.5 | $0.00012 | $0.00208 |
Grade A, and why
persona-debate scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 145 lines — stays where its author put it; the contents beside it link to each section on GitHub.
persona-debate
一个 persona = 一个视角。debate = 真正的多视角对话。
大多数 persona skill 被单独调用时只能给出"我(某 persona)会这样想"的独白。但真实世界里的好决策,往往是几位不同背景的人互相挑战之后才浮现的。persona-debate 编排 2-5 个已安装 persona skill 围绕同一问题发言,由一个 moderator agent 充当主席协调轮次,最后汇总分歧、收敛点、一句话"如果必须选"的判语。
灵感来源:诸子.skill(我们无法访问原件,在此基础上重新推导模式)。
Announce at start: "I'm using the persona-debate skill to orchestrate a multi-persona debate with a moderator agent coordinating turns."
Three Modes
辩论的组织方式有三种(细节见 references/modes.md):
| 模式 | 一句话说明 | 适合 |
|---|---|---|
| Round-robin | N 位参与者按固定顺序发言,共 3 轮。每轮每人一次。 | 默认。视角均衡,节奏清晰。 |
| Position-based | 开辩前给每位参与者分派立场(支持 / 反对 / 中立),逼出对立。 | 决策类问题("要不要做 X?"),需要对立视角。 |
| Free-form | 谁相关谁说话,moderator agent 在最后做综合。 | 探索性问题,参与者专长差异大;但容易跑题,moderator 强制 ≤3 轮。 |
用户未指定时默认 Round-robin。
How Participants Are Chosen
两条路径:
- 用户显式列出:例如 "debate with Jobs, Munger, Naval"。本 skill 通过名字匹配已安装 persona skill 的
manifest.json.identity.name/display_name。 - 由 persona-router 推荐后转入:用户先跑
persona-router得到一组推荐 persona,再把它们作为辩论参与者传给本 skill。这条路径不需要本 skill 实现路由逻辑——直接接受上游结果。
约束:参与者数量 2 ≤ N ≤ 5。少于 2 没有"辩",多于 5 难以保持连贯。
Invocation via Moderator Agent
为什么要 moderator:Claude Code 的 skill 之间不应互相直接调用(会绕过主 agent 的上下文管理,也不符合本仓库其他 skill 的做法)。我们用一个 moderator agent 作为"主席"——由主 agent spawn 一次,moderator 再依次"向每位 persona 提问",把回应收集成一个 transcript。
Moderator agent 的定义在 agents/moderator.md。它会:
- 读取每个参与 persona 的
manifest.json(字段定义见contracts/manifest.schema.json),从schema_type推断可能的论证风格(e.g.mentor倾向给建议,public-domain倾向给框架,executor倾向给操作步骤),从identity.description理解人物定位。 - 不重新实现 persona——它扮演的是主席,不是 persona 本人。轮到某 persona 发言时,moderator 模拟该 persona 的发言(基于其 SKILL.md 和 knowledge/ 能暴露出来的信号),质量天花板由 persona skill 自身决定。
- 执行所选模式的轮次控制(详见
references/modes.md)。 - 在结束时产出综合段落。
Turn Structure
每轮的细节(开场白、提问模板、收敛条件、如何把前一位发言者的观点传给下一位)集中在 references/modes.md,避免本文件膨胀。核心结构:
Moderator 开场 → 亮出问题 → [Mode 决定的轮次序列] → Moderator 综合
Output Format
单一 transcript 文件:
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 145 lines · 121 tokens per session scan A f4a5664b67aa
persona-debate is a skill published in the GitHub repository XRenSiu/claude-code-forge (2 stars, last pushed 29d ago), licensed MIT. It adds 121 tokens to every session and 2,080 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…