DeepSeek Harness Plugin

jeremy9682/dsh-skill-pack

Stars ★ 0 Category Skills Added 2026-08-15 npm @jeremy9682/dsh-skill-pack

11 shareable workflow skills (handoff, triage, to-spec, to-tickets, wayfinder, teach, wait-what, dsh-mode-routing, ask-matt, overnight-execution, full-throttle) as an installable skill pack.

Install

# from npm (prebuilt)

dsh plugin --profile web add @jeremy9682/dsh-skill-pack

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:jeremy9682/dsh-skill-pack

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time. Only install sources you trust, and pin a commit (github:owner/repo#sha).

README

A shareable set of 12 workflow skills for the DeepSeek Harness (dsh). One plugin, one FileSystemSkillProvider, twelve skills.

The pack is a single-package dsh plugin (the same shape as a Hermes / DSH community bundle). Installing it registers a filesystem skill provider that points at the skills/ directory bundled inside this package — added alongside your own project and user skills, never replacing them.

Requirements

  • dsh >= 0.1.0-rc.6

This package declares no @deepseek-ai/* dependency. Like other DSH bundles, the official packages (@deepseek-ai/dsh-skill-filesystem, etc.) are injected by your profile's closure at boot time, so the plugin resolves them from the profile's own node_modules.

The 12 skills

Skill What it does
dsh-mode-routing DSH session mode (agent preset) selection and routing — the four built-in presets (standard / code / minimal / cordis) plus user-built presets.
handoff Compact the current conversation into a handoff document for another agent to pick up.
triage Move issues and external PRs through a triage state machine — categorise, verify, grill, and write agent-ready briefs.
to-spec Turn the current conversation into a spec and publish it to the project issue tracker.
to-tickets Break a plan, spec, or conversation into tracer-bullet tickets, each declaring its blocking edges.
wayfinder Plan a huge chunk of work as a shared map of decision tickets on the issue tracker.
wait-what Stop — that last message did not land; re-pitch it.
teach Teach the user a new skill or concept, within the workspace.
ask-matt Ask which skill or flow fits your situation — a router over the shared skills set plus the user's own skills.
overnight-execution ⚠️ Requires prior approval. Unattended overnight coding while you sleep or step away for hours.
full-throttle Explicit escalation protocol ($full-throttle only): deeper reasoning, multi-agent/background parallelism with explicit gears, optional cross-family blind review.
skill-advisor Proactively suggest high-cost or permissioned skills (overnight runs, multi-session plans, shipping gates) with one-sentence reasons — but never execute without explicit approval.

Install

Choose one of the three install forms. Replace web with whichever profile you use (web, headless, tui, acp, …).

npm registry

dsh plugin --profile web add @jeremy9682/dsh-skill-pack

Git

dsh plugin --profile web add github:jeremy9682/dsh-skill-pack

Local path (file:)

dsh plugin --profile web add file:/path/to/dsh-skill-pack

dsh plugin forwards its arguments to pnpm inside the profile directory and then reconciles the profile's bundle list, so any spec pnpm add accepts works here.

Verify

dsh --profile web --dump-config | grep -A 2 dsh-skill-pack

Uninstall

dsh plugin --profile web remove @jeremy9682/dsh-skill-pack

dsh plugin forwards to pnpm, so remove is pnpm remove (alias pnpm rm): it drops the dependency from the profile's package.json and node_modules, and dsh then removes the bundle from the profile's layer list. If your dsh build lacks remove forwarding, delete the dependency from the profile's package.json and re-run dsh plugin --profile web install.

How it works

index.mjs is a Cordis function plugin (inject: ['skills']). Its apply registers a FileSystemSkillProvider over this package's skills/ directory:

ctx.skills.registerProvider((control) =>
  new FileSystemSkillProvider(ctx, control, {
    providerName: 'dsh-skill-pack',
    customSkillDirs: [skillDir],
  }),
)

Because includeDefaultRoots stays at its default (true), the shared skills join the provider's discovery ranks as a custom root (rank 300) — below project roots and above user roots — so your own skills keep working alongside them.

License

MIT — see LICENSE.

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →