Plugin directory / Developer / dsh-plugin-scaffold
dsh-plugin-scaffold
Verified · install-tested on dsh Tianbaidi
What it does
A plugin in the Developer category for DeepSeek Harness.
Works — verified, early-stage project
A plugin in the Developer category for DeepSeek Harness. It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-plugin-scaffold
A starter DeepSeek Harness (dsh) plugin.
It demonstrates the four extension shapes a community plugin can use, shipped as a
working persistent note scratchpad: note_write / note_read / note_list / note_delete.
| Shape | Where in this repo |
|---|---|
Plugin with Config |
src/index.ts — Schemastery schema, defaults, cordis.yml overrides |
| Tools | ctx.tools.register(defineTool(...)) — canonical JSON outputs + output.render |
| UI cards | presentCall / presentResult / presentationMeta — pure projections |
| Hooks | ctx.on('session/event', ...) — observe the agent loop |
Try it
Install the bundle into any profile (the prepare script builds on install):
dsh plugin --profile web add github:Tianbaidi/dsh-plugin-scaffold
Open the Web UI and ask the agent to save a note called project-ideas about the scaffold, then list all notes.
Prefer a dev overlay instead? Point it at your local checkout:
- insert:
- id: scaffold
name: 'file:///<path-to-plugin>/src/index.ts'
Windows note: plugin paths in overlays must be
file://URLs
(file:///D:/...%20...), not bareD:/...paths — the ESM loader rejects
the latter as schemed:.
Develop
pnpm install # installs the published @deepseek-ai peer packages
pnpm typecheck # strict TypeScript check against published .d.ts
pnpm test # vitest: config defaults, tool round-trips, limits, presenters
Hot reload: edit src/index.ts, save, and the running dsh web reloads the
plugin (registrations are effects and clean themselves up).
Make it yours
- Rename the package and the
nameexport insrc/index.ts. - Replace the note domain with yours — keep the Config/tool/card/hook shapes.
- Rebuild the
cordis.ymlname:file URL to point at yoursrc/index.ts.
Publish to the ecosystem
This project is already a bundle (dsh.bundle.patch in package.json), the
official distribution format: install it into any profile with dsh plugin add.
# from a dsh installation (npm or source checkout):
dsh plugin --profile my-profile add /path/to/dsh-plugin-scaffold
dsh --profile my-profile "save a note about the scaffold"
Windows note:
dsh plugin addforwards the path to pnpm, which splits on
spaces — keep the package on a path without spaces, or use a tarball.
To share it with the community:
- Push this project to your own GitHub repository.
- Add the
dsh-plugintopic to your repo
so the community can discover it. - Users can then install straight from GitHub (
dsh plugin --profile my-profile add github:you/dsh-plugin-scaffold). Thepreparescript buildslib/from
source on install — pnpm will ask you to allowlist the build once
(see the package-and-install tutorial). - (Optional)
npm publishto make it installable by name.
License
MIT
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-plugin-scaffold for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:Tianbaidi/dsh-plugin-scaffold Headless (CLI) profile:
dsh plugin --profile headless add github:Tianbaidi/dsh-plugin-scaffold Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.