← ClaudeAtlas

ss-archivelisted

Merges an active OpenSpec change's delta specs into the authoritative openspec/specs/ tree and moves the change directory into the dated archive. Idempotent; the ss-create-pr skill calls it automatically before opening a PR. Use it once a delta is reviewed and ready to become part of the source of truth.
lbk-open/super-spec · ★ 1 · Code & Development · score 65
Install: claude install-skill lbk-open/super-spec
# Archive OpenSpec Change Merge OpenSpec delta specs from `openspec/changes/<change-id>/specs/` into `openspec/specs/`, then move the change directory to `openspec/changes/archive/YYYY-MM-DD-<change-id>/`. This skill is idempotent. The `ss-create-pr` skill calls it automatically before opening a pull request. ## Inputs Optional: a specific `<change-id>`, and/or `--dry-run` to validate and report without writing anything. ## Process ### Step 1: Discover the Active Change If a `<change-id>` was given, use it. Otherwise: 1. List directories under `openspec/changes/`, excluding `archive/`. 2. If none exist, report a no-op. 3. If exactly one exists, use it. 4. If multiple exist, ask the user which one to archive. If `openspec/changes/<change-id>/specs/` has no delta files, report a zero-spec no-op. ### Step 2: Sync With Git Check the working tree status. - If there are uncommitted changes: continue only if they are the intended OpenSpec delta/code changes for this branch. Stop if unrelated files are dirty — never stash, discard, or rewrite the user's work. - Don't rebase-pull while the worktree is dirty. - If the worktree is clean, sync first (fetch and rebase against upstream). - If the worktree is dirty but only contains the intended change, perform the archive merge and commit first, then rebase-pull only if needed before pushing. ### Step 3: Validate Delta Format For every `openspec/changes/<change-id>/specs/<cap>/spec.md`: - section headings are only ADDE