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.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
U

dsh-update-check

Update Check

One update check per DeepSeek Harness launch: reports newer app, plugin and CLI versions, and updates profile plugins on click.

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

npx -y @deepseek-ai/dsh plugin --profile web add github:1731988818/dsh-update-check#26bbac742972726e1f77c7fe5d78d1d94611a34e
READMECompatibilityVersions

Compatibility and provenance

Update Check is published as dsh-update-check and currently resolves to version 1.5.3. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/22/2026

Versions

1.5.3stable
10/22/2026
1.5.2stable
10/22/2026
1.5.0stable
10/22/2026

Related plugins

Loading related plugins…

Latest
1.5.3
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/22/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-baseExperimental Inspector@deepseek-ai/dsh-experimental-inspectorExperimental cross-realm CDP hub for Host debugging and Client Runtime inspection

README

dsh-update-check

Startup update check for DeepSeek Harness: one check per launch, one card, one click per update.

English | 中文

The update card: two plugin rows with an Update button, one market row marked manual, and a footer with update-all and check-again links.

A profile is a list of package versions, and those versions move on without you: a plugin ships a fix, a market releases a patch, the app publishes a new nightly. The running app says nothing about any of it.

This plugin fills that gap. Once per launch it compares what you are running against what is published, and when something is behind it puts one card in the corner of the window — a row per outdated package, a button per update, and nothing at all when everything is current.

It reads versions and asks before installing. It never upgrades on its own, never touches a package you did not click, and serves nothing but version numbers over its route.

What it checks

TargetCurrent version read fromNewer version read from
DeepSeek Harnessresources/app.asar/dsh/package.json of the running buildthe official nightly.yml feed
Profile pluginsdependencies in the running profile's package.jsonthe npm registry
rea-agents CLIthe global install under %APPDATA%\npm\node_modules\rea-agentsthe npm registry

Each target is checked on its own, so one unreachable registry degrades a single row to unknown instead of failing the whole check. npm lookups fall back from registry.npmjs.org to registry.npmmirror.com.

What you see

A card in the bottom-right corner, only when something is behind:

  • one row per outdated target — package 1.2.3 → 1.2.4, four rows shown, the rest collapsed into a count
  • 更新 on rows that can be installed from here, 全部更新 in the footer to do them in one go
  • 需手动 on rows that cannot — the app itself, the CLI, and plugin markets (see Limits)
  • 重新检查 to run the check again, × to dismiss. Leave it untouched and it closes itself after 15 seconds — hovering pauses that countdown, and an install in progress holds it open

Nothing renders when everything is current.

The card is offered once per application start, not once per page load. The Host hands the offer out a single time, and the first page to read it takes it — so dismissing it, switching panels or reloading the page keeps it quiet. Quit Harness and start it again to see a fresh check.

The interface text is Chinese today. The layout and the route are language-independent.

How it works

  1. The Host half registers GET /dsh-update-check/api/status and starts one check when the bundle activates.
  2. That check runs with six-way concurrency: one feed read, one npm read per plugin, one local version read for the CLI.
  3. The Client half polls the route and renders into the shell.overlay slot — the frame-wide layer above every column, so the card belongs to no session and no panel.
  4. 更新 posts { "name": "..." } to /dsh-update-check/api/install. The route accepts only names the current check marked outdated and installable, so it cannot be used as a generic install proxy.
  5. The install is two steps: installBundle, and if the manager answers already-installed, removeBundle followed by installBundle again. That is the same shape the app's own Plugins page uses, because this manager has no in-place update.
  6. When the install settles, the check runs once more and the card reflects the new versions.

Limits

  • Markets cannot update themselves. Removing the bundle unloads the code that would run the reinstall (upstream issue #900), so those rows stay manual and show the command to run instead.
  • The app itself is a desktop build behind the nightly feed; the card reports the newer version and leaves the download to you.
  • rea-agents is a global npm install, not a profile dependency: npm i -g rea-agents@latest.
  • A version is compared, never assumed. A target with no readable current version, or a registry that answers nothing, is reported unknown rather than counted as up to date.
  • Replacing a plugin reloads its Host module. That is what makes an update take effect without restarting, and it also means the update offer of this plugin resets whenever it is itself reinstalled.

Install

dsh plugin --profile <profile> add github:1731988818/dsh-update-check

That registers the bundle in the profile's dsh.profile.bundles as well, so the next launch loads it.

pnpm caches git dependencies by commit hash, so run the same command again after a push to pick up new code.

Inside a running session the same install is one tool call:

plugin_manager install_bundle github:1731988818/dsh-update-check

Requires DeepSeek Harness 0.2.1 or newer, on the desktop or the web app.

Route

MethodPathPurpose
GET/dsh-update-check/api/statusSnapshot of the last check. ?refresh=1 starts a new one.
POST/dsh-update-check/api/installBody { "name": "package-name" }. Accepts only a plugin the current check marked outdated and installable.

The route returns version numbers and package names only. It reads no files from the request and installs nothing the card did not offer.

Uninstall

dsh plugin --profile <profile> remove dsh-update-check

Nothing is left behind: the plugin writes no files, keeps no state between launches, and its route disappears with the bundle.

License

MIT