Remove or roll back the feature-flow kit from THIS project, safely and reversibly. Two scopes: "clean up leftovers" deletes build-time material (_kit/, *.template.*, CLAUDE.snippet.md, old .bootstrap-backup snapshots) while keeping the working config; "uninstall" returns the project to its pre-kit state from a backup (or git). Trigger when the user says "remove the kit", "uninstall the kit", "clean up the kit leftovers", "roll back bootstrap", or "/teardown". DO NOT TRIGGER to INSTALL/adapt t...
Scanned 9/5/2026
Install to Claude Code
npx -y skills add mik2win/foureyes --skill teardown --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Teardown?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/mik2win-teardown)More formats (shields.io, HTML) on the badges page.
---
name: teardown
disable-model-invocation: true
description: |
Remove or roll back the feature-flow kit from THIS project, safely and reversibly. Two
scopes: "clean up leftovers" deletes build-time material (_kit/, *.template.*,
CLAUDE.snippet.md, old .bootstrap-backup snapshots) while keeping the working config;
"uninstall" returns the project to its pre-kit state from a backup (or git). Trigger when
the user says "remove the kit", "uninstall the kit", "clean up the kit leftovers",
"roll back bootstrap", or "/teardown". DO NOT TRIGGER to INSTALL/adapt the kit (use
/bootstrap) or to pull a newer kit version or re-adapt it (use /update-kit) — this skill
only removes or rolls the kit back.
allowed-tools: Read, Glob, Grep, Bash, AskUserQuestion
effort: medium
---
# /teardown — clean up or uninstall the kit
You remove kit material from the project safely. Confirm the exact scope first, prefer
restoring from a backup over guessing, never touch app code, and report precisely what you
removed or restored.
Work top-to-bottom.
---
## Phase 0 — Detect what's installed and what backups exist
- **Kit present?** Look for `.claude/_kit/`, `.claude/PROJECT.md`, `.claude/.kit-manifest.json`,
kit skills under `.claude/skills/` (e.g. `bootstrap`, `discover`, `implement`), and the
`feature-flow-kit:begin/end` block in `CLAUDE.md`. (`.claude/.kit-incoming/`, if present, is a
leftover `/update-kit` staging dir — safe to remove.)
- **Backups?**
- Bootstrap snapshots: `.claude/.bootstrap-backup/<ts>/` (with `created.txt`).
- Pre-copy backup the user made before copying the kit in: e.g. `.claude.bak/`,
`CLAUDE.md.bak` (README "Quick start" step).
- **Git?** Run `git rev-parse --is-inside-work-tree` — if tracked, git is the safest restore
path; surface it as an option.
Report what you found before asking anything.
## Phase 1 — Choose scope (ask)
Ask via `AskUserQuestion`:
- **Clean up leftovers** (default) — delete build-time material, keep the working config.
→ Phase 2.
- **Uninstall the kit** — return the project to its pre-kit state. → Phase 3.
## Phase 2 — Clean up leftovers
Show the exact list, confirm, then remove only build-time material:
`.claude/_kit`, `.claude/*.template.*`, `.claude/CLAUDE.snippet.md`,
`.claude/settings.stop-gate.example.json`, `.claude/.kit-incoming` (a leftover `/update-kit`
staging dir), and old `.claude/.bootstrap-backup/*` snapshots. **Keep** `.claude/.kit-manifest.json`
— it's working state `/update-kit` needs for the next version bump (remove it only on a full uninstall).
Do **not** touch the working config: `.claude/rules/`, `.claude/skills/`, `.claude/agents/`,
`.claude/hooks/`, `.claude/commands/`, `.claude/PROJECT.md`, `.claude/settings.json`,
`CLAUDE.md`. And **never** touch project-owned content the kit's skills helped *author* but does
not own — `CONTEXT.md`, `docs/adr/`, and the issues under the backlog: that's the project's
domain knowledge and work, like app code. Report what was removed.
## Phase 3 — Uninstall (restore the pre-kit state)
Pick the safest available path, in this order:
1. **Pre-copy backup present** (`.claude.bak/`, `CLAUDE.md.bak`) → confirm, then restore it
wholesale: replace `.claude/` with the backup and `CLAUDE.md` with `CLAUDE.md.bak`. Offer
to delete the `.bak` copies once the user confirms the project looks right.
2. **Under git** → don't delete blindly; show the user the commands and let them run them:
- tracked files: `git checkout -- .claude CLAUDE.md`
- preview untracked kit files: `git clean -nd .claude` → then `git clean -fd .claude` to remove.
3. **No backup, no git** → best-effort manual removal. Confirm the list first, then delete
kit-installed paths: `.claude/_kit`, the kit skills/agents/hooks/commands, `rules/_generic/`
and installed pack rules, `.claude/PROJECT.md`, `.claude/settings.json`, `*.template.*`,
`CLAUDE.snippet.md`, `.claude/.kit-manifest.json`, `.claude/.kit-incoming`, `.bootstrap-backup/`;
and strip the `feature-flow-kit:begin…end` block
from `CLAUDE.md` (delete the file if the kit created it and it's now empty). Then strip the
matching block from `.gitignore`: since this path has no backup, **copy `.gitignore` aside first
(or show the diff and confirm)**, remove only the delimited block, and leave the rest intact.
**Warn the user:** without a backup, project-owned files that shared a name with kit files
can't be told apart — review the list before confirming.
Report what was restored or removed, and what (if anything) the user should check by hand.
---
## Hard rules
- **Confirm before deleting.** Always print the exact path list and get an explicit yes.
- **Never touch app code** — or project-owned docs the kit authored but doesn't own
(`CONTEXT.md`, `docs/adr/`, backlog issues). Only `.claude/`, the kit's `CLAUDE.md` block, and
the kit's delimited block in `.gitignore` (the rest of `.gitignore` is the project's — leave it).
- **Prefer restore over guess.** Use a backup or git first; manual removal is the last resort
and is always flagged as best-effort.
- **Idempotent.** Re-running after a partial teardown just removes whatever still remains.
## See also
- **`/bootstrap`** — install and adapt the kit (the inverse of teardown).
- **`/update-kit`** — pull a newer kit version instead of removing; needs `.kit-manifest.json`,
which "clean up leftovers" deliberately keeps.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!