dsh-plugins
Tianjiao's DSH plugins
- Stars
- 0
- Language
- TypeScript
- Created
- Aug 21, 2026
- Updated
- Aug 21, 2026
Introduction
Tianjiao's Plugins
Personal scratch plugins for DeepSeek Harness, in their own repository.
Layout
apply-patch/—dsh-tianjiao-apply-patch: a Node tool plugin porting codex-rs/apply-patch (unified-diff apply tool with fuzzy context matching).stats-line/—dsh-tianjiao-stats-line: a Web client plugin rendering a compact per-turn token line in the chat composer dock.
Dependencies
The plugins depend on the published @deepseek-ai/* packages:
@deepseek-ai/cordis,@deepseek-ai/schemastery— thelatesttags match the harness checkout (4.0.1,3.18.1).@deepseek-ai/dsh-*— installed from thenextdist-tag (0.1.0-rc.8), which matches the checkout; thelatesttag is stale at0.0.1-rc.1, so never install those with a bare range.
Building and testing
cd ~/dsh-plugins
pnpm install
pnpm --filter dsh-tianjiao-apply-patch run bundle
pnpm --filter dsh-tianjiao-apply-patch test
pnpm --filter dsh-tianjiao-stats-line run bundle
The toolchain (tsc, tsdown, vitest) is declared at the workspace root.
Installing into a dsh profile
Both packages declare dsh.bundle, so they install as bundle layers:
dsh plugin --profile <name> add ./apply-patch
dsh plugin --profile <name> add ./stats-line
stats-line additionally declares dsh.client (platform: web): its browser
half ships at lib/client.js, discovered through the package's ./client
export.
Known limitations
stats-line/tsdown.config.tsrestates the harness's client-bundle contract (module-table banner/footer, baseline externals, purity gate) because the sharedclientBundle()preset is not published. The baseline external list mirrorspackages/client/web/src/platform.tsin the harness checkout and must be updated if it changes there. CSS-module and?inlinestyle plugins were not ported; stats-line ships no stylesheets.