openspec-continue-change — Claude Code skill: install
This skill advances an OpenSpec change by checking its state and creating the next ready artifact. Use it for step-by-step change work.
npx skills add lis186/ccxray --skill openspec-continue-change -a claude-codeWhat openspec-continue-change does
openspec-continue-change moves an OpenSpec change forward one artifact at a time. When no change name is supplied, it runs openspec list --json and asks the user to choose from the available entries instead of guessing. It then reads the current state with openspec status --change "<name>" --json.
The skill selects the first artifact marked ready, requests its guidance through openspec instructions <artifact-id> --change "<name>" --json, reads completed dependencies, and writes one artifact file. It checks progress afterward and reports what is unlocked. When every artifact is complete, it shows the final status and points to implementation or archiving.
The openspec CLI is required, so the workflow cannot inspect changes or create artifacts without it.
What it helps with
- continue an existing OpenSpec change
- let the user choose an ambiguous change
- inspect artifact progress
- create the next ready artifact
- report newly unlocked artifacts
Example prompts for the agent
- Continue my OpenSpec change and create the next ready artifact.
- List the available changes, let me choose one, and check its status.
- Inspect
<name>and create only the first artifact that is ready.
How to install openspec-continue-change
1Skills CLI (Vercel)
npx skills add lis186/ccxray --skill openspec-continue-change -a claude-code2Manually: put the files in place
~/.claude/skills/openspec-continue-change/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/openspec-continue-change/
1Skills CLI (Vercel)
npx skills add lis186/ccxray --skill openspec-continue-change -a codex2Manually: put the files in place
.agents/skills/openspec-continue-change/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add lis186/ccxray --skill openspec-continue-change -a cursor2Manually: put the files in place
.cursor/skills/openspec-continue-change/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install lis186/ccxray openspec-continue-change2Manually: put the files in place
.github/skills/openspec-continue-change/SKILL.md1Skills CLI (Vercel)
npx skills add lis186/ccxray --skill openspec-continue-change -a gemini-cli2Platform CLI
gemini skills install https://github.com/lis186/ccxray --path .claude/skills/openspec-continue-changeManually: put the files in place
.devin/skills/openspec-continue-change/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add lis186/ccxray --skill openspec-continue-change -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about openspec-continue-change
How do I install openspec-continue-change in Claude Code?
Run npx skills add lis186/ccxray --skill openspec-continue-change -a claude-code, then check ~/.claude/skills/openspec-continue-change/SKILL.md.
What does openspec-continue-change do?
It selects an OpenSpec change, reads its artifact status, and creates the first artifact marked ready. Each invocation creates one artifact.
What does this skill need to run?
It requires the openspec CLI. The skill calls it to list changes, read status, and fetch artifact instructions.
Source text
SKILL.md · MIT
---
name: openspec-continue-change
description: Continue working on an OpenSpec change by creating the next artifact. Use when the user wants to progress their change, create the next artifact, or continue their workflow.
license: MIT
compatibility: Requires openspec CLI.
metadata:
author: openspec
version: "1.0"
generatedBy: "1.2.0"
---
Continue 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**
1. **If no change name provided, prompt for selection**
Run `openspec list --json` to 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 `schema` field if present, otherwise "spec-driven")
- Status (e.g., "0/5 tasks", "complete", "no tasks")
- How recently it was modified (from `lastModified` field)
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.
2. **Check current status**
```bash
openspec status --change "<name>" --json
```
Parse 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
3. **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:
```bash
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 file
- `instruction`: Schema-specific guidance
- `outputPath`: Where to write the artifact
- `dependencies`: Completed artifacts to read for context
- **Create the artifact file**:
- Read any completed dependency files for context
- Use `template` as the structure - fill in its sections
- Apply `context` and `rules` as 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
4. **After creating an artifact, show progress**
```bash
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**: `context` and `rules` are 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
© openspec · MIT · lis186/ccxray