Back to home@ivwumupy

dsh-plugins

Tianjiao's DSH plugins

Stars
0
Language
TypeScript
Created
Aug 21, 2026
Updated
Aug 21, 2026
GitHub repo

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 — the latest tags match the harness checkout (4.0.1, 3.18.1).
  • @deepseek-ai/dsh-* — installed from the next dist-tag (0.1.0-rc.8), which matches the checkout; the latest tag is stale at 0.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.ts restates the harness's client-bundle contract (module-table banner/footer, baseline externals, purity gate) because the shared clientBundle() preset is not published. The baseline external list mirrors packages/client/web/src/platform.ts in the harness checkout and must be updated if it changes there. CSS-module and ?inline style plugins were not ported; stats-line ships no stylesheets.