brooks-lint
Ajuda seu agente a revisar código, encontrando erros de design e riscos na arquitetura. Ele se baseia em livros clássicos de engenharia de software.
O que ela faz
Este programa analisa seu código de programação usando os ensinamentos de 12 livros clássicos de engenharia de software. Ele procura por problemas de design, como código repetido ou dependências complicadas, que ferramentas comuns não encontram.
Quando usar
- ✓Quando você quer uma opinião sobre a estrutura do seu código, além do básico.
- ✓Antes de fazer grandes mudanças no código para encontrar pontos fracos.
- ✓Quando o código funciona, mas parece confuso ou mal organizado.
Exemplo do que pedir para a IA
“Revise este código e me diga se ele segue boas práticas de design.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele compara seu código com os princípios de livros famosos de programação, como 'Código Limpo' e 'O Programador Pragmático'. Ele identifica padrões ruins e sugere melhorias na arquitetura.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill brooks-lintOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/brooks-lint/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Brooks Lint
Visão Geral
Brooks Lint é uma habilidade do Claude Code que revisa seu código através das lentes de 12 livros clássicos de engenharia de software. Em vez de verificar regras de estilo, ele pergunta: "O que os autores de The Pragmatic Programmer, Clean Code e Designing Data-Intensive Applications diriam sobre este código?"
Ele sintetiza os princípios de livros de engenharia marcantes em feedback acionável e estruturado — identificando "cheiros" de design, acoplamento forte, abstrações ausentes e riscos arquiteturais que linters e ferramentas de IA normalmente não pegam.
Nomeado em homenagem a Fred Brooks, autor de The Mythical Man-Month — porque os bugs mais difíceis são conceituais, não sintáticos.
Os 12 Livros
| Livro | Princípios Chave Aplicados |
|---|---|
| The Pragmatic Programmer | DRY, ortogonalidade, "tracer bullets" |
| Clean Code | Nomenclatura, tamanho de função, clareza de comentários |
| The Mythical Man-Month | Integridade conceitual, efeito do segundo sistema |
| Designing Data-Intensive Applications | Consistência de dados, tolerância a falhas, escalabilidade |
| A Philosophy of Software Design | Módulos profundos, ocultação de informação, complexidade |
| Refactoring | "Cheiros" de código, extrair método, encapsulamento |
| Working Effectively with Legacy Code | "Seams" (pontos de extensão), testes de caracterização, quebra de dependência |
| Domain-Driven Design | Linguagem ubíqua, contextos delimitados, agregados |
| Release It! | Padrões de estabilidade, timeouts, "bulkheads", disjuntores |
| Structure and Interpretation of Computer Programs | Abstração, recursão, abstração metalinguística |
| The Art of UNIX Programming | Modularidade, composibilidade, regra da menor surpresa |
| Extreme Programming Explained | YAGNI (Você Não Vai Precisar Disso), design simples, propriedade coletiva |
Quando Usar Esta Habilidade
- Use quando quiser feedback arquitetural além do que os linters fornecem
- Use antes de refatorações importantes para identificar dívida estrutural
- Use ao revisar código que "funciona, mas parece errado"
- Use ao se integrar a uma base de código para mapear rapidamente áreas de risco
- Use para revisões de design antes de iniciar um novo módulo ou serviço
Como Funciona
Brooks Lint aplica os princípios centrais de cada livro como uma lente de revisão:
- Detecção de "cheiros": Sinaliza violações de DRY, SRP, Lei de Deméter, etc.
- Análise de acoplamento: Identifica dependências fortes e camadas de abstração ausentes
- Crítica de nomenclatura: Aplica regras de nomenclatura do Clean Code a variáveis, métodos e classes
- Revisão de arquitetura: Verifica lacunas de consistência de dados e tolerância a falhas no estilo DDIA
- Padrões de estabilidade: Sinaliza timeouts ausentes, retentativas e disjuntores (Release It!)
- Pontuação de complexidade: Aplica métricas de complexidade do APOSD para identificar seções excessivamente projetadas
Instalação
# Install via Claude Code plugin marketplace
# Search: "brooks-lint" in Claude Code > Extensions
# Or install via NPX (Antigravity)
npx agentic-awesome-skills --claude
# Then invoke: @brooks-lint
Exemplos
Exemplo 1: Revisar uma Classe de Serviço
@brooks-lint review src/services/PaymentService.ts
Saída do Brooks Lint:
[Pragmatic Programmer] DRY violation: payment validation logic duplicated in 3 places
[Clean Code] Method processPayment() does 4 things — violates Single Responsibility
[Release It!] No timeout on external payment gateway call — risk of cascade failure
[DDIA] No idempotency key — retry on network error will double-charge
[APOSD] PaymentService knows too much about UserRepository — high coupling
Exemplo 2: Revisão Arquitetural de Base de Código Completa
@brooks-lint analyze the overall architecture of this codebase
Exemplo 3: Revisão Pré-Refatoração
@brooks-lint what are the biggest design smells in this module before I refactor it?
Categorias de Revisão
| Categoria | Livros Aplicados | O Que Identifica |
|---|---|---|
| DRY / Duplicação | PP, Refactoring | Código copiado e colado, lógica compartilhada não extraída |
| Nomenclatura | Clean Code, DDD | Nomes pouco claros, violações da linguagem de domínio |
| Acoplamento | APOSD, PP | Dependências fortes, interfaces ausentes |
| Estabilidade | Release It! | Timeouts ausentes, sem lógica de retentativa, sem disjuntores |
| Integridade de Dados | DDIA | Condições de corrida, operações não idempotentes |
| Complexidade | APOSD, SICP | Excesso de engenharia, abstração desnecessária |
| Dívida Legada | WELC | Código difícil de testar, "seams" ausentes |
| Clareza de Domínio | DDD, XP | Modelos anêmicos, contextos delimitados ausentes |
Melhores Práticas
…
Perguntas frequentes
Por que se chama 'Brooks Lint'?
O nome é uma homenagem a Fred Brooks, autor de 'A Mítica Máquina de Homem', que acreditava que os erros mais difíceis são conceituais, não de digitação.
Quais tipos de problemas ele encontra?
Ele encontra problemas como código duplicado (DRY), nomes ruins, dependências excessivas entre partes do código e falhas na arquitetura que podem causar problemas futuros.
Ele substitui um revisor humano?
Não, ele é uma ferramenta para ajudar. É bom para ter uma segunda opinião baseada em princípios estabelecidos, mas decisões importantes ainda devem ser feitas por humanos.
Detalhes
Descrição original do autor
AI code reviewer grounded in classic software engineering books for catching design smells, coupling issues, and architectural risks.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2447
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC