voltar ao catálogo

llm-council

Roda uma pergunta, ideia ou decisão por um conselho de 5 conselheiros de IA que analisam de forma independente, revisam uns aos outros anonimamente e sintetizam um veredito final. GATILHOS OBRIGATÓRIOS: 'reúne o conselho', 'roda o conselho', 'war room isso', 'pressiona essa decisão', 'estressa essa ideia', 'debate isso'. GATILHOS FORTES (usar quando combinados com uma decisão real de alto impacto com tradeoff): 'devo fazer X ou Y', 'qual opção', 'o que você faria', 'é o movimento certo', 'valida isso', 'não consigo decidir', 'estou dividido entre'. NÃO dispare em perguntas de sim/não simples, buscas factuais, tarefas de criação (escrever/resumir), nem em escolhas triviais de baixo risco mesmo que tenham 'ou'/'devo' (ex: 'tabs ou espaços?', 'qual lib de datas?', 'devo usar markdown?' NÃO são perguntas de conselho). DISPARE só quando a decisão tem peso real, custo alto de errar, múltiplas opções e contexto que pede pressão de vários ângulos.

Versão: v1.0.0Autor: Jean Carlos NesiPlugin: llm-councilTags: decisao, conselho, brainstorming, pressure-test, war-room, llm-council
/plugin install llm-council@nextfit-hub-ai

LLM Council

Você pergunta pra uma IA, recebe uma resposta. Pode ser ótima. Pode ser mediana. Você não tem como saber, porque viu só uma perspectiva.

O conselho resolve isso. Roda sua pergunta por 5 conselheiros independentes, cada um pensando de um ângulo fundamentalmente diferente. Depois eles revisam o trabalho uns dos outros. Depois um Chairman sintetiza tudo numa recomendação final que diz onde os conselheiros concordam, onde se chocam e o que você deveria realmente fazer.

Adaptado do LLM Council do Andrej Karpathy: despachar a pergunta pra múltiplos modelos, revisão por pares anônima, e um chairman produzindo a resposta final. Aqui fazemos o mesmo dentro do Claude usando sub-agents com lentes de pensamento diferentes.


Quando rodar o conselho

O conselho é pra perguntas onde errar é caro.

Boas perguntas pro conselho:

  • "Devo lançar um workshop de R$97 ou um curso de R$497?"
  • "Qual dessas 3 posições é mais forte?"
  • "Estou pensando em pivotar de X pra Y. Estou louco?"
  • "Aqui está a copy da minha landing. O que está fraco?"
  • "Contrato um assistente ou construo uma automação primeiro?"

Más perguntas pro conselho:

  • "Qual a capital da França?" (uma resposta certa, não precisa de perspectivas)
  • "Escreve um tweet pra mim" (tarefa de criação, não decisão)
  • "Resume esse artigo" (processamento, não julgamento)

O conselho brilha quando há incerteza genuína e o custo de errar é alto. Se você já sabe a resposta e só quer validação, o conselho provavelmente vai te dizer coisas que você não quer ouvir. Esse é o ponto.


Os cinco conselheiros

Cada conselheiro pensa de um ângulo diferente. Não são cargos nem personas — são estilos de pensamento que naturalmente criam tensão entre si.

1. O Contrário

Ativamente procura o que está errado, o que falta, o que vai falhar. Assume que a ideia tem uma falha fatal e tenta encontrá-la. Se tudo parece sólido, cava mais fundo. Não é um pessimista — é o amigo que te salva de um mau negócio fazendo as perguntas que você está evitando.

2. O Pensador de Primeiros Princípios

Ignora a pergunta de superfície e pergunta "o que estamos tentando resolver de verdade aqui?". Descasca as suposições. Reconstrói o problema do zero. Às vezes a saída mais valiosa do conselho é ele dizendo "você está fazendo a pergunta errada".

3. O Expansionista

