adopt-spec
Installation
SKILL.md
Start a typed CLAUDE.md.spec.ts from an existing hand-written CLAUDE.md (or AGENTS.md). This is the non-destructive adoption path — you keep your existing instruction file as the starting point and get type safety going forward.
Adoption rules
Adoption is the safe, faithful on-ramp — never an upgrade in disguise. These are non-negotiable:
- Faithful. Preserve every rule, command, key file, and prose section as-is. Invent nothing — the spec must compile back to ~the user's existing file.
- Non-destructive. Never edit the original
CLAUDE.md/AGENTS.md. Only write the new.spec.ts. Never auto-compileover the file — switching it to spec-managed is a separate, explicit step the user runs with a diff to review. - Don't escalate enforcement. Keep
guidance()asguidance(). Upgrading toenforce()has a cost (config/plugins, possible false positives) and is a separate opt-in step — thestrengthenskill. Adoption is not turning on strict /workflowgating. - Reversible.
vigiles eject <file>hands the file back as plain hand-owned markdown anytime — it's never a one-way door. Tell the user this. - Ask before writing. Present the generated spec and a conversion summary first; write only on the user's yes.
- A lighter touch exists. For no spec at all, inline
<!-- vigiles:enforce ... -->comments are verified byvigiles lintwith the same engine.
Instructions
Step 1: Read the Existing File
Read the target instruction file (default: CLAUDE.md in the repo root). If the user specified a path, use that.