Skip to content
dsh.fish
Bundle

dsh-restart-ui

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.

Source
BaoBao1996121
License
MIT
Updated
Updated yesterday

Readme

# dsh-restart-ui

[中文](./README.zh-CN.md)

A small DeepSeek Harness plugin that adds a restart button to the Web UI.

It restarts the exact DSH invocation that is currently running, so it works
with source checkouts, installed CLIs, portable Node.js, and custom profiles
without hard-coded machine paths.

## Install

Install the tagged release into the Web profile:

```powershell
dsh plugin --profile web add 'github:BaoBao1996121/dsh-restart-ui#v0.1.1'
```

When running DSH from a source checkout, use its source launcher instead:

```powershell
corepack pnpm dsh plugin --profile web add 'github:BaoBao1996121/dsh-restart-ui#v0.1.1'
```

Restart DSH after installation. A `⟳ Restart` button appears in the session
header utilities area.

## How it works

- The client bundle adds one button and calls a same-origin POST endpoint.
- The host endpoint accepts loopback requests only.
- A package-local Node helper waits for the old process to exit, then relaunches
  the same executable, Node arguments, CLI arguments, and working directory.
- The route registration is owned by the plugin lifecycle and is removed when
  the plugin is disabled.

The package commits its built `lib/` artifacts. GitHub installs therefore do
not need to run a lifecycle build script or request pnpm build permission.

## Development

Requires Node.js `^22.19.0 || >=24.0.0` and pnpm 11.

```powershell
corepack pnpm install --frozen-lockfile
corepack pnpm check
```

## Remove

```powershell
dsh plugin --profile web remove dsh-restart-ui
```

## Security

Restarting DSH executes code with the current user's privileges. This plugin
does not accept a command or filesystem path from the browser: it starts one
fixed helper shipped in this package, and that helper reuses the current DSH
process invocation. Review and pin the release you install.

## License

MIT. This is an independent community plugin and is not affiliated with or
endorsed by DeepSeek.

Install

dsh plugin --profile web add github:BaoBao1996121/dsh-restart-ui

Profile: web

  • This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source