Procura o upside que todo mundo está perdendo. O que poderia ser maior? Que oportunidade adjacente está escondida? O que está subvalorizado? O Expansionista não liga pra risco (isso é trabalho do Contrário). Ele liga pro que acontece se isso der ainda mais certo do que o esperado.

4. O Outsider

Tem zero contexto sobre você, sua área ou sua história. Responde puramente ao que está na frente dele. É o conselheiro mais subestimado. Especialistas desenvolvem pontos cegos. O Outsider pega a maldição do conhecimento: coisas óbvias pra você mas confusas pra todo mundo.

5. O Executor

Só se importa com uma coisa: isso pode de fato ser feito, e qual o caminho mais rápido? Ignora teoria, estratégia e big-picture. Olha toda ideia pela lente de "OK, mas o que você faz segunda de manhã?". Se uma ideia soa brilhante mas não tem primeiro passo claro, o Executor vai dizer.

Por que esses cinco: eles criam três tensões naturais. Contrário vs Expansionista (downside vs upside). Primeiros Princípios vs Executor (repensar tudo vs simplesmente fazer). O Outsider fica no meio mantendo todos honestos ao enxergar com olhos frescos.


Como uma sessão funciona

Copie este checklist para sua resposta e vá marcando conforme avança — ele garante que nenhum passo crítico (paralelismo, anonimização, revisão por pares) seja pulado:

Progresso do Conselho:
- [ ] Passo 1: Enquadrar a questão + enriquecer com contexto do workspace
- [ ] Passo 2: Convocar os 5 conselheiros EM PARALELO (uma mensagem, 5 tool calls)
- [ ] Passo 3: Anonimizar as respostas (A–E embaralhadas) e rodar a revisão por pares
- [ ] Passo 4: Chairman sintetiza o veredito (respostas de-anonimizadas)
- [ ] Passo 5: Perguntar ao usuário o formato do relatório e entregá-lo
- [ ] Passo 6: Salvar transcript (só se pedido)

Passo 1: enquadrar a questão (com enriquecimento de contexto)

Quando o usuário dispara a skill, faça duas coisas antes de enquadrar:

A. Escaneie o workspace por contexto. A pergunta do usuário costuma ser só a ponta do iceberg. Antes de enquadrar, procure e leia rapidamente arquivos de contexto relevantes:

  • CLAUDE.md / claude.md na raiz do projeto (contexto de negócio, preferências, restrições)
  • Qualquer pasta memory/ (perfis de audiência, docs de voz, decisões passadas)
  • Arquivos que o usuário referenciou ou anexou explicitamente
  • Transcripts de conselhos recentes nesta pasta (pra evitar re-conciliar o mesmo terreno)
  • Outros arquivos relevantes à pergunta específica (ex: se for sobre preço, procure dados de receita, resultados de lançamentos passados)

Use Glob e Read rápidos. Não gaste mais de 30 segundos nisso. Você está atrás dos 2-3 arquivos que dariam aos conselheiros o contexto pra dar conselho específico e fundamentado em vez de genérico.

B. Enquadre a questão. Pegue a pergunta bruta do usuário E o contexto enriquecido e reformule como um prompt claro e neutro que todos os cinco conselheiros vão receber. Deve incluir:

  1. A decisão/pergunta central
  2. Contexto-chave da mensagem do usuário
  3. Contexto-chave dos arquivos do workspace (estágio do negócio, audiência, restrições, resultados passados, números relevantes)
  4. O que está em jogo (por que essa decisão importa)

Não adicione sua opinião. Não direcione. Mas GARANTA que cada conselheiro tenha contexto suficiente pra dar resposta específica e fundamentada.

Se a pergunta for vaga demais ("reúne o conselho: meu negócio"), faça UMA pergunta de esclarecimento. Só uma. Depois prossiga.

Guarde a questão enquadrada para o relatório.

Passo 2: convocar o conselho (5 sub-agents em paralelo)

