← Back to home@dragonTalon

dsh-openspec

No description

Stars
1
Language
TypeScript
Created
Aug 25, 2026
Updated
Aug 25, 2026

Introduction

@dragon-talon/dsh-openspec

English | 中文

OpenSpec workflow skills and /opsx-* command aliases for DeepSeek Harness (DSH).

GitHub License: MIT OpenSpec

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.10.0 (@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-* aliasDescription
openspec-explore/opsx-exploreEnter explore mode — a thinking partner for exploring ideas, investigating problems, and clarifying requirements.
openspec-new-change/opsx-newStart a new OpenSpec change using the experimental artifact workflow.
openspec-continue-change/opsx-continueContinue working on an OpenSpec change by creating the next artifact.
openspec-apply-change/opsx-applyImplement tasks from an OpenSpec change.
openspec-update-change/opsx-updateRevise an OpenSpec change's existing planning artifacts and keep them coherent.
openspec-ff-change/opsx-ffFast-forward through OpenSpec artifact creation.
openspec-propose/opsx-proposePropose a new change with all artifacts generated in one step.
openspec-sync-specs/opsx-syncSync delta specs from a change to main specs.
openspec-archive-change/opsx-archiveArchive a completed change.
openspec-bulk-archive-change/opsx-bulk-archiveArchive multiple completed changes at once.
openspec-verify-change/opsx-verifyVerify implementation matches change artifacts.
openspec-onboard/opsx-onboardGuided 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 this repository:

dsh plugin --profile <name> add github:dragonTalon/dsh-openspec

Or add it to a plain Node project:

npm install github:dragonTalon/dsh-openspec

dsh plugin add forwards to pnpm add, so any pnpm install spec works — github:owner/repo, git+https://…, a tarball, or a local path.

Git installs build on install via the package's prepare script. pnpm blocks a git dependency's build script by default — if it refuses to run the build, add the package to allowBuilds in the profile's pnpm-workspace.yaml and 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
OptionTypeDefaultDescription
aliasesbooleantrueRegister 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.