@dragon-talon/dsh-openspec
English | 中文
OpenSpec workflow skills and
/opsx-*command aliases for DeepSeek Harness (DSH).
A Cordis plugin for DeepSeek Harness that registers the 12 canonical OpenSpec workflow skills under their kebab-case names — so /openspec-new-change works natively through DSH's user-invocation injection and the skill tool — plus the Claude-style /opsx-<id> command aliases as user-only skills that resolve to the canonical body.
- 12 canonical
openspec-*skills (model- and user-invocable) - 12
/opsx-<id>command aliases (user-only, content-identical to their canonical skill) - No runtime state: skills are registered through DSH's skill registry, which owns uniqueness and lifecycle
OpenSpec version
This package pins the OpenSpec workflow skills to OpenSpec 1.14.1 (@fission-ai/openspec, source: Fission-AI/OpenSpec).
The skill bodies are generated by scripts/sync-openspec-skills.mjs from the OpenSpec repository's skills/*/SKILL.md files. See Syncing skills.
Skills
| Canonical skill | /opsx-* alias |
Description |
|---|---|---|
openspec-explore |
/opsx-explore |
Enter explore mode — a thinking partner for exploring ideas, investigating problems, and clarifying requirements. |
openspec-new-change |
/opsx-new |
Start a new OpenSpec change using the experimental artifact workflow. |
openspec-continue-change |
/opsx-continue |
Continue working on an OpenSpec change by creating the next artifact. |
openspec-apply-change |
/opsx-apply |
Implement tasks from an OpenSpec change. |
openspec-update-change |
/opsx-update |
Revise an OpenSpec change's existing planning artifacts and keep them coherent. |
openspec-ff-change |
/opsx-ff |
Fast-forward through OpenSpec artifact creation. |
openspec-propose |
/opsx-propose |
Propose a new change with all artifacts generated in one step. |
openspec-sync-specs |
/opsx-sync |
Sync delta specs from a change to main specs. |
openspec-archive-change |
/opsx-archive |
Archive a completed change. |
openspec-bulk-archive-change |
/opsx-bulk-archive |
Archive multiple completed changes at once. |
openspec-verify-change |
/opsx-verify |
Verify implementation matches change artifacts. |
openspec-onboard |
/opsx-onboard |
Guided onboarding for OpenSpec. |
Installation
The package targets DeepSeek Harness, which supplies its peer dependencies (@deepseek-ai/cordis, @deepseek-ai/dsh-invariants, @deepseek-ai/dsh-skill).
Install the plugin into a DSH profile from npm:
dsh plugin --profile <name> add @dragon-talon/dsh-openspec
Or add it to a plain Node project:
npm install @dragon-talon/dsh-openspec
dsh plugin addforwards topnpm add, so any pnpm install spec works — a version range (@dragon-talon/dsh-openspec@0.3.0),github:owner/repo,git+https://…, a tarball, or a local path.Installing from a git URL instead of npm builds on install via the package's
preparescript.pnpmblocks a git dependency's build script by default — if it refuses to run the build, add the package toallowBuildsin the profile'spnpm-workspace.yamland re-run:allowBuilds: - "@dragon-talon/dsh-openspec"
Usage
Once registered, both forms are available in DSH:
- Canonical:
/openspec-new-change,/openspec-apply-change, … - Aliases:
/opsx-new,/opsx-apply, … (resolve to the same body)
Configuration
import * as dshOpenspec from '@dragon-talon/dsh-openspec'
ctx.plugin(dshOpenspec, { aliases: false }) // disable the /opsx-* aliases
| Option | Type | Default | Description |
|---|---|---|---|
aliases |
boolean |
true |
Register the /opsx-* command aliases as user-only skills (modelInvocable: false). When false, only the 12 canonical openspec-* names are registered. |
Development
npm install
npm run build # tsc + tsdown → lib/
npm test # vitest
Syncing skills
src/skills.ts is auto-generated from a local OpenSpec checkout. Regenerate it when the upstream skills change:
npm run sync:skills # regenerate src/skills.ts
npm run sync:skills:check # CI check: exit non-zero when stale
The script reads skills/*/SKILL.md from an OpenSpec checkout — ~/Documents/github/OpenSpec by default, overridable via --openspec <path> or the OPENSPEC_REPO environment variable.
License
MIT © 2026 dragonTalon
OpenSpec skill content is © OpenSpec Contributors, MIT.
No comments yet. Be the first to write one.