-
Notifications
You must be signed in to change notification settings - Fork 1.3k
feat(skills): add bulk-archive skill for archiving multiple changes #527
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Add `/opsx:bulk-archive` skill that allows archiving multiple completed changes in a single operation. Features include: - Multi-select change selection via AskUserQuestion - Batch validation of artifacts, tasks, and delta specs - Spec conflict detection when multiple changes touch same capability - Agentic conflict resolution by checking codebase for implementation - Consolidated status table before confirmation - Single confirmation for entire batch operation - Comprehensive summary showing archived/skipped/failed changes This is useful when working on multiple changes in parallel and wanting to archive them together after implementation is complete.
📝 WalkthroughWalkthroughThe changes introduce support for bulk archive artifact workflows by adding two new template functions (bulk-archive-change skill and bulk-archive OPSX command) to the skill-templates module and integrating them into the experimental artifact setup flow with corresponding imports and array registrations. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Review CompleteYour review story is ready! Comment !reviewfast on this PR to re-generate the story. |
Greptile SummaryThis PR adds a new Key additions:
Functionality:
Architecture: Confidence Score: 5/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant User
participant Agent as Claude Agent
participant CLI as OpenSpec CLI
participant FS as File System
User->>Agent: /opsx:bulk-archive
Agent->>CLI: openspec list --json
CLI-->>Agent: List of active changes
alt No active changes
Agent->>User: No changes to archive
else Active changes exist
Agent->>User: AskUserQuestion (multi-select changes)
User-->>Agent: Selected changes
loop For each selected change
Agent->>CLI: openspec status --change "name" --json
CLI-->>Agent: Artifact status
Agent->>FS: Read openspec/changes/name/tasks.md
FS-->>Agent: Task completion status
Agent->>FS: Check openspec/changes/name/specs/
FS-->>Agent: Delta spec files
end
Agent->>Agent: Detect spec conflicts
opt Conflicts exist
loop For each conflict
Agent->>FS: Read delta specs
FS-->>Agent: Spec content
Agent->>FS: Search codebase for implementation
FS-->>Agent: Implementation evidence
Agent->>Agent: Determine resolution order
end
end
Agent->>User: Display status table with warnings
Agent->>User: AskUserQuestion (confirm archive)
User-->>Agent: Confirmation
loop For each confirmed change (in resolution order)
opt Delta specs exist
Agent->>Agent: Execute sync-specs logic
Agent->>FS: Update main specs
end
Agent->>FS: mkdir -p openspec/changes/archive
Agent->>FS: mv changes/name to archive/YYYY-MM-DD-name
FS-->>Agent: Archive result (success/fail)
end
Agent->>User: Display summary (archived/skipped/failed)
end
|
Summary
/opsx:bulk-archiveskill that allows archiving multiple completed changes in a single operationgetBulkArchiveChangeSkillTemplate()andgetOpsxBulkArchiveCommandTemplate()to skill templatesartifact-workflow.tsfor generation viaopenspec artifact-experimental-setupFeatures
Use Case
This is useful when working on multiple changes in parallel and wanting to archive them together after implementation is complete, rather than archiving each one individually.
Test plan
openspec artifact-experimental-setupto verify the skill and command files are generated/opsx:bulk-archiveappears in available commands🤖 Generated with Claude Code
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.