zoahdev/dsh-plugin-template ↗★ 0
dsh-plugin-template
Minimal, verified template for DeepSeek Harness plugins: bundle manifest, one tool, tests, and CI smoke load.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:zoahdev/dsh-plugin-template说明文档
阅读完整 README ↗dsh-plugin-template
A minimal, verified starting point for DeepSeek Harness plugins. Fork it, rename it, and ship your own plugin with confidence.
Topic:
dsh-plugin· Tested withdsh0.1.0-rc.6 · Node 24 / pnpm 11
What's inside
├── package.json # dsh.bundle manifest + build scripts (prepare = git-install build)
├── cordis.patch.yml # plugin row: id, package name, config
├── src/index.ts # plugin entry: name / inject / Config / apply + one `hello` tool
├── tests/index.spec.ts # registration + tool behavior + cancellation
├── .github/workflows/ci.yml # build → test → pack → dsh plugin add → dump-config → boot web
└── README.md # bilingual
Why this exists
See the RFC in deepseek-ai/deepseek-harness discussions: plugin authors were hand-writing bundle manifests with no canonical template, and the npm version-train confusion (dsh-tools latest → broken 0.0.1-rc.1) was blocking installs. This template pins the working train (0.1.0-rc.6) and ships a CI smoke test so "loads in dsh" is proven, not assumed.
Use it
git clone https://github.com/zoahdev/dsh-plugin-template.git my-plugin
cd my-plugin
pnpm install
pnpm test
pnpm pack
dsh plugin --profile web add ./dsh-plugin-template-0.1.0.tgz
dsh web --port 4099
Then ask your agent: "Use the hello tool to greet Ada."
Rename checklist
package.json:name,description,keywordscordis.patch.yml: pluginidandnamesrc/index.ts:export const name, toolname/descriptionREADME.md: title, links, author- Add the
dsh-plugintopic to your GitHub repo
Publishing checklist
-
pnpm buildpasses - passes