denki-san/exec-openspec-change
Overview
This skill automates the full OpenSpec change execution workflow from proposal to merged code. I announce when I start (e.g., "I'm using the execute-openspec-change skill to execute the <change-id> proposal") and then orchestrate design checks, planning, worktree creation, subagent execution, review, testing, and merge. It manages state and recovers from interruptions so executions can be resumed or abandoned safely.
How this skill works
The skill detects triggers like /execute or /exec, extracts the change-id, runs safety checks, and persists execution state in an .exec-state.json file under the change directory. It uses specialized subskills to validate or generate design.md, merge and write tasks.md, create a git worktree, run a subagent to perform tasks, auto-request code review, run tests, and finally prepare a pre-merge report and perform the merge with rollback hooks. Modes (auto/guided/debug) control interaction and checkpoints.
When to use it
- When you want end-to-end automated execution of an OpenSpec change
- To run a proposal through design validation, planning, execution, review, and merge without manual orchestration
- When you need resumable, stateful execution with audit logs and recovery
- To batch-execute dependent changes in order with auto dependency resolution
Best practices
- Keep design.md and tasks.md up to date to minimize brainstorming and plan conflicts
- Use guided mode when changes touch high-risk domains or complex migrations
- Set test_failure_strategy to prompt for important releases, auto_fix for low-risk iterative work
- Use domain classification to create isolated worktrees and reduce merge conflicts
- Run /status before executing to verify dependencies and active worktrees
Example use cases
- /execute add-subagent-display to fully implement and merge UI+server changes for a feature proposal
- Batch execute dependent changes like /execute add-sub fix-perm --auto-resolve-deps to run multiple changes in dependency order
- Resume an interrupted run with /execute <change-id> --resume after a subagent crash or network failure
- Run guided mode for a critical config change so checkpoints pause for human review
- Create an isolated worktree for frontend fixes to avoid interfering with server worktrees
FAQ
I state: "I'm using the execute-openspec-change skill to execute the <change-id> proposal."
How do I recover from an interrupted execution?
Use /execute <change-id> --resume. The skill reads .exec-state.json and resumes from the last checkpoint, preserving logs and worktree.