council
affaan-m/ECC
Berufe Sie einen vierstimmigen Beraterstab ein, um strukturierte Meinungsverschiedenheiten und Zielkonflikte bei mehrdeutigen Entscheidungen, Go-/No-Go-Entscheidungen sowie Mehrweg-Optionen sichtbar zu machen und abzuwägen.
...Alle erweiternRat
Berufe vier Berater für mehrdeutige Entscheidungen ein:
- die im Kontext verankerte Claude-Stimme
- ein Skeptiker-Subagent
- ein Pragmatiker-Subagent
- ein Kritiker-Subagent
Dies dient der Entscheidungsfindung unter Mehrdeutigkeit, nicht der Codeüberprüfung, Implementierungsplanung oder Architekturdesign.
Wann verwenden
Verwenden Sie den Rat, wenn:
- eine Entscheidung mehrere glaubhafte Optionen hat und kein offensichtlicher Gewinner existiert
- Sie explizite Abwägungen sichtbar machen müssen
- der Nutzer nach Zweitmeinungen, Dissens oder mehreren Perspektiven fragt
- das Risiko einer konversationellen Verankerung (Anchoring) real ist
- eine Go-/No-Go-Entscheidung von einer adversarischen Herausforderung profitieren würde
Beispiele:
- Monorepo vs. Polyrepo
- Jetzt veröffentlichen vs. Aufglätten verzögern
- Feature-Flag vs. Vollständige Einführung
- Umfang vereinfachen vs. Strategische Breite beibehalten
Wann NICHT verwenden
| Anstatt Rat | Verwenden |
|---|---|
| Überprüfung, ob die Ausgabe korrekt ist | `santa-method` |
| Unterteilung einer Funktion in Implementierungsschritte | `planner` |
| Entwurf der Systemarchitektur | `architect` |
| Code-Review auf Fehler oder Sicherheit | `code-reviewer` oder `santa-method` |
| Einfache faktische Fragen | direkt antworten |
| Offensichtliche Ausführungsaufgaben | Aufgabe einfach ausführen |
Rollen
| Stimme | Brille |
|---|---|
| Architekt | Korrektheit, Wartbarkeit, langfristige Auswirkungen |
| Skeptiker | Prüfung der Prämisse, Vereinfachung, Durchbrechen von Annahmen |
| Pragmatiker | Veröffentlichungsgeschwindigkeit, Nutzerauswirkung, operative Realität |
| Kritiker | Edge Cases, Abwärtsrisiko, Fehlermodi |
Die drei externen Stimmen sollten als frische Subagents gestartet werden, die nur die Frage und den relevanten Kontext erhalten, nicht das gesamte laufende Gespräch. Dies ist der Mechanismus zur Vermeidung von Anchoring.
Workflow
1. Extrahieren Sie die eigentliche Frage
Reduzieren Sie die Entscheidung auf einen expliziten Prompt:
- Was entscheiden wir?
- Welche Einschränkungen sind relevant?
- Was gilt als Erfolg?
Wenn die Frage vage ist, stellen Sie vor Einberufung des Rates eine einzige klärende Frage.
2. Sammeln Sie nur den notwendigen Kontext
Wenn die Entscheidung codebasis-spezifisch ist:
- sammeln Sie die relevanten Dateien, Code-Snippets, Fehlertexte oder Metriken
- halten Sie es kompakt
- fügen Sie nur den Kontext ein, der zur Entscheidungsfindung benötigt wird
Wenn die Entscheidung strategisch/allgemein ist:
- überspringen Sie Repository-Snippets, es sei denn, sie ändern die Antwort maßgeblich
3. Bilden Sie zunächst die Position des Architekten
Bevor Sie andere Stimmen lesen, notieren Sie:
- Ihre initiale Position
- die drei stärksten Gründe dafür
- das Hauptrisiko in Ihrem bevorzugten Pfad
Tun Sie dies zuerst, damit die Synthese nicht einfach die externen Stimmen widerspiegelt.
4. Starten Sie drei unabhängige Stimmen parallel
Jeder Subagent erhält:
- die Entscheidungsfrage
- kompakten Kontext, falls nötig
- eine strenge Rolle
- keinen unnötigen Gesprächsverlauf
Prompt-Form:
Sie sind der [ROLE] in einem Vier-Stimmen-Entscheidungsrat.
Frage:
[Entscheidungsfrage]
Kontext:
[nur die relevanten Snippets oder Einschränkungen]
Antworten Sie mit:
1. Position — 1-2 Sätze
2. Begründung — 3 prägnante Aufzählungspunkte
3. Risiko — größtes Risiko in Ihrer Empfehlung
4. Überraschung — ein Punkt, den die anderen Stimmen übersehen könnten
Seien Sie direkt. Keine Ausflüchte. Halten Sie es unter 300 Wörter.
Rollenbetonung:
- Skeptiker: Rahmenbedingungen hinterfragen, Annahmen prüfen, die einfachste glaubhafte Alternative vorschlagen
- Pragmatiker: auf Geschwindigkeit, Einfachheit und reale Ausführung optimieren
- Kritiker: Abwärtsrisiken, Edge Cases und Gründe für das Scheitern des Plans sichtbar machen
5. Synthetisieren Sie mit Bias-Schutzmechanismen
Sie sind sowohl Teilnehmer als auch Synthesierer, daher verwenden Sie diese Regeln:
- weisen Sie eine externe Ansicht nicht ohne Erklärung zurück
- wenn eine externe Stimme Ihre Empfehlung geändert hat, sagen Sie dies explizit
- schließen Sie immer den stärksten Dissens ein, auch wenn Sie ihn ablehnen
- wenn zwei Stimmen gegen Ihre initiale Position stimmen, betrachten Sie dies als echtes Signal
- halten Sie die rohen Positionen vor dem Urteil sichtbar
6. Präsentieren Sie ein kompaktes Urteil
Verwenden Sie diese Ausgabeform:
## Rat: [kurzer Entscheidungstitel]
**Architekt:** [1-2 Sätze Position]
[1 Zeile zur Begründung]
**Skeptiker:** [1-2 Sätze Position]
[1 Zeile zur Begründung]
**Pragmatiker:** [1-2 Sätze Position]
[1 Zeile zur Begründung]
**Kritiker:** [1-2 Sätze Position]
[1 Zeile zur Begründung]
### Urteil
- **Konsens:** [wo sie sich einig sind]
- **Stärkster Dissens:** [wichtigste Uneinigkeit]
- **Prüfung der Prämisse:** [hat der Skeptiker die Frage selbst hinterfragt?]
- **Empfehlung:** [der synthetisierte Pfad]
Halten Sie es auf einem Handybildschirm scannbar.
Persistenzregel
Schreiben Sie keine ad-hoc Notizen zu ~/.claude/notes oder anderen Schattenpfaden aus dieser Fähigkeit.
Wenn der Rat die Empfehlung maßgeblich ändert:
- verwenden Sie
knowledge-ops, um die Lektion am richtigen dauerhaften Speicherort zu speichern - oder verwenden Sie
/save-session, wenn das Ergebnis im Sitzungsspeicher gehört - oder aktualisieren Sie das relevante GitHub-/Linear-Ticket direkt, wenn die Entscheidung die aktive Ausführungsrealität ändert
Persistieren Sie eine Entscheidung nur, wenn sie etwas Reales verändert.
Multi-Runden-Nachfolge
Standard ist eine Runde.
Wenn der Nutzer eine weitere Runde wünscht:
- halten Sie die neue Frage fokussiert
- fügen Sie das vorherige Urteil nur ein, wenn es notwendig ist
- halten Sie den Skeptiker so sauber wie möglich, um den Anti-Anchoring-Wert zu bewahren
Anti-Patterns
- Verwendung des Rates für Code-Reviews
- Verwendung des Rates, wenn die Aufgabe nur Implementierungsarbeit ist
- Weitergabe des gesamten Gesprächsprotokolls an die Subagents
- Verbergen von Uneinigkeit im endgültigen Urteil
- Persistieren jeder Entscheidung als Notiz, unabhängig von der Wichtigkeit
Verwandte Fähigkeiten
santa-method— adversarische Verifikationknowledge-ops— persistente Entscheidungsdeltas korrekt speichernsearch-first— externe Referenzmaterialien vor dem Rat sammeln, falls nötigarchitecture-decision-records— das Ergebnis formalisieren, wenn die Entscheidung zu einer langfristigen Systemrichtlinie wird
Beispiel
Frage:
Sollten wir ECC 2.0 jetzt als Alpha veröffentlichen oder warten, bis die Control-Plane-Benutzeroberfläche vollständiger ist?
Wahrscheinliche Ratform:
- Der Architekt drängt auf strukturelle Integrität und die Vermeidung einer verwirrenden Oberfläche
- Der Skeptiker hinterfragt, ob die Benutzeroberfläche tatsächlich der Engpassfaktor ist
- Der Pragmatiker fragt, was jetzt ohne Vertrauensverlust veröffentlicht werden kann
- Der Kritiker konzentriert sich auf Support-Belastung, Erwartungsschulden und Verwirrung bei der Einführung
Der Wert liegt nicht in der Einstimmigkeit. Der Wert liegt darin, die Uneinigkeit vor der Wahl lesbar zu machen.
---
name: council
description: Convene a four-voice council of advisors to surface structured disagreement and tradeoffs for ambiguous decisions, go/no-go calls, and multi-path choices.
---
# Council
Convene four advisors for ambiguous decisions:
- the in-context Claude voice
- a Skeptic subagent
- a Pragmatist subagent
- a Critic subagent
This is for **decision-making under ambiguity**, not code review, implementation planning, or architecture design.
## When to Use
Use council when:
- a decision has multiple credible paths and no obvious winner
- you need explicit tradeoff surfacing
- the user asks for second opinions, dissent, or multiple perspectives
- conversational anchoring is a real risk
- a go / no-go call would benefit from adversarial challenge
Examples:
- monorepo vs polyrepo
- ship now vs hold for polish
- feature flag vs full rollout
- simplify scope vs keep strategic breadth
## When NOT to Use
| 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 |
## Roles
| 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.
## Workflow
### 1. Extract the real question
Reduce the decision to one explicit prompt:
- what are we deciding?
- what constraints matter?
- what counts as success?
If the question is vague, ask one clarifying question before convening the council.
### 2. Gather only the necessary context
If the decision is codebase-specific:
- collect the relevant files, snippets, issue text, or metrics
- keep it compact
- include only the context needed to make the decision
If the decision is strategic/general:
- skip repo snippets unless they materially change the answer
### 3. Form the Architect position first
Before reading other voices, write down:
- your initial position
- the three strongest reasons for it
- the main risk in your preferred path
Do this first so the synthesis does not simply mirror the external voices.
### 4. Launch three independent voices in parallel
Each subagent gets:
- the decision question
- compact context if needed
- a strict role
- no unnecessary conversation history
Prompt shape:
```text
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:
- Skeptic: challenge framing, question assumptions, propose the simplest credible alternative
- Pragmatist: optimize for speed, simplicity, and real-world execution
- Critic: surface downside risk, edge cases, and reasons the plan could fail
### 5. Synthesize with bias guardrails
You are both a participant and the synthesizer, so use these rules:
- do not dismiss an external view without explaining why
- if an external voice changed your recommendation, say so explicitly
- always include the strongest dissent, even if you reject it
- if two voices align against your initial position, treat that as a real signal
- keep the raw positions visible before the verdict
### 6. Present a compact verdict
Use this output shape:
```markdown
## 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.
## Persistence Rule
Do **not** write ad-hoc notes to `~/.claude/notes` or other shadow paths from this skill.
If the council materially changes the recommendation:
- use `knowledge-ops` to store the lesson in the right durable location
- or use `/save-session` if the outcome belongs in session memory
- or update the relevant GitHub / Linear issue directly if the decision changes active execution truth
Only persist a decision when it changes something real.
## Multi-Round Follow-up
Default is one round.
If the user wants another round:
- keep the new question focused
- include the previous verdict only if it is necessary
- keep the Skeptic as clean as possible to preserve anti-anchoring value
## Anti-Patterns
- using council for code review
- using council when the task is just implementation work
- feeding the subagents the entire conversation transcript
- hiding disagreement in the final verdict
- persisting every decision as a note regardless of importance
## Related Skills
- `santa-method` — adversarial verification
- `knowledge-ops` — persist durable decision deltas correctly
- `search-first` — gather external reference material before the council if needed
- `architecture-decision-records` — formalize the outcome when the decision becomes long-lived system policy
## Example
Question:
```text
Should we ship ECC 2.0 as alpha now, or hold until the control-plane UI is more complete?
```
Likely council shape:
- Architect pushes for structural integrity and avoiding a confused surface
- Skeptic questions whether the UI is actually the gating factor
- Pragmatist asks what can be shipped now without harming trust
- Critic focuses on support burden, expectation debt, and rollout confusion
The value is not unanimity. The value is making the disagreement legible before choosing.
Alle Dateien
1 Dateiencouncil installieren
Laden Sie die Skill-Dateien herunter und extrahieren Sie diese in Ihr .claude/skills/-Verzeichnis.
ZIP herunterladenKlonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.
git clone https://github.com/affaan-m/ECC/tree/main/skills/council # Copy SKILL.md to your .claude/skills/ directory
Kopieren





Heim
