undo-bootstraplisted
Install: claude install-skill thettwe/nyann
# undo-bootstrap
Wraps `bin/undo-bootstrap.sh`. Read this end-to-end before invoking;
the refusal modes carry real meaning.
## 1. Locate the BootRecord
Boot records live under `<repo>/memory/.nyann/bootstraps/<ISO-ts>/`.
Each contains a `manifest.json` (the BootRecord) and a `pre-state/`
directory with original file bytes.
By default the script picks the newest manifest. When the repo has
multiple records (typical: one bootstrap + one or more retrofits),
**list them and ask** which to undo:
```bash
ls -1t memory/.nyann/bootstraps/*/manifest.json | head -10
```
Show the list with `created_at`, `source`, and a one-line summary
(extract via `jq -r '.created_at + " " + .source + " (" + (.actions | length | tostring) + " actions)"'`).
Pass the chosen one via `--manifest <path>`.
## 2. Always preview first
Run with `--dry-run` and surface the JSON to the user:
```bash
bin/undo-bootstrap.sh --target "$PWD" --dry-run
```
Walk the four arrays in the result: `restored`, `deleted`,
`branches_dropped`, `defaults_renamed_back`. Read `skipped[]` carefully
and explain each entry — they're the load-bearing communication.
For ambiguous cases (skipped entries with overrides available),
**use `AskUserQuestion`**:
```json
{
"questions": [
{
"question": "Some files were modified after bootstrap finished. Override and overwrite local edits?",
"header": "Force",
"multiSelect": false,
"options": [
{ "label": "No (Recommended)", "description": "Skip