Revisão em Ciclo

Ciclo iterativo de trabalhador-revisor dentro de uma única sessão. Você faz o trabalho, gera um subagente revisor para criticá-lo, revisa com base no feedback e repete até que o nível de qualidade seja atingido.

O que é Revisão em Ciclo?

O skill 'Review Loop' implementa um ciclo de trabalho e revisão dentro de uma única sessão de agente. Ele é ideal para tarefas complexas onde a qualidade é mais importante que a velocidade, como implementações robustas, documentos de design, especificações técnicas ou código que exige tratamento de segurança e lógica financeira. O skill funciona gerando um subagente crítico separado que avalia o trabalho produzido com uma nota de 1 a 10 e fornece feedback específico e acionável. O agente principal então revisa o trabalho com base nesse feedback e repete o ciclo até que a nota mínima de qualidade (padrão 8/10) seja atingida ou o número máximo de iterações (padrão 4) seja alcançado. O skill suporta override de parâmetros pelo usuário, como nível de qualidade, número de loops e modelo do revisor, e se adapta a diferentes tipos de tarefa (código, design, refatoração, escrita, etc.) com critérios de revisão específicos. É compatível principalmente com plataformas que suportam criação de subagentes, mas oferece uma alternativa simulada para outras. Restrições importantes incluem: nunca auto-revisar, nunca pular um ciclo de revisão sem justificativa, e garantir que o revisor seja igual ou mais poderoso que o trabalhador.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/2dmurali/review-loop-skill/tree/main/review-loop

Installed? Explore more Produtividade e Colaboração skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Revisão em Ciclo faz?

Ciclo iterativo de trabalhador-revisor dentro de uma única sessão. Você faz o trabalho, gera um subagente revisor para criticá-lo, revisa com base no feedback e repete até que o nível de qualidade seja atingido.

Princípio central: Primeiros rascunhos nunca são finais. A crítica iterativa produz melhores resultados do que uma única passagem.

Nota sobre a plataforma: Este skill funciona melhor com agentes que suportam criação de subagentes. Em plataformas sem essa capacidade, simule a etapa de revisor abrindo um novo contexto de chat, colando apenas o produto do trabalho (sem raciocínio anterior) e pedindo que ele atribua uma nota de 1 a 10 com feedback específico.

Início Rápido

  1. Diga: "implementar X, usar review-loop" ou "executar review-loop no arquivo que acabei de escrever"
  2. O agente faz o trabalho (ou lê o trabalho existente)
  3. Um subagente crítico separado avalia o trabalho com nota de 1 a 10 e feedback específico
  4. O agente revisa e repete até que a nota seja >= 8 (nível de qualidade padrão)
  5. Um resumo do ciclo é entregue com o resultado final

Quando Usar

  • O usuário diz "use review-loop", "polir isso", "iterar sobre isso", "/review-loop"
  • Implementações complexas onde a qualidade importa mais que a velocidade
  • Documentos de design, especificações ou escrita técnica
  • Código que precisa ser robusto (segurança, pipelines de dados, lógica financeira)
  • Quando o usuário deseja uma crítica adversarial incorporada ao processo

Quando NÃO Usar

  • Correções simples, edições rápidas, alterações de uma linha
  • Tarefas onde os testes são o critério de qualidade (use TDD + CI)
  • Quando o usuário quer apenas que seja feito rapidamente
  • Trabalho exploratório/experimental onde o objetivo é aprender, não entregar
  • Tarefas sem critérios de aceitação claros — defina-os primeiro, depois use review-loop

Padrões

ConfiguraçãoPadrão
Mínimo de loops2
Máximo de loops4
Nível de qualidade8/10
Modelo do trabalhador(seu modelo atual)
Modelo do revisor(seu modelo atual ou alternativa rápida/equilibrada)

Seleção de Modelo

A tarefa do revisor avalia lógica e restrições. A tarefa do trabalhador escreve e modifica código. Escolha as capacidades do subagente de acordo.

