openspec-continue-change
Scannednpx machina-cli add skill azzgo/agent-skills/openspec-continue-change --openclawContinue working on a change by creating the next artifact.
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 sorted by most recently modified. Then use the AskUserQuestion tool to let the user select which change to work on.Present the top 3-4 most recently modified changes as options, showing:
- Change name
- Schema (from
schemafield if present, otherwise "spec-driven") - Status (e.g., "0/5 tasks", "complete", "no tasks")
- How recently it was modified (from
lastModifiedfield)
Mark the most recently modified change as "(Recommended)" since it's likely what the user wants to continue.
IMPORTANT: Do NOT guess or auto-select a change. Always let the user choose.
-
Check current status
openspec status --change "<name>" --jsonParse the JSON to understand current state. The response includes:
schemaName: The workflow schema being used (e.g., "spec-driven")artifacts: Array of artifacts with their status ("done", "ready", "blocked")isComplete: Boolean indicating if all artifacts are complete
-
Act based on status:
If all artifacts are complete (
isComplete: true):- Congratulate the user
- Show final status including the schema used
- Suggest: "All artifacts created! You can now implement this change or archive it."
- STOP
If artifacts are ready to create (status shows artifacts with
status: "ready"):- Pick the FIRST artifact with
status: "ready"from the status output - Get its instructions:
openspec instructions <artifact-id> --change "<name>" --json - Parse the JSON. The key fields are:
context: Project background (constraints for you - do NOT include in output)rules: Artifact-specific rules (constraints for you - do NOT include in output)template: The structure to use for your output fileinstruction: Schema-specific guidanceoutputPath: Where to write the artifactdependencies: Completed artifacts to read for context
- Create the artifact file:
- Read any completed dependency files for context
- Use
templateas the structure - fill in its sections - Apply
contextandrulesas constraints when writing - but do NOT copy them into the file - Write to the output path specified in instructions
- Show what was created and what's now unlocked
- STOP after creating ONE artifact
If no artifacts are ready (all blocked):
- This shouldn't happen with a valid schema
- Show status and suggest checking for issues
-
After creating an artifact, show progress
openspec status --change "<name>"
Output
After each invocation, show:
- Which artifact was created
- Schema workflow being used
- Current progress (N/M complete)
- What artifacts are now unlocked
- Prompt: "Want to continue? Just ask me to continue or tell me what to do next."
Artifact Creation Guidelines
The artifact types and their purpose depend on the schema. Use the instruction field from the instructions output to understand what to create.
Common artifact patterns:
spec-driven schema (proposal → specs → design → tasks):
- proposal.md: Ask user about the change if not clear. Fill in Why, What Changes, Capabilities, Impact.
- The Capabilities section is critical - each capability listed will need a spec file.
- specs/<capability>/spec.md: Create one spec per capability listed in the proposal's Capabilities section (use the capability name, not the change name).
- design.md: Document technical decisions, architecture, and implementation approach.
- tasks.md: Break down implementation into checkboxed tasks.
For other schemas, follow the instruction field from the CLI output.
Guardrails
- Create ONE artifact per invocation
- Always read dependency artifacts before creating a new one
- Never skip artifacts or create out of order
- If context is unclear, ask the user before creating
- Verify the artifact file exists after writing before marking progress
- Use the schema's artifact sequence, don't assume specific artifact names
- IMPORTANT:
contextandrulesare constraints for YOU, not content for the file- Do NOT copy
<context>,<rules>,<project_context>blocks into the artifact - These guide what you write, but should never appear in the output
- Do NOT copy
Source
git clone https://github.com/azzgo/agent-skills/blob/main/.opencode/skills/openspec-continue-change/SKILL.mdView on GitHub Overview
This skill helps you progress an OpenSpec change by generating the next artifact in the workflow. It prompts you to select a change when unclear, checks current status, and then creates artifacts using the provided template and constraints. It keeps your OpenSpec work moving forward without guessing.
How This Skill Works
The tool uses the OpenSpec CLI to list changes, check status, and fetch artifact instructions. It reads dependencies from completed artifacts, applies the provided template, and writes the new artifact to the path specified by the instructions while honoring contextual constraints.
When to Use It
- You want to advance a pending OpenSpec change by generating the next artifact.
- You need to progress the workflow by creating the next artifact for a change.
- You aren’t sure which change to continue and need to select from the most recent changes.
- You want to verify the current status and progress of artifacts for a change.
- You want to see what artifacts become unlocked after creating an artifact.
Quick Start
- Step 1: Run openspec list --json and pick one of the top 3-4 changes (prompt if ambiguous).
- Step 2: Run openspec status --change "<name>" --json to review progress and artifact states.
- Step 3: If a ready artifact exists, run openspec instructions <artifact-id> --change "<name>" --json, create the artifact using the template, then re-run status.
Best Practices
- Prompt for change name and present the top 3-4 most recently modified changes with details.
- Parse the status JSON carefully to understand isComplete and individual artifact statuses.
- Create artifacts strictly using the provided template and respect context and rules as constraints, but don’t copy them into output.
- Read completed dependency artifacts to inform the new artifact content.
- After creation, re-run openspec status to confirm progress and what’s unlocked next.
Example Use Cases
- Continuing a feature change by generating the proposal.md for a spec-driven workflow.
- Progressing a bug fix by creating the next spec artifact and updating status.
- Selecting the most recently modified change like 'openapi-update' to continue work.
- After creating an artifact, running openspec status to observe updated progress and unlocked artifacts.
- When all artifacts are complete, acknowledging completion and deciding to implement or archive.