hotspots
Installation
SKILL.md
STARTER_CHARACTER = π₯
Hotspot analysis ranks files by change frequency Γ complexity. Code that is both complicated and changed often is where refactoring pays; complicated but stable code is not β "if it never changes, it's not costing us money." The scripts compute every number deterministically; your job is scoping, validation, and interpretation. A hotspot is a pointer to where to look, never a diagnosis.
If the user wants to check whether a past refactoring paid off and hotspots/data/mine.json exists in the repo, jump to VERIFY. Otherwise run the steps in order.
1. SCOPE
Decide and record:
- Window: default 12 months; use "since last major release" if the user names one. Under ~6 months of history, warn that rankings are unreliable.
- Target: repo root, or the subtree the user cares about in a monorepo.
- Extra excludes: skim the tree for generated/vendored content the defaults miss (see default list in
scripts/mine.py). Keep test files in β a test file as top hotspot is a real and common finding. - History quality: if most commits are PR squashes, note that coupling signal is weakened.
Done when window, target, and extra excludes are chosen and any history caveats are noted for the report header.