Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
alibaba avatar

Openspec Apply Change

  • 12 installs
  • 28.2k repo stars
  • Updated August 1, 2026
  • alibaba/druid

openspec-apply-change is a Claude skill that implements the tasks defined in an OpenSpec change using the openspec CLI.

About

openspec-apply-change is a Claude skill that implements tasks from an OpenSpec change. A developer uses it to start or continue working through the tasks in a spec-driven change. It selects the change, reads its status and context files via the openspec CLI, implements each pending task with minimal focused edits, marks tasks complete, and pauses on ambiguity, blockers, or design issues.

  • Implements tasks from an OpenSpec change, reading context files and marking tasks complete
  • Drives the openspec CLI (status, instructions apply) to understand the schema and progress
  • Loops through pending tasks, pausing on ambiguity, errors, or design issues

Openspec Apply Change by the numbers

  • 12 all-time installs (skills.sh)
  • Ranked #2,163 of 3,282 Productivity & Planning skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

openspec-apply-change capabilities & compatibility

Free; requires the openspec CLI, no API keys.

Capabilities
task execution · spec driven workflow · change implementation
Use cases
planning · project management
Pricing
Free
From the docs

What openspec-apply-change says it does

Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
SKILL.md
Mark task complete in the tasks file: `- [ ]` → `- [x]`
SKILL.md
npx skills add https://github.com/alibaba/druid --skill openspec-apply-change

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs12
repo stars28.2k
Last updatedAugust 1, 2026
Repositoryalibaba/druid

What it does

Implement the tasks defined in an OpenSpec change, reading its context artifacts and marking each task complete via the openspec CLI.

Who is it for?

Working through and completing tasks in an OpenSpec spec-driven change

Skip if: Authoring the spec/proposal artifacts or projects not using OpenSpec

When should I use this skill?

You want to start or continue implementing tasks from an OpenSpec change

What you get

Each pending task in the change is implemented and marked complete, with progress reported.

  • Implemented code changes with tasks marked complete

By the numbers

  • 7-step apply workflow driven by the openspec CLI

Files

SKILL.mdMarkdownGitHub ↗

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

1. Select the change

If a name is provided, use it. Otherwise:

  • Infer from conversation context if the user mentioned a change
  • Auto-select if only one active change exists
  • If ambiguous, run openspec list --json to get available changes and use the AskUserQuestion tool to let the user select

Always announce: "Using change: <name>" and how to override (e.g., /opsx:apply <other>).

2. 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")
  • Which artifact contains the tasks (typically "tasks" for spec-driven, check status for others)

3. Get apply instructions

   openspec instructions apply --change "<name>" --json

This returns:

  • Context file paths (varies by schema - could be proposal/specs/design/tasks or spec/tests/implementation/docs)
  • Progress (total, complete, remaining)
  • Task list with status
  • Dynamic instruction based on current state

Handle states:

  • If state: "blocked" (missing artifacts): show message, suggest using openspec-continue-change
  • If state: "all_done": congratulate, suggest archive
  • Otherwise: proceed to implementation

4. Read context files

Read the files listed in contextFiles from the apply instructions output. The files depend on the schema being used:

  • spec-driven: proposal, specs, design, tasks
  • Other schemas: follow the contextFiles from CLI output

5. Show current progress

Display:

  • Schema being used
  • Progress: "N/M tasks complete"
  • Remaining tasks overview
  • Dynamic instruction from CLI

6. Implement tasks (loop until done or blocked)

For each pending task:

  • Show which task is being worked on
  • Make the code changes required
  • Keep changes minimal and focused
  • Mark task complete in the tasks file: - [ ]- [x]
  • Continue to next task

Pause if:

  • Task is unclear → ask for clarification
  • Implementation reveals a design issue → suggest updating artifacts
  • Error or blocker encountered → report and wait for guidance
  • User interrupts

7. On completion or pause, show status

Display:

  • Tasks completed this session
  • Overall progress: "N/M tasks complete"
  • If all done: suggest archive
  • If paused: explain why and wait for guidance

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! 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

  • Keep going through tasks until done or blocked
  • Always read context files before starting (from the apply instructions output)
  • If task is ambiguous, pause and ask before implementing
  • If implementation reveals issues, pause and suggest artifact updates
  • Keep code changes minimal and scoped to each task
  • Update task checkbox immediately after completing each task
  • Pause on errors, blockers, or unclear requirements - don't guess
  • Use contextFiles from CLI output, don't assume specific file names

Fluid Workflow Integration

This skill supports the "actions on a change" model:

  • Can be invoked anytime: Before all artifacts are done (if tasks exist), after partial implementation, interleaved with other actions
  • Allows artifact updates: If implementation reveals design issues, suggest updating artifacts - not phase-locked, work fluidly

Related skills

FAQ

How does it know which tasks to do?

It runs openspec status and openspec instructions apply to read the schema, context files, and task list, then loops through pending tasks.

When does it pause?

It pauses when a task is unclear, an implementation reveals a design issue, or an error or blocker is encountered.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.