DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Harness Updater — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
H

dsh-harness-updater

Harness Updater

Detect Claude Code and Codex CLI updates, prompt the user, and run the right channel-specific upgrade

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:leonardoxr/dsh-harness-updater#c747b22737896052b46c244416a3c64a03071f58
READMECompatibilityVersions

Compatibility and provenance

Harness Updater is published as dsh-harness-updater and currently resolves to version 0.2.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
8/25/2026

Versions

0.2.1stable
8/25/2026
0.2.0stable
8/25/2026
0.1.0stable
8/24/2026

Related plugins

Loading related plugins…

Latest
0.2.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
8/25/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in developer-tools.

Web App@deepseek-ai/dsh-web-appThe dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)Sdk Minimal@deepseek-ai/dsh-sdk-minimalThe standalone minimal SDK profile bundle: JSON-RPC, one DeepSeek adapter, persistent shell, and JSONL sessionsSdk App@deepseek-ai/dsh-sdk-appThe dsh SDK profile bundle: stdio JSON-RPC serving and process lifecycle over dsh-baseSubagent Codex@deepseek-ai/dsh-subagent-codexOne-shot Codex subagent provider over the official app-server protocol

README

dsh-harness-updater

English | 简体中文

Agent harness updates for DeepSeek Harness. Detects the locally installed Claude Code and Codex CLI, compares them against the latest published versions, prompts in the DSH web UI, and — on your explicit click — runs the correct channel-specific upgrade command.

Inspired by the provider maintenance model of T3 Code.

What it does

  1. Detects each harness on PATH (Windows .cmd/.ps1 shim aware) and probes <harness> --version with a bounded timeout.
  2. Classifies the install channel from the resolved binary path: native installer, npm / pnpm / bun global, Homebrew, or manual-only.
  3. Checks npm (registry.npmjs.org/<pkg>/latest) for the latest version with a 4 s timeout and a 1 h cache. Fully disabled via settings when offline.
  4. Prompts: a persistent Updates card in DSH Settings → Plugins lists each harness with current → latest and an in-place Update button. Under DSH Native it also shows the native app's own self-update status.
  5. Updates on click only — never silently. The runner serializes per channel lock, enforces a hard timeout with process-tree termination, caps captured output, then re-probes to verify and reports succeeded, unchanged, or failed.
Detected channelUpdate command
Claude native (~/.local/bin/claude*)claude update
npm globalnpm install -g <pkg>@latest
pnpm globalpnpm add -g <pkg>@latest
bun globalbun install -g <pkg>@latest
Homebrewbrew upgrade claude-code / brew upgrade --cask codex
anything else (WinGet, standalone installers)manual: copyable hint, no one-click

The updater invokes npm with explicit arguments and lets npm run the package lifecycle required to install the CLI.

Safety model

  • Every route is loopback + same-origin gated; updates are POST-only mutations.
  • One update per harness at a time; updates sharing a package manager queue behind a shared lock instead of racing.
  • DISABLE_UPDATES=1 in the Harness environment blocks all automatic paths.
  • Child processes are killed as a tree on timeout (Unix signals / taskkill /t /f).
  • Updates are never started without a user click; nothing runs on a timer.

Install (local development)

Reference the plugin from your DSH profile:

// ~/.dsh/profiles/web/package.json
"dependencies": { "dsh-harness-updater": "link:C:/path/to/dsh-harness-updater" }

Add the bundled patch entry (the repo's cordis.patch.yml inserts it), run pnpm install in the profile, then restart DSH Web (host half).

Development

pnpm install
pnpm check        # typecheck + build + test

Configuration

All fields are editable in DSH Settings → Plugins → Harness updater (restart applies):

FieldDefaultMeaning
enableUpdateCheckstrueQuery npm for latest versions
statusRefreshIntervalMs900000Background status poll interval (min 60000)
hoverRefreshMinAgeMs30000Min age before a forced refresh is allowed (min 5000)
probeTimeoutMs5000Timeout for each --version probe (min 1000)
latestTimeoutMs4000Timeout for each registry lookup (min 1000)
latestVersionTtlMs3600000Registry result cache lifetime (min 30000)
updateTimeoutMs300000Hard timeout for an update command (min 30000)
claudeCommand / codexCommand / npmCommandclaude/codex/npmExecutables to use

License

MIT