REGRRA CRÍTICA: O Revisor deve ser SEMPRE IGUAL ou MAIS PODEROSO que o Trabalhador. Se o revisor for mais fraco que o trabalhador, ele não conseguirá criticar adequadamente lógica complexa ou detectar regressões sutis.

Complexidade da TarefaCapacidade do TrabalhadorCapacidade do RevisorJustificativa
Simples/mecânica (CRUD, formatação, boilerplate)Rápido / LeveEquilibradoTrabalhador leve é rápido, revisor equilibrado detecta problemas facilmente
Padrão (funcionalidades, refatorações, docs)EquilibradoEquilibradoBom equilíbrio entre custo, velocidade e qualidade
Complexa (multi-arquivo, integração, design)EquilibradoAvançado / RaciocínioRevisor avançado detecta problemas sutis de arquitetura, trabalhador equilibrado consegue implementá-los
Muito complexa (segurança, quant, sistemas distribuídos)Avançado / RaciocínioAvançado / RaciocínioAmbos precisam de contexto completo e poder de raciocínio. O revisor DEVE igualar o poder do trabalhador.

A regra de ouro: O trabalhador deve ser inteligente o suficiente para AGIR com base no feedback do revisor. Se o revisor disser "corrija a condição de corrida com um semáforo baseado em canal" e o trabalhador não conseguir raciocinar sobre concorrência, o loop não convergirá.

Sinal de escalada: Se a nota não melhorar após 2 loops consecutivos com o mesmo feedback, o modelo do trabalhador é fraco demais. Escale:

  • Opção A: Peça ao usuário para mudar para um modelo mais capaz
  • Opção B: Reduza temporariamente o nível de qualidade e comunique a lacuna ao usuário
  • Opção C: Divida a tarefa em subtarefas menores e execute review-loop em cada uma

Comportamento padrão: Como você (o agente principal) É o trabalhador, gere um subagente revisor que corresponda ou exceda sua capacidade atual com base na tarefa:

  • Maioria das tarefas → Revisor Padrão/Equilibrado
  • Tarefas especializadas/difíceis → Revisor Avançado/Raciocínio
  • Verificações rápidas → Revisor Rápido/Leve (apenas se você também estiver atuando como trabalhador leve)

Substituições pelo Usuário

Os usuários podem substituir qualquer padrão diretamente no pedido. Analise naturalmente:

"implementar X com review-loop, nível de qualidade 9, usar modelo avançado para revisão, máximo 5 loops"
"polir isso, mínimo 2 loops, nível 8"
"executar review-loop com revisor rápido, máximo 2 loops"
"usar review-loop, revisor com raciocínio, nível de qualidade 9, mínimo 3 máximo 6"

Regras de análise:

  • "nível de qualidade N" ou "nível N" → quality_gate = N
  • "revisor [modelo]" ou "revisar com [modelo]" → substituição do modelo do revisor
  • "máximo N loops" → max_loops = N
  • "mínimo N loops" → min_loops = N
  • Se o usuário não especificar, use os padrões
  • Se o usuário disser "rigoroso" ou "estrito" → interprete como nível de qualidade 8, min_loops 2
  • Se o usuário disser "rápido" ou "breve" → interprete como max_loops 2, nível de qualidade 6

O Processo

flowchart TD
    A[Faça o trabalho] --> B[Gere subagente revisor]
    B --> C{Loops mínimos atingidos?}
    C -- não, sempre continue --> E[Revise com base no feedback]
    C -- sim --> D{Nota >= nível de qualidade?}
    D -- sim --> F[Passo de polimento final]
    D -- não --> G{Máximo de loops atingido?}
    G -- sim, pare mesmo assim --> F
    G -- não --> E
    E --> B
    F --> H([Concluído])

Passo a Passo

Passo 1: Faça o Trabalho

Complete a tarefa como faria normalmente. Escreva o código, crie a especificação, implemente a funcionalidade. Não se segure — produza sua melhor primeira tentativa.

Passo 2: Gere Subagente Revisor

