← ClaudeAtlas

prunelisted

Use when asked to clean up, remove unused, or delete dead code. Finds unreferenced symbols, dedupes constants, and removes drift. Requires user approval before editing. Do not use for comments.
ChloeVPin/chloe-skills · ★ 0 · AI & Automation · score 71
Install: claude install-skill ChloeVPin/chloe-skills
# Prune Rule zero: treat every declaration as **live** until you have proven it safe to remove. Find candidates in four categories. Verify each candidate across the whole repository, code and tests alike. Report all findings for approval before editing. ## Categories 1. **Confirmed dead**: symbols, constants, tokens, or barrel re-exports with zero references. 2. **Dedupe**: the same constant, string, or type literal declared verbatim in two or more places. 3. **Drift**: a magic literal that duplicates an existing named constant. 4. **Arbitrary limits**: caps, thresholds, or timeouts guarding against situations users cannot reach. Quantify the real limit before recommending removal. ## Workflow checklist Copy this checklist and track your progress: ``` Prune Progress: - [ ] 1. Build the candidate list (tooling + search) - [ ] 2. Verify every candidate repo-wide - [ ] 3. Classify: safe to remove / arbitrary but intentional - [ ] 4. Present the findings table - [ ] 5. Ask which findings to apply - [ ] 6. Apply approved changes and update tests - [ ] 7. Run typecheck, lint, and tests ``` ## 1. Build the candidate list Use existing tooling. Do not install new tools without asking the user. For JavaScript and TypeScript projects: - If the project already uses **knip**, **ts-prune**, or **depcheck**, use their output as the candidate list. For example: `npx knip`. - Otherwise, check whether TypeScript flags unused locals (`noUnusedLocals`, `noUnusedParamet