Spawne os 5 conselheiros simultaneamente como sub-agents (Agent tool, tipo general-purpose) — numa única mensagem, múltiplos tool calls. Spawn sequencial desperdiça tempo e deixa respostas anteriores vazarem nas posteriores.

Cada conselheiro recebe: sua identidade e estilo de pensamento (das descrições acima), a questão enquadrada, e a instrução de responder de forma independente, sem hedge, sem tentar ser equilibrado — abraçar totalmente o ângulo atribuído. 150–300 palavras.

Template do prompt do sub-agent:

Você é [Nome do Conselheiro] em um LLM Council.

Seu estilo de pensamento: [descrição do conselheiro acima]

Um usuário trouxe esta questão ao conselho:

---
[questão enquadrada]
---

Responda da sua perspectiva. Seja direto e específico. Não faça hedge nem tente ser equilibrado. Abrace totalmente seu ângulo. Os outros conselheiros cobrem os ângulos que você não está cobrindo.

Mantenha a resposta entre 150 e 300 palavras. Sem preâmbulo. Vá direto pra análise.

Passo 3: revisão por pares (5 sub-agents em paralelo)

Este é o passo que faz o conselho ser mais do que "perguntar 5 vezes". É o cerne do insight do Karpathy.

Colete as 5 respostas. Anonimize como Resposta A a E (embaralhe aleatoriamente qual conselheiro mapeia pra qual letra, pra não ter viés de posição).

Spawne 5 novos sub-agents em paralelo. Cada revisor vê as 5 respostas anonimizadas e responde três perguntas:

  1. Qual resposta é a mais forte e por quê? (escolha uma)
  2. Qual resposta tem o maior blind spot e qual é?
  3. O que TODAS as respostas perderam que o conselho deveria considerar?

Template do prompt do revisor:

Você está revisando as saídas de um LLM Council. Cinco conselheiros responderam de forma independente a esta questão:

---
[questão enquadrada]
---

Aqui estão as respostas anonimizadas:

**Resposta A:**
[resposta]

**Resposta B:**
[resposta]

**Resposta C:**
[resposta]

**Resposta D:**
[resposta]

**Resposta E:**
[resposta]

Responda estas três perguntas. Seja específico. Referencie as respostas por letra.

1. Qual resposta é a mais forte? Por quê?
2. Qual resposta tem o maior blind spot? O que está faltando nela?
3. O que TODAS as cinco respostas perderam que o conselho deveria considerar?

Mantenha a revisão abaixo de 200 palavras. Seja direto.

Passo 4: síntese do Chairman

Passo final de raciocínio. Um agent recebe tudo: a questão original, as 5 respostas dos conselheiros (agora de-anonimizadas, pra você ver quem disse o quê) e as 5 revisões por pares.

O Chairman produz o veredito final nesta estrutura:

  1. Onde o conselho concorda — pontos em que múltiplos conselheiros convergiram de forma independente. Sinais de alta confiança.
  2. Onde o conselho diverge — as discordâncias genuínas. Não suavize. Apresente os dois lados e explique por que conselheiros razoáveis discordam.
  3. Blind spots que o conselho capturou — coisas que só emergiram na revisão por pares.
  4. A recomendação — clara e acionável. Não "depende". Não "considere os dois lados". Uma resposta de verdade. O Chairman pode discordar da maioria se o raciocínio do dissidente for mais forte.
  5. A primeira coisa a fazer — um único passo concreto. Não uma lista de 10. Um.

Template do prompt do Chairman:

Você é o Chairman de um LLM Council. Sintetize o trabalho de 5 conselheiros e suas revisões por pares em um veredito final.

A questão trazida ao conselho:
---
[questão enquadrada]
---

RESPOSTAS DOS CONSELHEIROS:

**O Contrário:**
[resposta]

**O Pensador de Primeiros Princípios:**
[resposta]

**O Expansionista:**
[resposta]

**O Outsider:**
[resposta]

**O Executor:**
[resposta]

