guillotinelisted
Install: claude install-skill OutlineDriven/odin-claude-plugin
# Guillotine
Remove weight the product does not use. Interior cleanup needs proof, not sentiment.
## Contract
| Field | Bound contract |
|---|---|
| Trigger | A repository or subsystem needs dead, duplicate, superseded, or generated residue removed across more than one artifact class. |
| Authority | Reversible local: writes only VCS-tracked interior artifacts (edits and deletion); rollback is version control. No remote mutation. No history rewrite, data migration, credential change, or deletion of untracked or critical data. |
| Side effect | VCS-tracked artifacts are deleted or consolidated; live consumers are migrated to the surviving owner; generated surfaces are regenerated. The observable boundary is unchanged. |
| Done | Every removed artifact has a proof of non-necessity, no live route to the old path remains, the observable boundary passes, and the repository gate is green. |
## Inputs
- The subsystem or repository region to purge. Named explicitly or derived from the observed debt surface.
- The observable boundary: the commands, public routes, generated outputs, or user scenarios that must remain unchanged. Required; if no boundary can be named, the skill stops before editing.
- The repository-native gate command that defines "passes". Required, or discoverable in the repo.
## Procedure
1. Name the subsystem and its observable boundary. List the commands, public routes, generated outputs, or user scenarios that must remain unchanged. Done when: the subsystem