Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

opsx — OpenSpec workflow for Claude Code

A spec-driven change-management workflow for Claude Code, built as skills + slash-command shims. It enforces a 6-stage pipeline so every change is proposed, reviewed, integration-checked, applied, and verified before it reaches archive — closing the gap that lets incomplete changes ship unnoticed.

Why

openspec status reports artifact done/todo, but the process gateswas this change actually reviewed? verified against its specs? — are invisible there. opsx makes those gates first-class: each stage writes a marker file, and /opsx:status overlays them on the artifact graph so you can see what's done, what's skipped, and what to run next.

The pipeline

propose → review → check-integration → apply → verify → archive
Stage Skill Command Writes marker
Propose openspec-propose /opsx:propose
Review openspec-review-change /opsx:review .reviewed
Integration check openspec-check-integration /opsx:check-integration .integration-checked
Apply openspec-apply-change /opsx:apply task completion
Verify openspec-verify-change /opsx:verify .verified
Archive openspec-archive-change /opsx:archive
Status (read-only) openspec-status /opsx:status
Explore (read-only) openspec-explore /opsx:explore
Sync specs openspec-sync-specs /opsx:sync

The three marker files (.reviewed, .integration-checked, .verified) are read by /opsx:status and checked at archive time. A missing .verified — implementation never checked against specs — is surfaced explicitly rather than silently archived.

Requirements

  • Claude Code
  • The openspec CLI (provides openspec list / status / instructions / new)

Skills are invoked via Claude Code's Skill tool. The /opsx:* commands are thin legacy shims that delegate to the skills — prefer invoking the skill directly; the shims exist only for slash-command muscle memory.

Install

Copy commands/ and skills/ into your project's .claude/ directory:

# from your project root (create .claude/ if it doesn't exist)
mkdir -p .claude
cp -R /path/to/this-repo/commands  .claude/commands
cp -R /path/to/this-repo/skills    .claude/skills

Then run /opsx:propose <change> in Claude Code, or invoke the openspec-propose skill directly.

Layout

commands/opsx/         # 9 slash-command shims (delegate to skills)
skills/openspec-*/     # 9 skills (single source of truth, one SKILL.md each)

Each skill is a single SKILL.md. Each shim is a ~26-line file whose only job is to route $ARGUMENTS into the skill and report the verdict.

License

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors