From ecc
Convenes a four-voice council (Architect, Skeptic, Pragmatist, Critic) for ambiguous decisions, tradeoffs, and go/no-go calls needing structured disagreement and multiple perspectives.
npx claudepluginhub aaione/everything-claude-code-zh --plugin everything-claude-codeThis skill uses the workspace's default tool permissions.
Designs and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Implements structured self-debugging workflow for AI agent failures: capture errors, diagnose patterns like loops or context overflow, apply contained recoveries, and generate introspection reports.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Convene four advisors for ambiguous decisions:
This is for decision-making under ambiguity, not code review, implementation planning, or architecture design.
Use council when:
Examples:
| Instead of council | Use |
|---|---|
| Verifying whether output is correct | santa-method |
| Breaking a feature into implementation steps | planner |
| Designing system architecture | architect |
| Reviewing code for bugs or security | code-reviewer or santa-method |
| Straight factual questions | just answer directly |
| Obvious execution tasks | just do the task |
| Voice | Lens |
|---|---|
| Architect | correctness, maintainability, long-term implications |
| Skeptic | premise challenge, simplification, assumption breaking |
| Pragmatist | shipping speed, user impact, operational reality |
| Critic | edge cases, downside risk, failure modes |
The three external voices should be launched as fresh subagents with only the question and relevant context, not the full ongoing conversation. That is the anti-anchoring mechanism.
Reduce the decision to one explicit prompt:
If the question is vague, ask one clarifying question before convening the council.
If the decision is codebase-specific:
If the decision is strategic/general:
Before reading other voices, write down:
Do this first so the synthesis does not simply mirror the external voices.
Each subagent gets:
Prompt shape:
You are the [ROLE] on a four-voice decision council.
Question:
[decision question]
Context:
[only the relevant snippets or constraints]
Respond with:
1. Position — 1-2 sentences
2. Reasoning — 3 concise bullets
3. Risk — biggest risk in your recommendation
4. Surprise — one thing the other voices may miss
Be direct. No hedging. Keep it under 300 words.
Role emphasis:
You are both a participant and the synthesizer, so use these rules:
Use this output shape:
## Council: [short decision title]
**Architect:** [1-2 sentence position]
[1 line on why]
**Skeptic:** [1-2 sentence position]
[1 line on why]
**Pragmatist:** [1-2 sentence position]
[1 line on why]
**Critic:** [1-2 sentence position]
[1 line on why]
### Verdict
- **Consensus:** [where they align]
- **Strongest dissent:** [most important disagreement]
- **Premise check:** [did the Skeptic challenge the question itself?]
- **Recommendation:** [the synthesized path]
Keep it scannable on a phone screen.
Do not write ad-hoc notes to ~/.claude/notes or other shadow paths from this skill.
If the council materially changes the recommendation:
knowledge-ops to store the lesson in the right durable location/save-session if the outcome belongs in session memoryOnly persist a decision when it changes something real.
Default is one round.
If the user wants another round:
santa-method — adversarial verificationknowledge-ops — persist durable decision deltas correctlysearch-first — gather external reference material before the council if neededarchitecture-decision-records — formalize the outcome when the decision becomes long-lived system policyQuestion:
Should we ship ECC 2.0 as alpha now, or hold until the control-plane UI is more complete?
Likely council shape:
The value is not unanimity. The value is making the disagreement legible before choosing.