name: garbage-collection description: Use this skill on Fridays, before tagging a release, or when the user mentions "cleanup", "tech debt", "AI slop", "GC", or "garbage collection". Runs the deterministic linters, structural tests, and doc-drift scans, then proposes the top-3 highest-leverage cleanups (with risk/cost/benefit) — does NOT auto-merge. This is the solo-dev shrunk version of OpenAI's Friday garbage-collection ritual. allowed-tools: Read, Glob, Grep, Bash(npm run:), Bash(pytest:), Bash(ruff:), Bash(git status:), Bash(git diff:), Bash(git log:), Bash(gh pr create:), Bash(node .claude/skills/garbage-collection/scripts/gc-classify.mjs:) suggested-turns: 15
Steps
-
Capture baseline. Run the full suite and save the output:
- {{#if isPython}}
python -m harness.structural_test{{else}}npm run harness:check{{/if}} - {{#if isPython}}
ruff check . --output-format json{{else}}npm run lint -- --format json{{/if}} - Save to
.harness/gc-<date>.json.
- {{#if isPython}}
-
Classify violations. For each finding:
- Layer violation → fix.
- Duplicate utility (same function body in 2+ places) → propose
extraction to
src/shared/. - Dead import → remove.
- Doc drift (a path in
.harness/docs/architecture.mdno longer exists) → invokedoc-drift-scanskill. - Hand-rolled helper matching a shared utility → propose replacement.
-
Score each candidate fix on three 1–5 dimensions via the side-car script (replaces the previous LLM-scored turn — deterministic and auditable):
node .claude/skills/garbage-collection/scripts/gc-classify.mjs \ --baseline .harness/gc-<date>.json \ --history .harness/gc-history.jsonThe script applies the mechanical rubric:
risk = 1 + ceil(touched/3),cost = 1 + ceil(lines/30),benefit = recurrenceCount(class). Read the JSONcandidates[]sorted by(benefit desc, cost asc, risk asc). -
Propose ONLY the top 3 cleanups (solo-dev cap; OpenAI does dozens, you do 3). Open them as separate PRs with
gh pr create --label gc --draft. -
Append a row to
.harness/gc-history.json:{ "date": "...", "violations_found": N, "fixes_opened": M, "total_tokens": K }. -
Stop. Do not merge anything. Human review required at solo scale.
Output contract
### GC run: <date>
### Violations found: <N>
### Top 3 fixes proposed:
1. <slug> — risk:<1-5> cost:<1-5> benefit:<1-5> — PR #<n>
2. ...
3. ...
### Fixes deferred (not in top 3): <count>
Anti-patterns
- Don't open more than 3 PRs in one run. The cap is a feature, not a bug.
- Don't auto-merge — the entire point of solo-scale GC is human review.
- Don't suppress findings that score low; record them in
.harness/gc-history.jsonso trends surface over time.
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.