What problem does it solve? Large documentation trees decay into hundreds of unstructured, overlapping, and contradictory files that nobody can navigate or trust. Reorganizing them wholesale is risky: moves break links, rewrites destroy git history, unverified legacy claims get carried forward as fresh truth, and multi-day work is lost when a session is compacted. This Skill runs a phased, resumable migration whose terminal deliverable is documentation someone can trust, not merely a tidy tree. ## Core Features & Use Cases - Resumable state machine: All migration state lives in a committed state file (never the todo list), so any session can resume by reading the current phase, the n/total count, and the single in-progress item. - History-preserving moves: Files move via git mv in rename-only commits with recorded old-to-new edges, keeping git log --follow intact and answering for referrers nobody can edit. - Evidence and drain gates: Claims carried forward require verified evidence=<path>:<line> citations, and a legacy file is deleted only when its drain report shows residual == 0 and every processedto target resolves. - Optional tool extension: A config-gated ledger extension binds each gate to a <docs.tool> subcommand (link-check, freeze, trust, drain, record) when the project configures docs.tool. - Use Case: A repository has 300 files under docs/ with no structure and unknown accuracy. The skill inventories and classifies every path, freezes build-pinned files, moves documents in reviewable batches, extracts content one section per commit, and only deletes legacy files after a verifiable drain report. ## Quick Start Ask the agent to migrate the docs directory into the canonical documentation tree, resuming from the migration state file if one exists.