From harness
Use after shipping a feature commit-set. Refactor as standing practice, not occasional cleanup. Counter-pressure to the agent failure mode of adding without deleting.
How this skill is triggered — by the user, by Claude, or both
Slash command
/harness:continuous-refactorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Agents reflexively *add* and rarely *delete*. Without explicit
Agents reflexively add and rarely delete. Without explicit pressure to remove, projects calcify in weeks. Refactor passes are standing practice, not occasional cleanup.
Greenfield projects start lower; mature projects trend higher. Aim for refactor work to be a meaningful share of total commits over time — not a footnote.
| Concern | TS / JS | Python equivalent |
|---|---|---|
| Dead code | knip | vulture |
| Cross-file duplication | jscpd | jscpd . (works on Python too via npx) |
| AST pattern rules | ast-grep | ast-grep or semgrep |
| Linting | eslint | ruff (extend rules as patterns formalize) |
| Cyclomatic complexity | (varies) | radon |
These belong in the refactor pass, not the regular dev loop. Ruff / eslint baseline rules already catch most line-level slop on every commit; the refactor pass is for what they don't see.
The refactor commit-set ships separately from feature work, deletes
more than it adds (typically), and the test suite stays green
throughout. Over time, the share of refactor: commits in the log
trends up — that's the signal that slop reduction is keeping pace
with feature work.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub jackjconner/agent-harness --plugin harness