# DSH Whale Desktop Launcher
[中文](README.zh-CN.md) | English
A Windows desktop launcher plugin for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness). It creates an icon-branded `DeepSeek Harness.exe` on the desktop, starts the local DSH Web service in the background when needed, and opens the UI in Microsoft Edge or Google Chrome app mode without tabs, an address bar, or ordinary browser toolbars.
This repository is a fork of [HUITianYi/dsh-whale-desktop-launcher](https://github.com/HUITianYi/dsh-whale-desktop-launcher) that adds a startup progress window, a system tray controller, and high-DPI aware rendering.
## Features
- One click starts or reconnects to `dsh web` without opening a terminal window.
- A small floating progress window appears during startup, showing each phase (checking the service, starting the server, waiting for readiness, opening the UI).
- A system tray icon (same whale-girl artwork) stays resident while the launcher runs: hover to see the current status, left-double-click to open the UI, and use the menu to open the UI, restart the service, or quit (which stops the DSH server process).
- Single instance: double-clicking the desktop icon again while the launcher is running simply re-opens the UI window.
- Chromium `--app` mode provides a compact desktop-style window.
- The whale-girl PNG and multi-resolution ICO are bundled in the plugin.
- The current DSH executable, arguments, and working directory are captured when the bundle activates, so npm and source checkouts both work.
- Existing healthy servers are reused; a different service occupying the configured port fails visibly.
- Readiness detection tolerates the `dsh-ui-auth` login page: unauthenticated page requests are redirected to `/auth/login`, and the served login page counts as the DSH stack being up.
- Upgrades replace the previous launcher build on the desktop; the installer only refuses to overwrite a same-named file that is not a Windows executable.
- No `preinstall`, `install`, `postinstall`, or `prepare` lifecycle scripts run during package installation.
## Requirements
- Windows 10 or Windows 11.
- DeepSeek Harness with the `web` profile.
- Microsoft Edge or Google Chrome.
- Node.js 22.19 or newer, as required by DSH.
## Install
Install the bundle into the Web profile:
```powershell
dsh plugin --profile web add github:0QwQ0/dsh-whale-desktop-launcher#v0.3.0
```
Restart `dsh web` once. Plugin activation writes the portable launcher configuration under `~/.dsh/whale-desktop-launcher/` and creates:
```text
Desktop\DeepSeek Harness.exe
```
Double-click the desktop application for later launches.
## Optional whale-maid skin
The launcher works with the related non-commercial [`Small-tailqwq/dsh-deep-whale`](https://github.com/Small-tailqwq/dsh-deep-whale) skin:
```powershell
git clone https://github.com/Small-tailqwq/dsh-deep-whale "$HOME\.dsh\plugins\dsh-deep-whale"
dsh plugin --profile web add "$HOME\.dsh\plugins\dsh-deep-whale\maid-atelier"
```
That skin has its own CC BY-NC-SA 4.0 license and attribution requirements.
## Uninstall
Remove the DSH bundle:
```powershell
dsh plugin --profile web remove dsh-whale-desktop-launcher
```
The plugin deliberately does not delete user-facing files on unload. Remove these manually if desired:
```text
%USERPROFILE%\Desktop\DeepSeek Harness.exe
%USERPROFILE%\.dsh\whale-desktop-launcher\
```
## Development
```powershell
npm run build:launcher
npm test
npm run pack:check
```
The prebuilt executable is committed under `assets/`, so installing from GitHub does not require build-script approval.
## Licenses
- Source code: [MIT](LICENSE).
- Whale-girl artwork: [CC BY-NC-SA 4.0](ASSET_LICENSE.md), non-commercial use only.
This is a community project and is not an official DeepSeek AI product.