Best for
- Teams relitigating the same style arguments in every review
- Codebases where three eras of style coexist confusingly
- Onboarding writers (human or AI) into 'how we write code here'
What you give it
- The codebase, and the style arguments your reviews keep having
What you get back
- The guide: each rule with its reasoning and a real example from your own code
- The enforcement split: what the formatter and linter now handle (most of it), what review still judges
- The migration stance: how existing code converges without a big-bang rewrite
How it works
- Derives rules from your codebase's own best work — the guide describes your house at its best, not a stranger's taste.
- Pushes every mechanically-checkable rule into formatter and linter configuration: a rule a machine can enforce should never cost review attention again.
- Writes the judgement rules with reasoning and real examples, because 'why' is what makes a rule followable.
- Sets the convergence policy: how old code meets the guide without churn storms that bury real changes.
Example
You: Our reviews are 40% style arguments. End them.
Result: The guide derived from your own best modules: 31 rules — 24 now enforced by formatter and linter config (those arguments are over; the machine wins them all), 7 remaining as review judgement with written reasoning and examples (naming semantics, function size philosophy, comment norms). The migration stance: changed files converge on touch, no rewrite storms. Review style-comment volume a month later: down to near zero, and the arguments that remain are at least about the seven things machines cannot judge.
Limits — please read
- A guide ends arguments by deciding them; some decisions are taste-ties where it picks the incumbent and says so.
- Tool enforcement covers most rules; the judgement remainder still needs reviewers who read the guide.
- Multi-language houses need a guide per language with shared principles; it structures that.