keel-tidylisted
Install: claude install-skill muratsilahtaroglu/claude-code-starter-kit
# /keel-tidy — the §3.10 sweep: no file left unanswered
When: layout drift is felt (loose files at the repo root, stray one-off scripts, logs/caches in the
tree, `scratch/` overflowing), at a phase boundary, or every ~5 sessions as hygiene. This is the
ritual arm of rules.md §3.10 — "no file of unclear purpose is left in the main source tree". It is
NOT `/keel-distill`'s job: distill curates the MEMORY files (§9 caps), tidy curates the FILE TREE
(§3 layout) — different axis, different risk, and a file sweep bolted onto a cap rotation would
derail both.
## 1. Sweep — collect candidates deterministically
- **Repo-root files outside the discipline scaffold** (CLAUDE.md · rules.md · HANDOVER/LESSONS/TASKS/
PLAN · README/LICENSE/CONTRIBUTING · Makefile/pyproject/lockfiles · dotfiles) — §3.10: the root
holds scaffold only; application code lives under `src/`.
- **Runtime junk anywhere:** `*.log` · `*.tmp` · `__pycache__/` · `.pytest_cache/` · editor swap
files · stray outputs sitting outside `reports/`.
- **`scratch/` items** untouched for weeks (`git log -1 --format=%cs -- <f>`) or missing their 1-line
purpose comment.
- **Source files nothing references:** not imported (grep the module name across `src/` + `tests/`),
absent from Makefile/CI, not collected by the test runner, no `docs/architecture.md` row.
**Off-limits (other jurisdictions):** memory files + `docs/adr/` (distill / the owner) · `reports/`
(the §2.8 evidence trail — prune only on an explicit ask) · `res