DSH Plugins Marketplace

DSH Plugins

Plugins

/

UI & Experience

/

dsh-restart-button

h

dsh-restart-button

Manifest valid

Adds a restart button next to the shutdown button in the bottom-right of the DSH Web GUI; the server comes back up and the browser reopens.

UI (client)hasBundlePatch

dsh-restart-button

A small DeepSeek Harness (DSH) plugin that adds a floating quit button to the bottom-right corner of the Web GUI. (It used to restart; v0.3.0 changed it to a full exit. The package keeps its original name.)

Click it once → a themed confirm card asks if you're sure → dsh web fully exits and its port is released. The next launch is a cold start.

What it does

Floating quit buttonPinned to the bottom-right corner, power glyph, tints red on hover
Confirm gateOne click → themed "完全退出 DeepSeek Harness?" card → quits only if confirmed
Server routePOST /api/dsh-restart/quit (loopback-only)
Quit flowAnswers the request, then asks the host to exit gracefully. Spawns nothing.
Port releaseThe listening socket dies with the process, so the port frees on its own
Result cardThe page watches for the server to stop answering, then says so and how to start again

Install

dsh plugin --profile web add "dsh-restart-button"

Then restart dsh web. The quit button appears in the bottom-right corner.

How it works

  • Server half (lib/index.js): a cordis plugin that registers the loopback-only POST /api/dsh-restart/quit route. It writes the 200 first — the client renders its result card from that response, because there is no server left to ask afterwards — then calls the host's ctx.appExit seam.
  • Exit: ctx.appExit runs DSH's own bounded shutdown — the plugin tree is disposed, then a hard exit after 5 s if disposal hangs. The plugin adds its own force-exit fallback at 8 s, deliberately after that grace, so the tree always gets its turn and the fallback only catches "disposed but the event loop never drained".
  • Client half (lib/client.js): plain-DOM, no React, no build step. Loaded through window.__ModuleLoader__, it appends the floating button, shows the confirm card, and after confirming polls the origin until requests stop being answered — a rejected fetch is the only honest "it is really gone" signal available from inside the page.

Security

  • The route is loopback-only (peer socket + Host header + same-origin fence), matching the DSH plugin family convention.
  • Quitting spawns no process and writes no file. scripts/check.mjs fails the build if the host half ever grows a spawn again.

License

MIT

Repository

https://github.com/hadesybil-hub/dsh-restart-button

Compatibility

DSH 0.1.7-rc.1: failedDSH 0.1.7-rc.2: failedDSH 0.2.0-rc.1: failed

Versions

Latest versionPublishedSize
0.1.0——
0.1.1——
0.1.2——

Comments

Loading…

Similar plugins

dsh-restart-button

by FuriousKinght

A button at the foot of the sidebar that restarts the DSH desktop app and reloads the page when it comes back.

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Oct 29, 2026

dsh plugin --profile web add dsh-restart-button

by 1123762794

One-click restart button for the DSH Web UI: a sidebar footer button that restarts the dsh web process with a single click and persists across the restart it triggers.

UI & ExperienceDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 5

MIT

JavaScript

Aug 18, 2026

dsh plugin --profile web add dsh-web-restart

by BaoBao1996121

One-click, cross-platform restart button for the DSH web GUI. The loopback-only host route relaunches the exact current DSH invocation; the browser half injects the button.

UI & ExperienceDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 0

MIT

JavaScript

Aug 28, 2026

dsh plugin --profile web add dsh-restart-ui

by StabCut

DSH Desktop sidebar restart button: orderly relaunch of DSH Desktop from the sidebar settings row (based on desktopActions.requestRestart).

Manifest valid

★ 0

MIT

JavaScript

Aug 21, 2026

dsh plugin --profile web add dsh-plugin-restart-desktop

by wangbofan

DSH desktop (Windows) titlebar menu: a Restart button that closes and relaunches the whole app - shell + Host. Plugin-only, no app.asar patching.

Manifest valid

★ 0

MIT

JavaScript

Oct 14, 2026

dsh plugin --profile web add dsh-restart-button

Floating restart button for the DSH web GUI: restarts the dsh process in place with a full-screen overlay and auto-reloads the page; no launcher script required, works on Windows/macOS/Linux.

UI & ExperienceManifest valid

★ 0

dsh plugin --profile web add dsh-restart-fab