Skip to content
← Back to all skills
Developmentsafecommunity

brooks-lint

AI code reviewer grounded in classic software engineering books for catching design smells, coupling issues, and architectural risks.

Brooks Lint

Overview

Brooks Lint is a Claude Code skill that reviews your code through the lens of 12 classic software engineering books. Instead of checking style rules, it asks: "What would the authors of The Pragmatic Programmer, Clean Code, and Designing Data-Intensive Applications say about this code?"

It synthesizes the principles from landmark engineering books into actionable, structured feedback — catching design smells, tight coupling, missing abstractions, and architectural risks that linters and AI tools typically miss.

Named after Fred Brooks, author of The Mythical Man-Month — because the hardest bugs are conceptual, not syntactic.

The 12 Books

BookKey Principles Applied
The Pragmatic ProgrammerDRY, orthogonality, tracer bullets
Clean CodeNaming, function size, comment clarity
The Mythical Man-MonthConceptual integrity, second-system effect
Designing Data-Intensive ApplicationsData consistency, fault tolerance, scalability
A Philosophy of Software DesignDeep modules, information hiding, complexity
RefactoringCode smells, extract method, encapsulation
Working Effectively with Legacy CodeSeams, characterization tests, dependency breaking
Domain-Driven DesignUbiquitous language, bounded contexts, aggregates
Release It!Stability patterns, timeouts, bulkheads, circuit breakers
Structure and Interpretation of Computer ProgramsAbstraction, recursion, metalinguistic abstraction
The Art of UNIX ProgrammingModularity, composability, rule of least surprise
Extreme Programming ExplainedYAGNI, simple design, collective ownership

When to Use This Skill

  • Use when you want architectural feedback beyond what linters provide
  • Use before major refactors to identify structural debt
  • Use when reviewing code that "works but feels wrong"
  • Use when onboarding to a codebase to quickly map risk areas
  • Use for design reviews before starting a new module or service

How It Works

Brooks Lint applies each book's core principles as a review lens:

  1. Smell detection: Flags violations of DRY, SRP, Law of Demeter, etc.
  2. Coupling analysis: Identifies tight dependencies and missing abstraction layers
  3. Naming critique: Applies Clean Code naming rules to variables, methods, classes
  4. Architecture review: Checks for DDIA-style data consistency and fault tolerance gaps
  5. Stability patterns: Flags missing timeouts, retries, and circuit breakers (Release It!)
  6. Complexity scoring: Applies APOSD complexity metrics to identify over-engineered sections

Installation

# Install via Claude Code plugin marketplace
# Search: "brooks-lint" in Claude Code > Extensions

# Or install via NPX (Antigravity)
npx antigravity-awesome-skills --claude
# Then invoke: @brooks-lint

Examples

Example 1: Review a Service Class

@brooks-lint review src/services/PaymentService.ts

Brooks Lint output:

[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

Example 2: Full Codebase Architecture Review

@brooks-lint analyze the overall architecture of this codebase

Example 3: Pre-Refactor Review

@brooks-lint what are the biggest design smells in this module before I refactor it?

Review Categories

CategoryBooks AppliedWhat It Catches
DRY / DuplicationPP, RefactoringCopy-paste code, shared logic not extracted
NamingClean Code, DDDUnclear names, domain language violations
CouplingAPOSD, PPTight dependencies, missing interfaces
StabilityRelease It!Missing timeouts, no retry logic, no circuit breakers
Data IntegrityDDIARace conditions, non-idempotent operations
ComplexityAPOSD, SICPOver-engineering, unnecessary abstraction
Legacy DebtWELCHard-to-test code, missing seams
Domain ClarityDDD, XPAnemic models, missing bounded contexts

Best Practices

  • Run @brooks-lint after writing new service layers or data pipelines
  • Combine with @logic-lens for full coverage: logic bugs + design smells
  • Use @brooks-lint analyze architecture weekly on growing codebases
  • Focus on CRITICAL and HIGH findings first — LOW findings are style suggestions

Related Skills

  • @logic-lens — Complementary: catches logic bugs; brooks-lint catches design issues
  • @security-auditor — Specialized security-only deep scan
  • @lint-and-validate — Style/syntax linting to run alongside design review

Additional Resources

Limitations

Use this skill only when the task clearly matches the scope described above (design review and architectural analysis). Brooks Lint applies AI-powered analysis grounded in established engineering principles. It should complement — not replace — human design review for production-critical decisions. Results reflect the principles of the 12 source books and may not apply to all architectural styles or domains.

— Field Manual

The 1,441 skills, demystified in one PDF.

A free editorial guide we wrote for the Skills Atlas: taxonomy, the 25 must-know skills, anti-patterns, and learning paths by profile.

  • 70+ pages, table of contents, ready to print.
  • Sent by email — link valid 7 days.
  • You can unsubscribe in one click anytime.

No spam. We never share your email. Unsubscribe in one click.