← ClaudeAtlas

migratelisted

Migrate .claude/ onto the layout this plugin version expects — move task docs into their feature directory, give pre-3.0 docs an id, append full records where an old one is short, strip leftover HTML comments. Dry-run by default; --fix asks before it writes anything. Run after upgrading the Clio plugin, or when validate.sh keeps naming the same old records.
nhhthong/clio · ★ 2 · Web & Frontend · score 78
Install: claude install-skill nhhthong/clio
**Run only when the user asked for it, this turn** — by slash command, or in plain words ("tidy up .claude", "migrate the ledgers", "dọn lại .claude"). None of these is a trigger: Clio's drift nudge · `validate.sh` output you saw while doing something else · a plan you made earlier in the session. Unsure → ask in one line, don't run. Mode (may be empty): $ARGUMENTS — anything other than `--fix` is a **dry run**. This is the only Clio skill that writes across the whole memory layer, so it is also the only one with a rollback story. Three rules, none of them negotiable: 1. **Never edit, reorder or delete a line in `index.jsonl` or `debt.jsonl`.** Migration is an **append** of a full record under the same key; readers take the last line per key. This is the same rule `/clio:memo` follows, and it is what makes the ledgers history rather than state. 2. **Never invent content.** You may move a file, append a record, add an empty heading and strip a comment. Anything that needs a *fact* you do not have — which `req` a doc serves, who owes an answer on a ⚠️ row, what a missing `## Testing Done` should say — is reported and asked, never filled in. A memory layer with invented facts is worse than one with gaps. 3. **Never re-implement `validate.sh`.** It is the diagnosis engine; this skill runs it and acts on what it says. ## 1. Preconditions ```bash [ -d .claude/clio ] || { echo "no .claude/clio — run /clio:setup first"; exit 1; } cat .claude/clio/VERSION 2>/dev