REVISÕES POR PARES:
[todas as 5 revisões]

Produza o veredito usando exatamente esta estrutura:

## Onde o Conselho Concorda
[pontos em que múltiplos conselheiros convergiram de forma independente]

## Onde o Conselho Diverge
[discordâncias genuínas. Apresente os dois lados. Explique por que conselheiros razoáveis discordam]

## Blind Spots que o Conselho Capturou
[coisas que só emergiram na revisão por pares]

## A Recomendação
[recomendação clara e direta. Não "depende". Uma resposta de verdade com raciocínio]

## A Primeira Coisa a Fazer
[um único passo concreto. Não uma lista. Um]

Seja direto. Não faça hedge. O ponto do conselho é dar clareza que uma perspectiva só não daria.

Passo 5: perguntar o formato do relatório e entregá-lo

Antes de gerar qualquer coisa, pergunte ao usuário como ele quer receber o veredito. Use a ferramenta AskUserQuestion com estas três opções:

  1. HTML — relatório visual self-contained, salvo como arquivo .html no diretório atual.
  2. Terminal — resumo escaneável direto no chat, sem gerar arquivo.
  3. Markdown — arquivo .md salvo na raiz do projeto em que a skill está rodando.

Não presuma o formato. Espere a escolha do usuário e só então entregue.

Se escolher HTML:

Renderize o veredito do Chairman usando o template em references/report-template.md:

  1. Substitua os placeholders ({{TOPICO}}, {{DATA}}, {{QUESTAO}}, as 5 seções do veredito, e as respostas dos conselheiros) pelo conteúdo real. O template é HTML self-contained (CSS inline, sem dependências externas).
  2. Salve como council-report-<topico>.html no diretório de trabalho atual (<topico> = slug curto em kebab-case do tema).
  3. No chat, informe o caminho do arquivo gerado e apresente o resumo escaneável (formato abaixo).

Se escolher Terminal:

Apresente apenas o resumo escaneável no chat (formato abaixo). Não gere nenhum arquivo.

Se escolher Markdown:

  1. Monte o veredito em Markdown com as 5 seções do Chairman como headings (##), seguido de uma seção ## Respostas dos Conselheiros com um sub-heading (###) por conselheiro. Inclua tópico, data ({{DATA}}) e a questão enquadrada no topo.
  2. Salve como council-report-<topico>.md na raiz do projeto em que a skill está rodando (<topico> = slug curto em kebab-case do tema). Se a raiz do projeto não for óbvia, use o diretório de trabalho atual.
  3. No chat, informe o caminho do arquivo gerado e apresente o resumo escaneável (formato abaixo).

Formato do resumo escaneável no chat (usado em todos os formatos):

## Veredito do Conselho: {tópico curto}
📄 Relatório completo: `{caminho do arquivo, se gerado}`

### Onde o Conselho Concorda
{bullets}

### Onde o Conselho Diverge
{bullets}

### Blind Spots Capturados
{bullets}

### A Recomendação
{conteúdo}

### A Primeira Coisa a Fazer
{conteúdo}

Passo 6: salvar transcript (opcional)

Só salve um transcript se o usuário pedir. Se salvar, escreva em council-transcript-<timestamp>.md no diretório atual.


Notas importantes

  • Sempre spawne os 5 conselheiros em paralelo. Numa única mensagem, múltiplos tool calls.
  • Sempre anonimize pra revisão por pares. Se os revisores souberem quem disse o quê, vão deferir a certos estilos de pensamento em vez de avaliar pelo mérito.
  • O Chairman pode discordar da maioria. Se 4 de 5 conselheiros dizem "faça" mas o raciocínio do único dissidente é o mais forte, o Chairman deve ficar com o dissidente e explicar por quê.
  • Não rode o conselho em perguntas triviais. Se a pergunta tem uma resposta certa, só responda. O conselho é pra incerteza genuína onde múltiplas perspectivas agregam.