前言¶
使用 dsh(DeepSeek Harness)的 Web UI 时,常见流程是打开终端、执行启动命令,再打开浏览器。dsh-desktop-launcher 解决的是桌面入口问题:macOS 上生成 ~/Desktop/dsh.app,Linux 上生成 ~/.local/share/applications/dsh.desktop。双击入口后,可启动 Web UI 并打开浏览器。
它只处理桌面侧,不安装终端命令,也不修改 PATH。
这是什么¶
dsh-desktop-launcher 是 LvienOeria 维护的一个 dsh 插件,许可证为 MIT。它的作用是给 dsh 安装一个桌面双击启动器,适合需要把 Web UI 做成桌面入口、但不想额外安装终端命令的使用者。
核心功能¶
生成物¶
1、macOS 生成:
~/Desktop/dsh.app
双击 dsh.app 可启动 Web UI,并自动打开浏览器。
2、Linux 生成:
~/.local/share/applications/dsh.desktop
它作为应用菜单入口使用。
3、生成启动脚本:
~/.dsh-launcher-desktop/dsh-start.command
该脚本用于轮询 Web UI 地址并打开浏览器。
图标与体积¶
- 内置
whale与whale-dark两个 1024px PNG 图标。 - 零依赖,包体积约 147 KB。
边界¶
- 只碰桌面侧,不安装终端命令。
- 不修改
PATH。 - 终端命令在独立的
dsh-launcher包中。 - 不支持 Windows;在 Windows 上不会安装任何文件,只打一条警告。
安装与启用¶
前置条件¶
需要 dsh CLI 和 pnpm >= 9。如果当前环境中的 pnpm 版本较旧,可执行:
corepack enable
安装插件¶
从 npm 安装:
dsh plugin --profile web add dsh-desktop-launcher
从 GitHub 安装:
dsh plugin --profile web add github:LvienOeria/dsh-desktop-launcher
本地路径安装:
dsh plugin --profile web add ./dsh-desktop-launcher
生成启动器¶
安装完成后,启动一次 dsh:
dsh --profile web
如果当前目录是源码目录,也可以使用:
pnpm dsh web
启动后,macOS 桌面会出现 dsh.app;Linux 的应用菜单中会出现 dsh.desktop 对应的入口。
典型用法¶
自定义启动器¶
插件支持以下配置项:
launcherName:桌面应用或入口名称。iconStyle:内置图标样式,可用whale或whale-dark。iconFile:自定义图标文件路径。url:要轮询并打开的 Web UI 地址。sourceDir:源码目录。startCommand:自定义启动命令。autoOpenBrowser:是否自动打开浏览器。
这些配置用于调整启动器名称、图标、目标地址、启动命令和浏览器打开行为。
安全与卸载¶
安全提示¶
- 插件会管理自己生成的文件;没有
managed by dsh-desktop-launcher vX标记的已有文件或应用,会先备份为<path>.bak再替换。 - 非法配置会直接报错。
- 安装失败只打日志,不会拖垮 harness。
- macOS 首次启动时可能遇到 Gatekeeper,需要手动选择打开。
- 插件由 dsh 加载后在本机生成桌面文件,运行权限取决于当前 dsh 进程。安装前应检查源码和 MIT 许可证,只从可信来源安装。
卸载¶
先移除插件:
dsh plugin --profile web remove dsh-desktop-launcher
再删除插件生成的文件:
rm -rf ~/.dsh-launcher-desktop ~/Desktop/dsh.app
Linux 上如果使用了应用菜单入口,可额外删除:
rm -f ~/.local/share/applications/dsh.desktop
结尾¶
dsh-desktop-launcher 的能力比较集中:把 dsh Web UI 的桌面入口做轻、做干净。适合只想要 macOS/Linux 桌面双击启动、不想捆绑终端命令的使用者。
GitHub 仓库:https://github.com/LvienOeria/dsh-desktop-launcher