review-changes

Installation
SKILL.md

Review Changes

Two axes, never merged. Code can pass one and fail the other, and merging lets one mask the other.

Inputs

  • The diff: no argument -> working tree vs the default diff base; file/function -> that target and its impact; branch -> vs main/master; PR number -> the checked-out PR branch or local diff.
  • .safe-code/context/code-standards.md (documented repo standards).
  • The active spec, if any: .safe-code/context/feature-specs/<NN>-*.md with status: in-progress (or the one the user names).
  • Graph accelerators when a codegraph index is ready (codegraph sync first): codegraph impact <symbol> for high-risk changes, codegraph callers <symbol> for changed signatures, codegraph affected <changed files> for the tests the diff reaches (over-reports — the safe side). Without them: git diff, rg, direct reads. Read full source only for changed or high-impact files.

Axis 1 — Standards

Does the change follow the documented standards, and does it avoid the smell baseline?

Smell baseline (Fowler), always carried against the diff: Mysterious Name · Duplicated Code · Feature Envy · Data Clumps · Primitive Obsession · Repeated Switches · Shotgun Surgery · Divergent Change · Speculative Generality · Message Chains · Middle Man · Refused Bequest. Plus two structural smells: a pure helper living in a heavy module drags that module into every importer (move it to a leaf module); two branches that check the same state with near-identical conditions leave a gap between them.

Binding rules: a documented repo standard always overrides the baseline; every smell is a labelled judgement call ("possible Feature Envy"), never a hard violation; skip anything tooling (lint, type-check, formatter) already enforces.

Installs
7
GitHub Stars
4
First Seen
May 9, 2026