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.

App Restart — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
A

dsh-app-restart

App Restart

Adds a Restart Application section with a button to the DeepSeek Harness desktop app Settings; performs a graceful quit followed by an automatic relaunch.

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

npx -y @deepseek-ai/dsh plugin --profile web add github:foreee/dsh-app-restart#4f8701e2f8fd5c0b802b02aa90534be4ecc8b0bb
READMECompatibilityVersions
Restart application section in Settings

Compatibility and provenance

App Restart is published as dsh-app-restart and currently resolves to version 0.1.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
10/15/2026

Versions

0.1.1stable
10/15/2026

Related plugins

Loading related plugins…

Latest
0.1.1
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/16/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 ui-customization.

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)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profileExperimental Web profile layer for Agent Teams Remote and UI pluginsAb Chartdsh-ab-chartChart rendering tool with the browser card that draws its calls, in one publishable plugin packageClient Ui Skill Explorer@linxin666/dsh-client-ui-skill-explorerDSH skill center: browse loaded skills by source (bundled / project / user / custom / runtime), enable or disable, create and delete, in a web GUI panel.

README

dsh-app-restart

Adds a Restart application section to the DeepSeek Harness desktop app Settings, with a guarded button that restarts the whole application — the Electron shell, the hosted Web GUI, and the cordis Host process.

English | 中文

What it does

  • Settings gains a new section ("Restart App") listing what the restart will do and whether the environment supports it.
  • The button is two-step (click, then confirm) to prevent accidental restarts.
  • Restart = graceful quit + automatic relaunch:
    1. a detached relauncher waits for the app main process to exit, then reopens the app bundle;
    2. the plugin triggers the platform's normal quit path — on macOS the Quit Apple Event, which the shell treats exactly like Cmd+Q, including its active-task confirmation dialog;
    3. if the user cancels that dialog, the relauncher times out and its final open merely focuses the running app — a harmless no-op.

The Electron shell offers plugins no restart IPC (app.relaunch() is main-process only), so the restart is orchestrated at the OS level from the Host process. No DSH source modifications are needed.

Install

From GitHub (one command)

dsh plugin --profile desktop add "https://github.com/foreee/dsh-app-restart"

The Web Plugins page can install the same address through its install-by-path/git dialog.

Manual equivalent

The two steps the plugin manager performs:

cd ~/.dsh/profiles/desktop
pnpm add "file:/absolute/path/to/dsh-app-restart"   # or the GitHub address
# then add "dsh-app-restart" to package.json -> dsh.profile.bundles

Restart the desktop app once to load the plugin; the section appears under Settings from then on.

Routes

RouteMethodPurpose
api/dsh-app-restart/statusGETavailability facts for the button
api/dsh-app-restart/restartPOSTperform the restart

Both sit behind a loopback-only trust fence (loopback socket and loopback Host header, same-origin markers enforced). Paired remote devices are deliberately rejected: only the machine's own GUI may restart the app.

Configuration

FieldDefaultMeaning
enabledtrueset false to mount nothing
dryRunfalsePOST /restart answers with the computed plan and spawns nothing — for verification

Platform support

PlatformQuit viaRelaunch viaStatus
macOSQuit Apple Event (bundle id, then app name)open <bundle> after the main PID exitsprimary target
Windowstaskkill /PID (graceful WM_CLOSE)PowerShell Start-Process after the PID exitsbest effort; if the app cannot be closed gracefully the relauncher still reopens it after the next manual quit
LinuxSIGTERMnohup <exe> after the PID exitsbest effort

The plugin refuses to run against a development Electron checkout (no app.asar beside the executable, or the generic com.github.Electron bundle id) — a stray relaunch of the generic Electron binary would not boot DSH anyway.

Development

The client half (lib/client.js) is a hand-written window.__ModuleLoader__ bundle — the same shape tsdown emits for official client plugins — so no build step is required; edit and reinstall.

# one-time test setup (kept out of the plugin manifest on purpose)
npm i react@18.3.1 react-dom@18.3.1 react-test-renderer@18.3.1 --prefix test/react-env --cache test/react-env/.npm-cache

node test/plan.test.mjs        # plan builder + trust fence
node test/client.test.mjs      # browser bundle: registration + interaction flow
node test/host-routes.test.mjs # host routes: guards, status, dry-run, dispose

License

MIT