council
affaan-m/ECC
Convoque um conselho de quatro vozes de assessores para expor discordâncias estruturadas e compensações em decisões ambíguas, chamadas de ir/adiar e escolhas de múltiplos caminhos.
...Expandir tudoConselho
Reúna quatro assessores para decisões ambíguas:
- a voz do Claude em contexto
- um subagente Cético
- um subagente Pragmatista
- um subagente Crítico
Isso é para tomada de decisão sob ambiguidade, não revisão de código, planejamento de implementação ou design de arquitetura.
Quando Usar
Use o conselho quando:
- uma decisão tiver múltiplos caminhos credíveis e nenhum vencedor óbvio
- você precisar de exposição explícita de compensações (tradeoffs)
- o usuário solicitar segundas opiniões, dissidência ou múltiplas perspectivas
- o ancoramento conversacional for um risco real
- uma decisão de ir/não ir se beneficiar de um desafio adversarial
Exemplos:
- monorepo versus polyrepo
- lançar agora versus aguardar o polimento
- sinalizador de recurso (feature flag) versus lançamento completo
- simplificar o escopo versus manter a amplitude estratégica
Quando NÃO Usar
| Em vez de conselho | Use |
|---|---|
| Verificar se a saída está correta | `santa-method` |
| Dividir um recurso em etapas de implementação | `planner` |
| Projetar a arquitetura do sistema | `architect` |
| Revisar código em busca de bugs ou segurança | `code-reviewer` ou `santa-method` |
| Perguntas factuais diretas | responda diretamente |
| Tarefas de execução óbvias | execute a tarefa |
Papéis
| Voz | Lente |
|---|---|
| Arquiteto | correção, manutenibilidade, implicações de longo prazo |
| Cético | desafio da premissa, simplificação, quebra de suposições |
| Pragmatista | velocidade de lançamento, impacto no usuário, realidade operacional |
| Crítico | casos extremos, risco de desvantagem, modos de falha |
As três vozes externas devem ser lançadas como subagentes novos com apenas a pergunta e o contexto relevante, não a conversa completa em andamento. Esse é o mecanismo anti-ancoramento.
Fluxo de Trabalho
1. Extraia a pergunta real
Reduza a decisão a um prompt explícito:
- o que estamos decidindo?
- quais restrições importam?
- o que conta como sucesso?
Se a pergunta for vaga, faça uma pergunta esclarecedora antes de convocar o conselho.
2. Reúna apenas o contexto necessário
Se a decisão for específica do código-fonte:
- colete os arquivos relevantes, trechos, texto de problemas ou métricas
- mantenha-o compacto
- inclua apenas o contexto necessário para tomar a decisão
Se a decisão for estratégica/geral:
- ignore trechos do repositório, a menos que alterem substancialmente a resposta
3. Formule a posição do Arquiteto primeiro
Antes de ler outras vozes, anote:
- sua posição inicial
- os três motivos mais fortes para ela
- o principal risco em seu caminho preferido
Faça isso primeiro para que a síntese não simplesmente reflita as vozes externas.
4. Lance três vozes independentes em paralelo
Cada subagente recebe:
- a pergunta da decisão
- contexto compacto, se necessário
- um papel estrito
- nenhum histórico de conversa desnecessário
Formato do prompt:
Você é o [PAPEL] em um conselho de decisão de quatro vozes.
Pergunta:
[pergunta da decisão]
Contexto:
[apenas os trechos ou restrições relevantes]
Responda com:
1. Posição — 1-2 frases
2. Raciocínio — 3 tópicos concisos
3. Risco — maior risco em sua recomendação
4. Surpresa — algo que as outras vozes podem perder
Seja direto. Sem rodeios. Mantenha abaixo de 300 palavras.
Ênfase do papel:
- Cético: desafie o enquadramento, questione suposições, proponha a alternativa credível mais simples
- Pragmatista: otimize para velocidade, simplicidade e execução no mundo real
- Crítico: exponha riscos de desvantagem, casos extremos e motivos pelos quais o plano pode falhar
5. Sintetize com barreiras de viés
Você é tanto participante quanto sintetizador, então use estas regras:
- não descarte uma visão externa sem explicar por quê
- se uma voz externa alterou sua recomendação, diga isso explicitamente
- sempre inclua a dissidência mais forte, mesmo que você a rejeite
- se duas vozes se alinham contra sua posição inicial, trate isso como um sinal real
- mantenha as posições brutas visíveis antes do veredito
6. Apresente um veredito compacto
Use este formato de saída:
## Conselho: [título curto da decisão]
**Arquiteto:** [posição de 1-2 frases]
[1 linha sobre o porquê]
**Cético:** [posição de 1-2 frases]
[1 linha sobre o porquê]
**Pragmatista:** [posição de 1-2 frases]
[1 linha sobre o porquê]
**Crítico:** [posição de 1-2 frases]
[1 linha sobre o porquê]
### Veredito
- **Consenso:** [onde eles se alinham]
- **Dissidência mais forte:** [desacordo mais importante]
- **Verificação da premissa:** [o Cético questionou a própria pergunta?]
- **Recomendação:** [o caminho sintetizado]
Mantenha-o escaneável em uma tela de telefone.
Regra de Persistência
Não grave notas ad-hoc em ~/.claude/notes ou outros caminhos ocultos desta habilidade.
Se o conselho alterar substancialmente a recomendação:
- use
knowledge-opspara armazenar a lição no local durável correto - ou use
/save-sessionse o resultado pertencer à memória da sessão - ou atualize o problema relevante no GitHub / Linear diretamente se a decisão alterar a verdade da execução ativa
Persista uma decisão apenas quando ela alterar algo real.
Acompanhamento em Múltiplas Rodadas
O padrão é uma rodada.
Se o usuário quiser outra rodada:
- mantenha a nova pergunta focada
- inclua o veredito anterior apenas se for necessário
- mantenha o Cético o mais limpo possível para preservar o valor anti-ancoramento
Padrões Antiestructurais
- usar o conselho para revisão de código
- usar o conselho quando a tarefa for apenas trabalho de implementação
- alimentar os subagentes com a transcrição completa da conversa
- esconder a dissidência no veredito final
- persistir toda decisão como nota, independentemente da importância
Habilidades Relacionadas
santa-method— verificação adversarialknowledge-ops— persistir deltas de decisão duráveis corretamentesearch-first— reunir material de referência externo antes do conselho, se necessárioarchitecture-decision-records— formalizar o resultado quando a decisão se tornar política de sistema de longo prazo
Exemplo
Pergunta:
Devemos lançar o ECC 2.0 como alfa agora, ou aguardar até que a interface do usuário do plano de controle esteja mais completa?
Formato provável do conselho:
- O Arquiteto defende a integridade estrutural e evitar uma superfície confusa
- O Cético questiona se a interface do usuário é realmente o fator limitante
- O Pragmatista pergunta o que pode ser lançado agora sem prejudicar a confiança
- O Crítico foca na carga de suporte, dívida de expectativa e confusão no lançamento
O valor não é o unanimidade. O valor é tornar o desacordo legível antes de escolher.
---
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.
Todos os arquivos
1 arquivosInstalar council
Baixe e extraia os arquivos de habilidade para o seu diretório .claude/skills/.
Baixar ZIPClone o repositório e copie os arquivos da habilidade para o seu projeto.
git clone https://github.com/affaan-m/ECC/tree/main/skills/council # Copy SKILL.md to your .claude/skills/ directory
Copiar





Lar
