openspec-archive-change
Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
- License 许可
- MIT
- 所属仓库
- psacc/omnisess
- 最近更新
- 2026-11-05
- Stars
- ★ 1
- Forks
- 1
01 前言 Front Matter
- name
- openspec-archive-change
- license
- MIT
- metadata
- { "author": "openspec", "version": "1.0", "generatedBy": "1.1.1" }
- description
- Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
- compatibility
- Requires openspec CLI.
02 资源文件 19
- 参考文档motion/cursor-field.md1.8 KB
- 参考文档motion/grand-tour.md2.1 KB
- 参考文档motion/haunted-machine.md1.8 KB
- 参考文档motion/held-breath.md1.8 KB
- 参考文档motion/kinetic-type.md1.8 KB
- 参考文档motion/liquid-material.md2.0 KB
- 参考文档motion/one-surface.md1.9 KB
- 参考文档motion/real-weight.md1.8 KB
- 参考文档reference/component-sources.md4.4 KB
- 参考文档reference/design-research.md12.3 KB
- 参考文档variants/abyss.md1.4 KB
- 参考文档variants/arctic.md1.3 KB
- 参考文档variants/ember.md1.3 KB
- 参考文档variants/patina.md1.4 KB
- 参考文档variants/signal.md1.4 KB
- 参考文档variants/spatial.md1.4 KB
- 参考文档variants/substrate.md1.4 KB
- 参考文档variants/verdant.md1.4 KB
- 参考文档variants/void.md1.4 KB
03 SKILL.md 正文
Archive a completed change in the experimental workflow.
Input: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
Steps
-
If no change name provided, prompt for selection
Run
openspec list --jsonto get available changes. Use the AskUserQuestion tool to let the user select.Show only active changes (not already archived). Include the schema used for each change if available.
IMPORTANT: Do NOT guess or auto-select a change. Always let the user choose.
-
Check artifact completion status
Run
openspec status --change "<name>" --jsonto check artifact completion.Parse the JSON to understand:
schemaName: The workflow being usedartifacts: List of artifacts with their status (doneor other)
If any artifacts are not
done:- Display warning listing incomplete artifacts
- Use AskUserQuestion tool to confirm user wants to proceed
- Proceed if user confirms
-
Check task completion status
Read the tasks file (typically
tasks.md) to check for incomplete tasks.Count tasks marked with
- [ ](incomplete) vs- [x](complete).If incomplete tasks found:
- Display warning showing count of incomplete tasks
- Use AskUserQuestion tool to confirm user wants to proceed
- Proceed if user confirms
If no tasks file exists: Proceed without task-related warning.
-
Assess delta spec sync state
Check for delta specs at
openspec/changes/<name>/specs/. If none exist, proceed without sync prompt.If delta specs exist:
- Compare each delta spec with its corresponding main spec at
openspec/specs/<capability>/spec.md - Determine what changes would be applied (adds, modifications, removals, renames)
- Show a combined summary before prompting
Prompt options:
- If changes needed: "Sync now (recommended)", "Archive without syncing"
- If already synced: "Archive now", "Sync anyway", "Cancel"
If user chooses sync, execute /opsx:sync logic (use the openspec-sync-specs skill). Proceed to archive regardless of choice.
- Compare each delta spec with its corresponding main spec at
-
Perform the archive
Create the archive directory if it doesn't exist:
mkdir -p openspec/changes/archiveGenerate target name using current date:
YYYY-MM-DD-<change-name>Check if target already exists:
- If yes: Fail with error, suggest renaming existing archive or using different date
- If no: Move the change directory to archive
mv openspec/changes/<name> openspec/changes/archive/YYYY-MM-DD-<name> -
Display summary
Show archive completion summary including:
- Change name
- Schema that was used
- Archive location
- Whether specs were synced (if applicable)
- Note about any warnings (incomplete artifacts/tasks)
Output On Success
## Archive Complete
**Change:** <change-name>
**Schema:** <schema-name>
**Archived to:** openspec/changes/archive/YYYY-MM-DD-<name>/
**Specs:** ✓ Synced to main specs (or "No delta specs" or "Sync skipped")
All artifacts complete. All tasks complete.
Guardrails
- Always prompt for change selection if not provided
- Use artifact graph (openspec status --json) for completion checking
- Don't block archive on warnings - just inform and confirm
- Preserve .openspec.yaml when moving to archive (it moves with the directory)
- Show clear summary of what happened
- If sync is requested, use openspec-sync-specs approach (agent-driven)
- If delta specs exist, always run the sync assessment and show the combined summary before prompting
04 同仓库更多 Skills
stats
Show tool-call counts and file-I/O activity from the transcript SQLite index. Aggregates Read/Write/Edit file paths, line counts, token usage, and error flags across a time window (default 7d) or for a single session. Use this skill when asked which tools were used most, which files saw the most activity, how many tokens were spent, or to inspect a single session's tool-call summary. Trigger phrases: "session stats", "tool stats", "what tools did I use", "tool usage", "files touched", "token usage", "stats for last week", "summarize tool calls", "session tool breakdown".
skills-audit
Classify agent skills by usage tier (Keep / Borderline / Archive / Unknown) using Claude Code session JSONL transcripts as the signal source. Read-only — never modifies skills, sessions, or any file on disk. Use this skill when asked to audit skills, find unused skills, classify skills, check which skills get used, produce a skill usage report, or prune skills. Trigger phrases: "audit skills", "find unused skills", "classify skills", "which skills do I use", "skill usage report", "prune skills", "what skills are unused", "skills I can remove", "trim my skill list". Output is a recommendation (Keep / Borderline / Archive) — acting on it is always a manual step.
show
Show the full detail of a single AI coding session by its ID. Session IDs are in the format <tool>:<id> (e.g., claude:5c3f2742, cursor:a1b2c3d4). Use this skill when asked to show a specific session, inspect a session, read a session, or view the messages in a session. Trigger phrases: "show session", "open session", "inspect session", "read session", "show me claude:5c3f2742", "view session details", "what happened in session".
search
Full-text search across all AI coding sessions (Claude Code, Cursor, Codex, GitHub Copilot CLI). Use this skill when asked to search sessions, find a conversation about a topic, look up what was discussed in past sessions, or find sessions mentioning specific code or concepts. Trigger phrases: "search sessions", "find sessions about", "look up in sessions", "what did I discuss about", "find conversation about", "search my history".
recap
Produce a structured markdown briefing of AI coding sessions for a given time window. Groups sessions by project and summarizes each group with intent, outcome, and status. Use this skill when asked to recap recent coding work, summarize today's sessions, show what was worked on, or produce a daily/weekly session summary. Trigger phrases: "recap", "what did I work on", "daily summary", "session summary", "summarize my sessions", "what sessions did I have today", "coding recap". This is the sessions-only public version — no Slack, Jira, or Granola integration.
ps
Show live Claude Code and Codex sessions as a process tree, grouped by shared ancestor chain up to launchd. Covers Claude CLI sessions, Claude Desktop agent mode, and Codex sessions (CLI TUI + Codex.app threads). Use this skill when asked about the process tree, ancestor lineage, which terminal or tmux window a Claude or Codex session is running in, or what's currently running. Trigger phrases: "process tree", "what's running", "lineage", "ancestor chain", "which terminal is my claude in", "tmux tree", "claude process tree", "codex process tree", "session lineage". macOS-only: on other platforms the command prints "unsupported" and exits 0.