with one click
openspec-apply-change
// Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
// Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | openspec-apply-change |
| description | Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks. |
| license | MIT |
| compatibility | Requires openspec CLI. |
| metadata | {"author":"openspec","version":"1.0","generatedBy":"1.3.1"} |
Implement tasks from an OpenSpec change.
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
Select the change
If a name is provided, use it. Otherwise:
openspec list --json to get available changes and use the AskUserQuestion tool to let the user selectAlways announce: "Using change: " and how to override (e.g., /opsx:apply <other>).
Check status to understand the schema
openspec status --change "<name>" --json
Parse the JSON to understand:
schemaName: The workflow being used (e.g., "spec-driven")Get apply instructions
openspec instructions apply --change "<name>" --json
This returns:
Handle states:
state: "blocked" (missing artifacts): show message, suggest using openspec-continue-changestate: "all_done": congratulate, suggest archiveHonor apply workflow requirements
Read the dynamic instruction returned by openspec instructions apply.
test-driven-development before any task execution begins.interactive, you MUST complete the Blocking section's first Proof Task before any later slice work begins.tasks.md defines explicit Slice 1..N verifier gates, you MUST invoke the independent verifier sub-agent at those boundaries and wait for an explicit PASS or FAIL.tasks.md as scope and progress tracking; it does not override the required
implementation order from the apply instruction.test-driven-development skill before writing code.RED -> GREEN -> REFACTOR: write the failing test first, watch it fail for the expected reason, then write the minimal implementation and refactor only after green.Read context files
Read the files listed in contextFiles from the apply instructions output.
The files depend on the schema being used:
Show current progress
Display:
Implement tasks (loop until done or blocked)
For each pending task:
RED -> GREEN -> REFACTOR cycle before moving to the next coding step)interactive, enforce Proof Task -> remaining Blocking -> Slice work -> ReconciliationSlice 1 -> Slice 1 verifier -> Slice 2 -> Slice 2 verifier -> ... -> Slice N -> Slice N verifier -> Reconciliation at the relevant boundaries- [ ] ā - [x]Pause if:
Run implementation done check
After all implementation tasks are done:
openspec/QUALITY-GATE.mdImplementation Done Checkverifier gates were actually executed by an independent verifier sub-agent and reached PASSinteractive, confirm the proof used a real entry path instead of internal direct callsOn completion or pause, show status
Display:
Output During Implementation
## Implementing: <change-name> (schema: <schema-name>)
Working on task 3/7: <task description>
[...implementation happening...]
ā Task complete
Working on task 4/7: <task description>
[...implementation happening...]
ā Task complete
Output On Completion
## Implementation Complete
**Change:** <change-name>
**Schema:** <schema-name>
**Progress:** 7/7 tasks complete ā
### Completed This Session
- [x] Task 1
- [x] Task 2
...
All tasks complete and `Implementation Done Check` passed. Ready to archive this change.
Output On Pause (Issue Encountered)
## Implementation Paused
**Change:** <change-name>
**Schema:** <schema-name>
**Progress:** 4/7 tasks complete
### Issue Encountered
<description of the issue>
**Options:**
1. <option 1>
2. <option 2>
3. Other approach
What would you like to do?
Guardrails
test-driven-development and follow RED -> GREEN -> REFACTOR
before declaring implementation completeinteractive, do not skip the first Proof Tasktasks.md defines verifier gates, do not replace them with self-review; use the independent verifier sub-agentRED -> GREEN -> REFACTOR when TDD is requiredImplementation Done Check is completeFluid Workflow Integration
This skill supports the "actions on a change" model: