Provides start, exit, and restart controls in the dsh Web interface, along with a Windows foreground launcher; minimizes the terminal after the WebUI is ready.
The plugin will be installed here. Keep web if you are unsure.
npx -y @deepseek-ai/dsh plugin --profile web add github:KeS1Ke/dsh-start-and-exit#9fcd75bc27dae7331741f912f90e9754996cb5d5
Compatibility and provenance
Start And Exit is published as @kesike/dsh-start-and-exit and currently resolves to version 0.2.7. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.
> [!IMPORTANT]
> Exit and restart actions are explicitly confirmed. The Windows launcher only accepts a dsh Web service bound to `127.0.0.1` and keeps its terminal process recoverable from the taskbar.
✨ What it does
dsh-start&exit adds a dedicated Start / Exit / Restart section to the dsh settings panel. It uses the highest settings order so newly installed settings plugins appear above it.
Opens a confirmation modal before doing anything destructive.
Keeps the Start / Exit / Restart section at the bottom of the settings navigation.
Starts the dsh Web profile through a visible Windows Terminal/PowerShell launcher when requested.
Provides a standalone Windows foreground launcher that minimizes the terminal only after the local WebUI is ready.
Calls the typed dshExit/exit Remote method only after confirmation.
Gives the gateway a short acknowledgement window, then ends the host process.
Releases every port held by that process; the settings page displays the current dsh Web host and port.
Keeps the terminal window and browser tab available for the next action.
Uses the existing dsh design tokens and the Lucide power icon.
🎬 GitHub showcase
Follow the exit flow below, then see the plugin in a running dsh settings panel.
The capture below is a current dsh settings view with dsh-start&exit installed. The red Exit entry is the plugin's real navigation item at the bottom of the settings list.
Declares the host entry, web client, and bundle patch.
The npm package stays focused on runtime files and package metadata. The Windows launcher and icon are repository utilities; additional screenshots and source materials are provided below:
Install the published package directly into the dsh Web profile:
dsh plugin --profile web add @kesike/dsh-start-and-exit
Restart the profile after installation. The dsh host loader resolves the bare runtime imports, so this package intentionally declares no runtime dependencies. To update or remove it:
dsh plugin --profile web update @kesike/dsh-start-and-exit
dsh plugin --profile web remove @kesike/dsh-start-and-exit
Package rename: existing @kesike/dsh-exit and @kesike/dsh-start-exit installations should be removed and replaced with @kesike/dsh-start-and-exit.
🖥️ Windows foreground launcher
The repository includes an optional desktop launcher for Windows:
PowerShell 7 → scripts/launch-dsh-foreground.ps1 → dsh --profile web
The launcher keeps the dsh process in a visible foreground terminal while it starts. After http://127.0.0.1:3080/ returns a successful response, it calls Windows SW_MINIMIZE on that same terminal. The terminal is minimized, not hidden or detached, and remains restorable from the taskbar.
It refuses to start or keep dsh running when the selected port has a non-loopback listener. Do not commit personal .lnk files, profile directories, logs, npm caches, or generated archives; create the shortcut locally and point its icon to assets/dsh-launcher-hq.ico.
🖥️ UI behavior
Interaction
Result
Click Start
Starts the dsh Web profile through the host launcher.
Click the red Exit item at the bottom of Settings navigation
Opens the exit section and confirmation action.
Click Restart
Schedules a new foreground dsh terminal after the current host closes.
Click Cancel, press Esc, or click outside
Closes the modal without changing the host.
Click Confirm exit
Disables duplicate actions and invokes the host Remote method.
Remote call fails
Restores the controls and shows an inline error message.
Remote call succeeds
Closes the modal; the host exits shortly afterward.
🔌 Remote contract
The host advertises a strict, parameterless Remote method:
The client-side dsh gateway returns the standard envelope { ok: true, value: true } on success. Exit and restart guard repeated calls, return the response before shutdown, and keep the host bound to the loopback-only Web surface.
🧪 Development checks
Run the lightweight syntax checks from the project root:
node --check lib/index.js
node --check lib/client.js
npm test
🗺️ Quick reference
Target: DeepSeek Harness web profile
Install mode: npm package
Surface: final section in the Settings navigation plus an optional Windows launcher
Actions: start · exit · restart
Runtime binding: loopback-only (127.0.0.1)
Repository topics:dsh · deepseek-harness · dsh-plugin · dsh-start-and-exit · plugin · javascript · web · windows · powershell
The power icon comes from Lucide and is used under its ISC license.
One small surface for starting, exiting, and restarting dsh safely.