← Files LinchpinARCHIVED FILE
docs/migration-swap.md
1.94 KB · Oct 2, 2026 · 00:29 UTC
# Incumbent install-swap runbook This runbook is documentation only. The implementation worker does not delete, move, overwrite, or relink anything under the user's Codex, Claude, or Hermes directories. A user must confirm the external swap after inspecting the dry run. ## Required order 1. Run the repository helper in read-only mode: ```sh sh scripts/migration-swap.sh --dry-run ``` 2. From the primary repository, create a timestamped backup directory outside this plugin repository, then copy each incumbent target with metadata preserved. Do not use a backup directory that contains an unrelated tree. 3. Compare each backed-up skill with the exact plugin file before any removal. A mismatch is a stop condition, not permission to overwrite the incumbent. 4. Ask the owner to confirm the backup and equality report. Only the owner may perform the deletions and plugin registration in a fresh Codex session. 5. After registration, resolve the three shipped skills from the plugin and run a real single-PRD smoke test. Record the command output and plugin resolution. ## Targets and safety boundary The dry-run names these expected incumbent targets: - Codex skill links for the creator and coordinator, plus the retired executor; - Claude creator and retired executor directories; - Hermes coordinator directory; - generic non-PRD swarm directory, which must remain untouched. The plugin intentionally does not claim equality after its contract and runtime edits. Equality must be established by the owner against the staged source copies immediately before a live swap. The dry-run helper never writes backups or changes targets. ## Manual confirmation gate Until the owner supplies backup, equality, plugin-resolution, and real smoke-test evidence, the external install-swap status is `BLOCKED` with the resumable command `sh scripts/migration-swap.sh --dry-run`. No post-swap resolution or external deletion is claimed by this repository.
SHA-256: 95795e1ef0b8bac603a40d4ac0c15b684fd82f797c5d7b53bd66c969062852bb