--- name: skill-housekeeping description: Cross-project health check skill — runs git-status-report, unreflected-logs, validate-skill, and checks knowledge pipeline state type: reference --- # /housekeeping Skill ## Purpose Cross-project health check that gathers information and suggests actions. Runs at the start of a session or periodically to understand what needs attention across all projects. ## Usage ``` /housekeeping ``` No arguments. Information only — never takes action. ## How It Works Runs five checks via bang-commands and tool calls: 1. **`git-status-report ~/dev/claude`** — Finds dirty repos, uncommitted changes, unpushed commits 2. **`unreflected-logs ~/dev/claude`** — Finds session logs not yet processed by `/reflect-logs` 3. **`validate-skill ~/dev/claude/projects/custom-claude-skills/skills`** — Validates all SKILL.md files 4. **Knowledge pipeline state** — Reads `.distill-state.json` and compares stored SHAs against current HEADs to determine if `/reflect-logs` or `/distill-best-practices` would be productive 5. **Structured report** — Summarises findings and produces prioritised action suggestions ## Output Structured report with sections: - Git Status Summary (dirty/clean repos) - Unreflected Logs (counts and date ranges per project) - Skill Validation (errors/warnings per skill) - Knowledge Pipeline Status (reflect-logs and distill recommendations) - Suggested Actions (prioritised: should address soon / worth doing / informational) ## Dependencies - `git-status-report` script (in `~/sbin`, source: `small-scripts/scripts/git-status-report`) - `unreflected-logs` script (in `~/sbin`, source: `small-scripts/scripts/unreflected-logs`) - `validate-skill` script (in `~/sbin`, source: `small-scripts/scripts/validate-skill`) - `best-practices/.distill-state.json` in claude-foundations (for distill check) ## Gotchas - Bang-commands use `~/` paths — works in Paul's environment but would need adjustment for other users or sandboxed environments (validator warns about this, acceptable) - The distill state check requires comparing git SHAs, which means projects must be git repos for that check to work