Use a ferramenta Agente para despachar um revisor. O revisor deve:

  • Ser um subagente separado (contexto novo, sem ancoragem ao seu raciocínio)
  • Receber apenas o produto do trabalho (arquivos, diffs) — não seu processo de pensamento
  • Atribuir uma nota de 1 a 10 com feedback específico e acionável
  • Usar um modelo equilibrado/padrão por padrão (ou um modelo avançado de raciocínio para tarefas complexas/especializadas)

Modelo de prompt do revisor:

Você é um revisor crítico. Atribua uma nota de 1 a 10 ao seguinte trabalho e forneça feedback específico e acionável.

## O que foi feito
{breve descrição da tarefa}

## Critérios de revisão
{critérios específicos da tarefa — o que importa para ESTA tarefa}

Exemplos de critérios bem escritos:
  Para um endpoint de API REST:
    - Códigos de status HTTP corretos usados
    - Validação de entrada presente em todos os parâmetros
    - Autenticação aplicada; nenhum acesso não autenticado
    - Sem padrões de consulta N+1

  Para um documento de design:
    - O problema é inequívoco
    - Alternativas consideradas com trade-offs
    - Sem generalizações sobre complexidade de implementação
    - Métricas de sucesso são mensuráveis

  Para um pipeline de dados:
    - Idempotente — seguro para reexecutar
    - Mudanças de esquema tratadas de forma elegante
    - Modos de falha documentados
    - Tratamento de PII abordado

## Instruções
1. Leia o trabalho cuidadosamente
2. Atribua nota de 1 a 10 onde:
   - 1-3: Fundamentalmente quebrado ou faltando requisitos importantes
   - 4-6: Funciona, mas tem problemas significativos
   - 7-8: Bom, apenas problemas menores
   - 9-10: Excelente, pronto para entrega
3. Liste problemas específicos com referências de arquivo:linha quando aplicável
4. Para cada problema, explique POR QUE ele importa e O QUE corrigir
5. Não seja educado — seja honesto e direto
6. Declare sua nota claramente como "Nota: N/10"

## Arquivos para revisar
{cole o conteúdo dos arquivos ou liste os caminhos dos arquivos com trechos relevantes}

Passo 3: Analise o Feedback

Da resposta do revisor, extraia:

  • Nota (o número)
  • Problemas (categorizados como Crítico / Importante / Menor)
  • Correções específicas (o que mudar)

Relate ao usuário:

Loop {N}/{max}: Nota {X}/10
- {resumo dos principais pontos de feedback}

Passo 4: Verifique Condições de Parada

Nesta ordem:

  1. Se loops concluídos < min_loops → continue (sempre)
  2. Se nota >= nível_de_qualidade → pare, vá para o polimento final
  3. Se loops concluídos >= max_loops → pare, vá para o polimento final
  4. Caso contrário → revise e repita o loop

Passo 5: Revise

Aborde o feedback do revisor. Corrija problemas Críticos e Importantes. Problemas Menores são opcionais. Depois volte ao Passo 2.

Importante: Cada revisão deve ser direcionada. Não reescreva tudo — corrija o que o revisor apontou. Mantenha uma lista mental de TODO o feedback anterior para evitar regressões.

Passo 6: Polimento Final

Quando o loop sair (nível de qualidade atingido ou máximo de loops alcançado):

  • Aborde quaisquer problemas menores restantes se forem triviais
  • Verifique se o resultado final é coerente (sem artefatos dos ciclos de revisão)
  • Relate a nota final e o número de loops ao usuário

Adaptando Critérios do Revisor por Tipo de Tarefa

Tipo de TarefaO Revisor Deve Focar em
CódigoCorreção, casos limite, tratamento de erros, legibilidade, sem problemas de segurança
Especificação/DesignCompletude, viabilidade, sem generalizações, implementabilidade
RefatoraçãoNenhuma mudança de comportamento, sem regressões, mais limpo que antes
EscritaClareza, estrutura, adequado ao público, sem rodeios
Correção de bugCausa raiz abordada, teste de regressão existe, sem efeitos colaterais
Infraestrutura/IaCIdempotência, menor privilégio, sem segredos hardcoded, segurança de destruição
Migração de banco de dadosReversibilidade, estratégia de índices, risco de perda de dados, desempenho em escala
Design de APICompatibilidade reversa, autenticação, versionamento, contrato de erro
Suíte de testesCobertura de casos limite, sem interdependência de testes, asserções significativas

