openspec-bulk-archive-change
Skill278 starsChanged 6 months agoMITView on GitHub
Archive multiple completed changes at once. Use when archiving several parallel changes.
We split this skill into the rules it gives an agent
17 rules. 16 are common, 0 are distinctive, and 1 is very specific to this project.
16
Common
Most of the 49 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 22
Run openspec list --json to get all active changes.
- Common: line 24
If no active changes exist, inform user and stop.
- Common: line 28
Use AskUserQuestion tool with multi-select to let user choose changes:
- Common: line 33
IMPORTANT: Do NOT auto-select. Always let the user choose.
- Common: line 45
If no tasks file exists, note as "No tasks"
- Common: line 69
Look for code implementing requirements from each delta spec
- Common: line 70
Check for related files, functions, or tests
- Common: line 73
If only one change is actually implemented -> sync that one's specs
- Common: line 74
If both implemented -> apply in chronological order (older first, newer overwrites)
- Common: line 75
If neither implemented -> skip spec sync, warn user
- Common: line 109
Use AskUserQuestion tool with a single confirmation:
- Common: line 117
If there are incomplete changes, make clear they'll be archived with warnings.
- Common: line 124
Use the openspec-sync-specs approach (agent-driven intelligent merge)
- Common: line 237
Always prompt for selection, never auto-select
- Common: line 239
When both changes are implemented, apply specs in chronological order
- Common: line 242
Use single confirmation for entire batch
- Common: line 246
If archive target exists, fail that change but continue with others
“Common” is measured: kept by at least 6 in 10 of the 49 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Archive multiple completed changes in a single operation.
This skill allows you to batch-archive changes, handling spec conflicts intelligently by checking the codebase to determine what's actually implemented.
Input: None required (prompts for selection)
Steps
Get active changes
Run
openspec list --jsonto get all active changes.If no active changes exist, inform user and stop.
Prompt for change selection
Use AskUserQuestion tool with multi-select to let user choose changes:
- Show each change with its schema
- Include an option for "All changes"
- Allow any number of selections (1+ works, 2+ is the typical use case)
IMPORTANT: Do NOT auto-select. Always let the user choose.
Batch validation - gather status for all selected changes
For each selected change, collect:
a. Artifact status - Run
openspec status --change "<name>" --json- Parse
schemaNameandartifactslist - Note which artifacts are
donevs other states
b. Task completion - Read
openspec/changes/<name>/tasks.md- Count
- [ ](incomplete) vs- [x](complete) - If no tasks file exists, note as "No tasks"
c. Delta specs - Check
openspec/changes/<name>/specs/directory- List which capability specs exist
- For each, extract requirement names (lines matching
### Requirement: <name>)
- Parse
Detect spec conflicts
Build a map of
capability -> [changes that touch it]:auth -> [change-a, change-b] <- CONFLICT (2+ changes) api -> [change-c] <- OK (only 1 change)A conflict exists when 2+ selected changes have delta specs for the same capability.
Resolve conflicts agentically
For each conflict, investigate the codebase:
a. Read the delta specs from each conflicting change to understand what each claims to add/modify
b. Search the codebase for implementation evidence:
- Look for code implementing requirements from each delta spec
- Check for related files, functions, or tests
c. Determine resolution:
- If only one change is actually implemented -> sync that one's specs
- If both implemented -> apply in chronological order (older first, newer overwrites)
- If neither implemented -> skip spec sync, warn user
d. Record resolution for each conflict:
- Which change's specs to apply
- In what order (if both)
- Rationale (what was found in codebase)
Show consolidated status table
Display a table summarizing all changes:
| Change | Artifacts | Tasks | Specs | Conflicts | Status | |---------------------|-----------|-------|---------|-----------|--------| | schema-management | Done | 5/5 | 2 delta | None | Ready | | project-config | Done | 3/3 | 1 delta | None | Ready | | add-oauth | Done | 4/4 | 1 delta | auth (!) | Ready* | | add-verify-skill | 1 left | 2/5 | None | None | Warn |For conflicts, show the resolution:
* Conflict resolution: - auth spec: Will apply add-oauth then add-jwt (both implemented, chronological order)For incomplete changes, show warnings:
Warnings: - add-verify-skill: 1 incomplete artifact, 3 incomplete tasksConfirm batch operation
Use AskUserQuestion tool with a single confirmation:
- "Archive N changes?" with options based on status
- Options might include:
- "Archive all N changes"
- "Archive only N ready changes (skip incomplete)"
- "Cancel"
If there are incomplete changes, make clear they'll be archived with warnings.
Execute archive for each confirmed change
Process changes in the determined order (respecting conflict resolution):
a. Sync specs if delta specs exist:
- Use the openspec-sync-specs approach (agent-driven intelligent merge)
- For conflicts, apply in resolved order
- Track if sync was done
b. Perform the archive:
mkdir -p openspec/changes/archive mv openspec/changes/<name> openspec/changes/archive/YYYY-MM-DD-<name>c. Track outcome for each change:
- Success: archived successfully
- Failed: error during archive (record error)
- Skipped: user chose not to archive (if applicable)
Display summary
Show final results:
## Bulk Archive Complete Archived 3 changes: - schema-management-cli -> archive/2026-01-19-schema-management-cli/ - project-config -> archive/2026-01-19-project-config/ - add-oauth -> archive/2026-01-19-add-oauth/ Skipped 1 change: - add-verify-skill (user chose not to archive incomplete) Spec sync summary: - 4 delta specs synced to main specs - 1 conflict resolved (auth: applied both in chronological order)If any failures:
Failed 1 change: - some-change: Archive directory already exists
Conflict Resolution Examples
Example 1: Only one implemented
Conflict: specs/auth/spec.md touched by [add-oauth, add-jwt]
Checking add-oauth:
- Delta adds "OAuth Provider Integration" requirement
- Searching codebase... found src/auth/oauth.ts implementing OAuth flow
Checking add-jwt:
- Delta adds "JWT Token Handling" requirement
- Searching codebase... no JWT implementation found
Resolution: Only add-oauth is implemented. Will sync add-oauth specs only.Example 2: Both implemented
Conflict: specs/api/spec.md touched by [add-rest-api, add-graphql]
Checking add-rest-api (created 2026-01-10):
- Delta adds "REST Endpoints" requirement
- Searching codebase... found src/api/rest.ts
Checking add-graphql (created 2026-01-15):
- Delta adds "GraphQL Schema" requirement
- Searching codebase... found src/api/graphql.ts
Resolution: Both implemented. Will apply add-rest-api specs first,
then add-graphql specs (chronological order, newer takes precedence).Output On Success
## Bulk Archive Complete
Archived N changes:
- <change-1> -> archive/YYYY-MM-DD-<change-1>/
- <change-2> -> archive/YYYY-MM-DD-<change-2>/
Spec sync summary:
- N delta specs synced to main specs
- No conflicts (or: M conflicts resolved)Output On Partial Success
## Bulk Archive Complete (partial)
Archived N changes:
- <change-1> -> archive/YYYY-MM-DD-<change-1>/
Skipped M changes:
- <change-2> (user chose not to archive incomplete)
Failed K changes:
- <change-3>: Archive directory already existsOutput When No Changes
## No Changes to Archive
No active changes found. Create a new change to get started.Guardrails
- Allow any number of changes (1+ is fine, 2+ is the typical use case)
- Always prompt for selection, never auto-select
- Detect spec conflicts early and resolve by checking codebase
- When both changes are implemented, apply specs in chronological order
- Skip spec sync only when implementation is missing (warn user)
- Show clear per-change status before confirming
- Use single confirmation for entire batch
- Track and report all outcomes (success/skip/fail)
- Preserve .openspec.yaml when moving to archive
- Archive directory target uses current date: YYYY-MM-DD-
<name> - If archive target exists, fail that change but continue with others
Other versions58 projects use a version of this.
Word for word · 7
- mckinsey/agents-at-scale-ark★ 429100% same
- theoden8/webspace_app★ 212100% same
- atman-33/multi-agent-ff15★ 4100% same
- CaseyRo/mcp-readwise★ 1100% same
- fanshanhong/claude-skills-cn★ 1100% same
- snowzhaozhj/claude-devtools-rs★ 1100% same
- yinzhenyu-su/skills★ 1100% same
Edited · 49
- Fission-AI/OpenSpec★ 74k22% same
- alibaba/druid★ 28k98% same
- studyzy/imewlconverter★ 10k11% same
- PBH-BTN/PeerBanHelper★ 6.3k98% same
- fengshao1227/ccg-workflow★ 5.9k98% same
- Soju06/codex-lb★ 3.3k99% same
- Draculabo/AntigravityManager★ 2.4k98% same
- microsoft/rayfin★ 64697% same
- atilladeniz/Kubeli★ 38799% same
- kalbasit/ncps★ 34591% same
39 more not listed
Wrote their own version · 2
- studyzy/OpenSpec-cn★ 1.2ksame name
- redhat-developer/rhdh-skills★ 19same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use draft-openspec-docs, release-openspec and 5 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
studyzySkilldraft-openspec-docs
OpenSpec 文档的协作式页面起草模式。在目标页面内部构建一份草稿计划(目的、结构、编号起草步骤),与用户一起迭代,然后按已批准的步骤逐章节起草,并在完成后清理自身。在页面需要从头重写,或一个新区块需要用户参与塑形时使用。
Also in 3 projects that use this
studyzySkillrelease-openspec
Use this skill when releasing OpenSpec: audit merged work and changeset coverage, decide whether a catch-up changeset PR is needed, prepare or resume the Changesets Version Packages PR, cut a beta or stable release, verify publishing, and polish GitHub release notes. Also use when asked whether an open release PR is complete, what the next release step is, or to continue a release paused for human approval.
Also in 3 projects that use this
Microsoft AzureSkillopenspec-update-change
Update an OpenSpec change by revising its existing planning artifacts and keeping them coherent with one another. Use when the user wants to revise a change's plan, fold new decisions into it, or reconcile its artifacts after an edit. Never edits code.
Also in 11 projects that use this
SentrySkillopenspec-propose
Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.
Also in 23 projects that use this
SentrySkillcommit
Create commit messages following Sentry conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits with Sentry-specific issue references.
Also in 3 projects that use this
- +2 more from studyzy
In this repository23 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/codegraph.mdcCursor rule
- .cursor/rules/use-base-rules.mdcCursor rule
- openspec-apply-changeSkill
- openspec-archive-changeSkill
- openspec-bulk-archive-changeSkill
- openspec-continue-changeSkill
- openspec-exploreSkill
- openspec-ff-changeSkill
- openspec-new-changeSkill
- openspec-onboardSkill
- openspec-sync-specsSkill
- openspec-verify-changeSkill
- openspec-apply-changeSkill
- openspec-archive-changeSkill
- openspec-continue-changeSkill
- openspec-exploreSkill
- openspec-ff-changeSkill
- openspec-new-changeSkill
- openspec-onboardSkill
- openspec-sync-specsSkill
- openspec-verify-changeSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

