lggarrison/agent-skills

Regras de revisão de código para pull requests. Use ao revisar um PR ou um diff, ou ao revisar novamente um PR após novos commits: o que sinalizar, a barra de severidade, o formato do comentário e como convergir nas rodadas de revisão em vez de levantar novos problemas menores a cada vez.

O que é agent-skills?

Este skill fornece um conjunto claro e rigoroso de regras para revisão de pull requests, seja por um humano ou por um agente de IA (como Copilot code review ou Claude). Seu principal objetivo é garantir que a revisão seja produtiva e focada em obter um PR correto e mesclado, evitando comentários desnecessários ou hipotéticos. O skill define uma barra de severidade com três níveis (Bloqueante, Deve corrigir, e Nit) e estabelece critérios objetivos para cada um, proibindo explicitamente certos tipos de feedback, como preocupações hipotéticas, preferências pessoais ou problemas em código não alterado pelo PR. Além disso, ele orienta sobre como convergir em múltiplas rodadas de revisão, limitando o escopo de cada rodada e proibindo a repetição de problemas já resolvidos. O formato dos comentários é padronizado, com um resumo final obrigatório, e há instruções específicas para agentes que revisam em loop com o autor.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lggarrison/agent-skills/tree/HEAD/skills/pr-review

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

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

Documentação

Revisão de PR

Estas regras são para qualquer revisor, humano ou agente (Copilot code review, Claude, e outros). O skill irmão github cobre o lado do autor: corrigir comentários, responder e solicitar a próxima revisão. Onde as regras de revisão do próprio repositório (AGENTS.md, CONTRIBUTING.md, um guia de estilo) entrarem em conflito com este skill, as regras do repositório prevalecem.

O objetivo de uma revisão é obter um PR correto mesclado. Não é encontrar algo para dizer. "Nenhum problema encontrado" é um bom resultado.

A barra para uma constatação

Publique uma constatação somente se você puder nomear uma falha realística: um chamador real, entrada ou configuração, e o resultado incorreto que ela produz. Se você não conseguir escrever esse cenário em uma ou duas frases, não o publique.

SeveridadeUse para
BloqueanteResultados incorretos em um caminho comum, falhas de segurança, perda de dados, um build ou testes quebrados, uma mudança que quebra uma API pública, ou uma clara quebra de uma regra documentada no repositório
Deve corrigirUm bug real em um caminho menos comum, um teste ausente para um novo comportamento, ou documentação ou instruções que levariam um leitor a fazer a coisa errada em um caso normal
NitNomenclatura, redação ou pequenas correções de clareza. Opcionais por definição. No máximo três por revisão, e apenas na primeira rodada

Não publique:

  • Hipóteses que exigem entrada irrealista, um ambiente mal configurado ou um invasor que já tem o acesso que o ataque lhe daria.
  • Código defensivo para um caso que nenhum chamador pode alcançar ("considere adicionar uma verificação nula").
  • Qualquer coisa que um formatador, linter ou verificador de tipos no repositório já imponha.
  • Preferência pessoal entre duas abordagens razoáveis.
  • Preocupações de desempenho sem um caminho crítico ou medição por trás delas.
  • Solicitações para ampliar o PR: funcionalidades, refatorações ou limpezas que ele não se propôs a fazer.
  • Problemas em código que o PR não alterou, a menos que o PR os torne piores. Se algo sério estiver lá de qualquer forma, mencione uma vez, marcado como pré-existente, não bloqueante.

Para documentações, skills e outras instruções, faça uma pergunta: um leitor seguindo este texto faria a coisa errada em um caso normal? Lacunas para configurações raras são no máximo nits. Não peça para cada caso extremo ser detalhado.

Convergindo entre rodadas

Um PR deve ficar mais silencioso a cada revisão, não mais barulhento.

  • Rodada 1 (primeira revisão): o diff completo, todas as severidades, nits limitados conforme acima.
  • Rodada 2 e posteriores (novos commits desde sua última revisão):
    • Revise apenas o que mudou desde sua última revisão e verifique se suas constatações anteriores foram corrigidas.
    • Não levante novas constatações sobre código que você já revisou e que não mudou. Se você perdeu algo lá, publique apenas se for bloqueante.
    • Sem nits.
    • Não re-levante uma constatação que o autor respondeu com um motivo, a menos que você tenha novas evidências de que o motivo está errado. Discordância sozinha não é nova evidência.
  • Se nada atender à barra, diga isso em uma linha e pare. Não preencha a revisão.

Escrevendo constatações

  • Um problema por comentário, ancorado na linha sobre a qual se refere.
  • Comece com a severidade: Bloqueante:, Deve corrigir:, ou Nit:.
  • Em seguida, o cenário de falha em uma ou duas frases, depois a menor correção que funciona.
  • No máximo cinco constatações por revisão, as mais severas primeiro. Se houver mais, liste o restante brevemente no resumo. Mescle duplicatas em um comentário que liste todos os lugares.
  • Seja específico e neutro. Sem elogios de preenchimento, sem "você pode querer considerar".

O resumo

Termine com um resumo curto:

  1. Um veredito: Aprovar, Aprovar com nits ou Alterações solicitadas (apenas quando houver pelo menos uma constatação bloqueante).
  2. Contagens por severidade.
  3. Na rodada 2 ou posteriores: quais constatações anteriores foram corrigidas agora e quais ainda estão abertas.

Revisando como um agente em um loop

Quando outro agente estiver corrigindo suas constatações e solicitando a próxima revisão:

  • Trate as respostas do autor como parte da revisão. "Corrigido em abc1234" significa verificar esse commit. "Deixando como está, porque…" significa que a constatação está encerrada, a menos que o motivo esteja errado.
  • Após três rodadas, publique apenas constatações bloqueantes e diga que os itens restantes ficam a critério do autor.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

lggarrison/agent-skills

Writes, debugs, and reviews end-to-end tests that drive a whole app through a browser, a CLI, or an API the way a user would. Covers choosing which journeys deserve an e2e test, stable locators, waiting on conditions instead of time, isolated test data, debugging failures from traces, and fixing flaky tests at the cause. Defaults to Playwright when a repo has no e2e tool yet. Use when adding or changing an e2e test, an e2e test fails or is flaky in CI, or reviewing e2e tests in a diff.

lggarrison/agent-skills

Writes and maintains project roadmaps as Markdown files in the repository. Each roadmap has phases, work items with stable IDs and checkable acceptance criteria, explicit dependencies, a list of unresolved decisions, and a changelog. Use when asked to create, update, reconcile with recent work, restructure, or review a roadmap or delivery plan.

lggarrison/agent-skills

Sets up or audits a repository's baseline files, including license, security policy, contributing guide, README, editor and Git hygiene, PR and issue templates, Dependabot, CI, and for Node.js/TypeScript projects the lint, format, test, hook, and publish tooling. Includes starter PR and issue templates. Use when bootstrapping a new repository, adding missing community or GitHub files to an existing one, or checking a repository against a new-repo checklist.

lggarrison/agent-skills

Sets up and maintains a Markdown wiki inside a repository that agents keep current, in the "LLM wiki" style. Use when asked to create a project wiki, add a source to it, answer a question from it, update it after a code change, check it for broken links or stale pages, or reorganize it.

Habilidades Relacionadas