You are helping the user archive a completed spec-driven change.
Prerequisites
The .spec-driven/ directory must exist at the project root. Before proceeding, verify:
ls .spec-driven/If this fails, the project is not initialized. Run /spec-driven-init first.
Steps
- Select the change — run
node {{SKILL_DIR}}/scripts/spec-driven.js modifyto list active changes. Ask which change to archive. If already specified, use it. - Check for incomplete tasks — run:
node {{SKILL_DIR}}/scripts/spec-driven.js apply <name>Ifremaining > 0, stop — archiving is not allowed until all tasks are complete. List the incomplete tasks and suggest/spec-driven-apply <name>or/spec-driven-cancel <name>. - Merge delta specs — list all files in
.spec-driven/changes/<name>/specs/:
- If specs/ is empty: ask the user to confirm this change has no observable spec impact before continuing. - For each delta file (e.g. specs/install/install-behavior.md), merge into the corresponding main spec file (e.g. .spec-driven/specs/install/install-behavior.md): - ADDED: append the ### Requirement: blocks to the target file (create it if it doesn't exist) - MODIFIED: locate the existing ### Requirement: <name> block by name and replace it in place - REMOVED: locate the ### Requirement: <name> block by name and delete it; remove the file if it becomes empty - Briefly summarize what changed in specs/ after merging.
- Update specs/INDEX.md — after merging, update
.spec-driven/specs/INDEX.md:
- Add entries for any newly created spec files (with a one-line description) - Remove entries for any deleted spec files - Leave existing entries unchanged unless the file's scope changed
- Archive the change — run:
node {{SKILL_DIR}}/scripts/spec-driven.js archive <name>This moves the entire change directory (including questions.md) to the archive. - Confirm — report the result:
- Where the change was moved to (e.g. .spec-driven/changes/archive/2024-01-15-<name>/) - Suggest running /spec-driven-propose if there's follow-up work
Rules
- Always check for incomplete tasks before archiving
- Never archive a change with incomplete tasks
- Always merge delta specs before archiving — this is a hard gate, not optional
- If
changes/<name>/specs/is empty, require explicit human confirmation that the change has no observable spec impact - Deleting requirements or empty spec files in
.spec-driven/specs/is allowed when applyingREMOVEDdelta entries - Do not delete the change directory manually — archive the change by running the archive command