Introduction¶
When using the Web UI of dsh (DeepSeek Harness), the typical workflow is to open a terminal, execute the startup command, and then open a browser. dsh-desktop-launcher solves the desktop entry problem: on macOS, it generates ~/Desktop/dsh.app; on Linux, it generates ~/.local/share/applications/dsh.desktop. After double-clicking the entry, the Web UI can be launched and the browser opened.
It only handles the desktop side, does not install terminal commands, and does not modify PATH.
What is this¶
dsh-desktop-launcher is a dsh plugin maintained by LvienOeria with an MIT license. Its purpose is to install a desktop double-click launcher for dsh, suitable for users who need the Web UI as a desktop entry but do not want to install additional terminal commands.
Core Features¶
Generated Files¶
- macOS generates:
~/Desktop/dsh.app
Double-clicking dsh.app launches the Web UI and automatically opens the browser.
- Linux generates:
~/.local/share/applications/dsh.desktop
It is used as an entry in the application menu.
- Generates a startup script:
~/.dsh-launcher-desktop/dsh-start.command
This script is used to poll the Web UI address and open the browser.
Icons and Size¶
- Includes built-in
whaleandwhale-dark1024px PNG icons. - Zero dependencies, package size is approximately 147 KB.
Scope¶
- Only touches the desktop side, does not install terminal commands.
- Does not modify
PATH. - Terminal commands are in a separate
dsh-launcherpackage. - Does not support Windows; on Windows, no files are installed, only a warning is issued.
Installation and Enablement¶
Prerequisites¶
Requires dsh CLI and pnpm >= 9. If the current environment has an older pnpm version, you can execute:
corepack enable
Install the Plugin¶
Install from npm:
dsh plugin --profile web add dsh-desktop-launcher
Install from GitHub:
dsh plugin --profile web add github:LvienOeria/dsh-desktop-launcher
Install from a local path:
dsh plugin --profile web add ./dsh-desktop-launcher
Generate the Launcher¶
After installation, launch dsh once:
dsh --profile web
If the current directory is the source directory, you can also use:
pnpm dsh web
After starting, dsh.app will appear on the macOS desktop; on Linux, an entry corresponding to dsh.desktop will appear in the application menu.
Typical Usage¶
Customize the Launcher¶
The plugin supports the following configuration options:
launcherName: The name of the desktop application or entry.iconStyle: Built-in icon styles, available aswhaleorwhale-dark.iconFile: Path to a custom icon file.url: The Web UI address to poll and open.sourceDir: Source code directory.startCommand: Custom startup command.autoOpenBrowser: Whether to automatically open the browser.
These configurations are used to adjust the launcher name, icon, target address, startup command, and browser opening behavior.
Security and Uninstall¶
Security Tips¶
- The plugin manages the files it generates; existing files or applications without a
managed by dsh-desktop-launcher vXtag will be backed up as<path>.bakbefore being replaced. - Illegal configurations will result in an error.
- Installation failures only log errors and will not crash the harness.
- On first launch on macOS, you may encounter Gatekeeper and need to manually select to open.
- After the plugin is loaded by dsh, it generates desktop files locally on the machine, and execution permissions depend on the current dsh process. Before installation, you should check the source code and MIT license and only install from trusted sources.
Uninstall¶
First, remove the plugin:
dsh plugin --profile web remove dsh-desktop-launcher
Then, delete the files generated by the plugin:
rm -rf ~/.dsh-launcher-desktop ~/Desktop/dsh.app
On Linux, if you used the application menu entry, you can additionally delete:
rm -f ~/.local/share/applications/dsh.desktop
Conclusion¶
The capabilities of dsh-desktop-launcher are focused: making the desktop entry for the dsh Web UI lightweight and clean. It is suitable for users who only want to launch via double-click on macOS/Linux and do not want to bundle terminal commands.
GitHub repository: https://github.com/LvienOeria/dsh-desktop-launcher