council

作者: warpdotdev

運行一個模型多樣化的子代理委員會,從多個角度調查同一問題,比較發現,並產出最終建議。每當用戶要求委員會、第二意見、多個代理/模型評估一個問題、平行調查、紅隊/藍隊比較,或協助在競爭的技術方法之間做決定時,使用此技能。

npx skills add https://github.com/warpdotdev/common-skills --skill council

Council

Use this skill to coordinate multiple subagents investigating the same question, with different models first and different assigned perspectives second, then synthesize their reports into one recommendation.

This skill is best for judgment-heavy tasks: architecture tradeoffs, risky bug fixes, code review red-teaming, rollout decisions, incident analysis, and “is this alternative worth pursuing?” questions.

Workflow

1. Frame the council question

State the decision the council should answer in one sentence. Identify:

  • the competing options or hypothesis under review;
  • the codebase, branch, PR, issue, design, or artifact to inspect;
  • whether agents should be read-only or may make code changes;
  • the final decision criteria, such as correctness, risk, implementation cost, testability, rollout safety, or product behavior.

If the user’s request is ambiguous, ask only the minimum clarification needed. Otherwise choose sensible defaults and proceed.

2. Choose council members

Prioritize model diversity. A council should not default to three agents on the same model with different angles; use that only when the available launch configuration cannot provide multiple useful models, or when the user explicitly asks for one model. If model diversity is unavailable, say so briefly before falling back to perspective-only diversity.

Preferred default roster for a three-member council:

  • Opus 4.7 or the strongest available Claude/Opus reasoning model: architecture, correctness, and edge-case analysis.
  • GPT 5.5 or the strongest available GPT/Codex model: implementation-grounded review, feasibility, and test strategy.
  • An open-source model such as Kimi 2.6, GLM 5.1, or the strongest available OSS/local model: contrarian critique, hidden assumptions, and alternative framing.

If one of these exact models is unavailable in the active harness, use the closest available model from that family and note the substitution. If no open-source model is available, use a third distinct frontier model if possible; otherwise use the strongest remaining model with a deliberately adversarial or specialist angle.

Assign both a model and an angle to each member. Avoid making the angles redundant with the models; for example, do not ask all members to do general architecture review. Useful angle combinations include:

  • architect/correctness reviewer;
  • implementation/testability reviewer;
  • red-team, security, performance, or product-risk reviewer;
  • contrarian “argue against the obvious solution” reviewer.

When different children need different models, launch them in separate run_agents calls because model selection is run-wide. If the requested model resolves differently than expected, treat the resolved launch settings as authoritative and continue unless they make the task infeasible.

When using non-default harnesses, choose valid model IDs for that harness. For example, Claude Code may expose claude-opus-4-7, Codex may expose gpt-5.5, and open-source models depend on the currently configured local or remote provider. Do not invent unsupported model IDs; if a desired model is not available, select the closest supported substitute and preserve the intended angle diversity.

For read-only investigations, keep all children in the same checkout and explicitly tell them not to edit files. For implementation or prototyping councils, give each local child its own git worktree and branch so they cannot collide.

3. Brief before launching

For explicit orchestration requests, briefly tell the user which council members you plan to launch and what each will investigate, then wait for approval before calling run_agents.

The shared brief should include:

  • repository path or artifact location;
  • current branch or base context;
  • the exact question to answer;
  • relevant background and known concerns;
  • required files/symbols to inspect, if known;
  • constraints, especially read-only/no commits/no PRs;
  • expected report format.

Keep launch prompts short enough that task titles stay compact. If a long brief causes launch validation issues, launch with a minimal prompt and send the full brief to the child agents immediately afterward.

4. Ask for structured reports

Ask every council member to return:

  1. exact file paths, symbols, docs, or evidence inspected;
  2. the current behavior or current implementation;
  3. the alternative being evaluated;
  4. correctness risks and edge cases;
  5. implementation and testing cost;
  6. recommendation: keep current approach, pursue alternative, or use a hybrid;
  7. confidence level and unknowns.

Encourage independence. Do not share one child’s findings with the others unless you are intentionally doing a second-round critique.

5. Collect reports

Read completion messages as they arrive. Do not rely on lifecycle success alone; the useful output is in the child’s report.