Dois Modos de Operação

Modo A: "Fazer e Revisar" (ciclo completo)

O usuário dá uma tarefa + diz para usar review-loop. Você faz o trabalho E executa o ciclo de revisão.

Usuário: "Implemente a camada de cache. Use review-loop, nível de qualidade 8."

Você:
1. Implementa camada de cache
2. Gera revisor → Nota 6, feedback: sem remoção, sem TTL
3. Revisa: adiciona remoção + TTL
4. Gera revisor → Nota 8, feedback: questão menor de nomenclatura
5. Polimento final, concluído

Modo B: "Revisar Existente" (apenas revisão)

O usuário já fez o trabalho ou você já fez o trabalho. Apenas execute o ciclo de revisão no que existe.

Usuário: "Execute review-loop no módulo de autenticação que acabei de escrever"

Você:
1. Lê o módulo de autenticação
2. Gera revisor → Nota 5, feedback: injeção SQL, sem limitação de taxa
3. Corrige: parametriza consultas, adiciona limitador de taxa
4. Gera revisor → Nota 8, aprovado
5. Concluído

Bandeiras Vermelhas

Nunca:

  • Auto-revisar em vez de gerar um subagente (viés de ancoragem)
  • Pular um ciclo de revisão porque "o feedback está errado" sem justificativa
  • Inflar sua própria nota ("Acho que isso é na verdade um 9")
  • Continuar além do max_loops sem consentimento do usuário
  • Gerar o revisor com todo o seu raciocínio/histórico (eles devem revisar o TRABALHO, não sua intenção)

Se o revisor estiver errado:

  • Contra-argumente com evidências (mostre código/testes que refutam o feedback)
  • Pule esse ponto específico na revisão
  • Anote isso em seu relatório ao usuário
  • NÃO reduza o nível de qualidade para compensar

Formato de Relatório de Exemplo

--- Revisão em Ciclo: {nome da tarefa} ---

Loop 1/4: Nota 6/10
  Revisor: Validação de entrada ausente, sem tratamento de erro para timeout de rede,
           função muito longa (80 linhas).
  Ação: Corrigindo todos os três problemas.

Loop 2/4: Nota 8/10
  Revisor: Limpo. Menor: o nome da variável `d` poderia ser mais descritivo.
  Ação: Nível de qualidade atingido (8 >= 8). Polimento final.

Resultado: 8/10 em 2 loops. Concluído.

Limitações Conhecidas

  • O subagente revisor não tem memória de loops anteriores — inclua explicitamente o contexto de feedback anterior em cada prompt do revisor para evitar repetir problemas resolvidos
  • A inflação de nota é possível se os critérios do prompt do revisor forem muito vagos — invista tempo em escrever critérios específicos e mensuráveis
  • Este skill não substitui a revisão humana de código para código crítico de segurança ou sensível a conformidade; trate o resultado como uma primeira passagem forte
  • A convergência do loop não é garantida se a tarefa for subespecificada — defina critérios de aceitação claros antes de começar

Custo e Velocidade

  • Cada loop = 1 chamada de subagente revisor
  • Preveja aproximadamente 1–2x o tempo de uma única passagem de implementação para um ciclo completo de 3 loops
  • Isso é barato comparado a enviar código com bugs, especificações vagas ou acionar um ciclo de revisão tardio
  • Use seu modelo padrão/equilibrado para a maioria das revisões; atualize apenas para modelos avançados de raciocínio para domínios especializados (auditorias de segurança, sistemas distribuídos, finanças quant)

Licença

MIT — livre para usar, adaptar e redistribuir com qualquer ferramenta ou plataforma de IA. Atribuição apreciada. Contribuições bem-vindas.

Habilidades Relacionadas