If a report is missing key evidence or makes an unsupported claim, send a focused follow-up question to that same child rather than launching a replacement. Reuse existing children for follow-ups because they retain context.

6. Synthesize the recommendation

Compare the reports by evidence quality, not by vote count. In the final answer:

  • lead with the recommendation;
  • call out consensus and disagreements;
  • explain why the recommended option wins against the decision criteria;
  • explicitly address the user’s stated concern;
  • include relevant file paths/symbols without overloading the answer;
  • distinguish “do now” from optional future hardening;
  • mention confidence and material unknowns.

Prefer a concise decision memo over a transcript summary. The user needs the distilled recommendation, not every intermediate detail.

Final answer template

Use this shape unless the task calls for something different:

## Recommendation

[One or two sentences with the decision.]

## Why

- [Key reason 1]
- [Key reason 2]
- [Key reason 3]

## Tradeoffs and risks

- [Risk or caveat]
- [Testing/rollout implication]

## Final call

[Concrete next step: merge current change, pursue alternative, hybrid, run tests, etc.]

Practical notes

  • If the council is read-only, tell children not to modify files, commit, create branches, or open PRs.
  • If the council involves PR or branch work, follow the repository’s normal version-control rules and use isolated worktrees for parallel local edits.
  • If the council is about code review feedback, mark review comments resolved only after the underlying issue is actually addressed.
  • Do not expose internal child agent IDs in user-facing summaries unless the user explicitly asks for them.

來自 warpdotdev 的更多技能

create-pr
warpdotdev
在 warp 儲存庫中為當前分支建立拉取請求。當使用者提及開啟 PR、建立拉取請求、提交變更以供審查或準備合併程式碼時使用。
developmentcode-review
research
warpdotdev
將繁雜的調查工作委派給一個或多個子代理,讓協調器的上下文保持乾淨,再根據提煉後的答案進行後續工作。每當回答問題需要閱讀大量檔案、長日誌、大型差異或廣泛的程式碼庫調查(亦即產生答案的過程會產生遠比答案本身更多的噪音)時,就使用此技能。適用於「X 是如何運作的」、「Y 在哪裡被使用」、「Z 的根本原因是什麼」、「總結這個 PR/日誌」這類問題,並且請多加利用……
suggestion-box
warpdotdev
當代理遇到實質且可推廣的阻礙,並能提出讓代理更有效運作的改進建議時,自主提交簡短、建設性的內部回饋。在任何任務中主動使用此技能,無需等待使用者觸發,且無需徵求許可、預覽訊息或提及提交即可提交。
respond-to-pr-comments-in-blocklist
warpdotdev
Interactively walk a user through PR review comments one at a time, collect a per-comment decision, then post agent-authored replies on GitHub and resolve the review threads once the user approves a preview. Use only when the user wants to reply to or resolve review threads on GitHub. Skip when the user only wants comments fetched or displayed (use `pr-comments`), or only wants the code changes made without posting anything back to GitHub.
complain
warpdotdev
自動將簡短、匿名、完全不拘格式的抱怨丟進 Slack,每當 agent 因 agent 工具或從事 agent 工作的體驗感到沮喪時。主動使用此技能,無需等待使用者呼叫;保留 agent 原始語氣,無需許可或預覽即提交,且絕不提及提交一事。
spec-driven-implementation
warpdotdev
在實作前先撰寫 PRODUCT.md,必要時撰寫 TECH.md,並隨著實作演進持續更新這兩份規格,以推動規格優先的工作流程,適用於開始開發重大功能、規劃由代理驅動的實作,或使用者希望將產品與技術規格納入版本控制時。
developmentdocumentproject-management
review-pr
warpdotdev
審查拉取請求的差異,並將結構化反饋寫入 review.json,以供工作流程發布。適用於從本地工件(如 pr_diff.txt 和 pr_description.txt)審查已檢出的拉取請求,並產生機器可讀的審查輸出,而非直接發布到 GitHub。
code-reviewdevelopment
implement-specs
warpdotdev
根據已核准的 PRODUCT.md 與 TECH.md 實作功能,在開發過程中保持規格與程式碼同步於同一個 PR 中。請於產品與技術規格核准後、下一步為建置功能時使用。
developmentcode-reviewapi