dsh-desktop
已验证 · 实测可装 Yuel25
功能简介
DeepSeek Harness的Windows桌面客户端
可用 — 实测通过,早期项目
DeepSeek Harness的Windows桌面客户端 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-desktop
面向 Windows 的 DeepSeek Harness 桌面客户端。
English · 中文
[!IMPORTANT]
本项目是社区开发的非官方桌面客户端,与 DeepSeek 官方无隶属、背书或合作关系。
功能
- 在无命令行窗口的情况下启动和管理
dsh web - 使用 Electron 窗口承载 DeepSeek Harness Web UI
- 自定义无边框标题栏、系统托盘和单实例运行
- 关闭窗口后驻留托盘,退出时清理本应用启动的 DSH 进程
- 检测已有的
127.0.0.1:3080服务并直接连接 - 通过 WSL 启动 Linux 环境中的 DSH,支持登录 Windows 后自动启动
- 记录 DSH 标准输出和错误日志
- 生成 Windows NSIS 安装包
当前状态
0.1.1 是第一阶段预览版。目前应用仍然依赖:
- Windows x64
- WSL2 与一个可用的 Linux 发行版
- 在 WSL 中全局安装的 DeepSeek Harness
dsh命令
应用尚未内置 DSH 运行时,而是启动 WSL 中现有的 DSH 安装。
快速开始
1. 在 WSL 中准备 DeepSeek Harness
npm install -g @deepseek-ai/dsh
dsh --version
如果需要社区 Web UI 插件,请先按插件自己的说明安装到 DSH 的 web profile。
2. 运行 dsh-desktop
从 GitHub Releases 下载 Windows 安装包,安装并启动。
如果 DSH 已经监听 127.0.0.1:3080,应用会连接现有实例;否则应用会通过 WSL 启动:
wsl.exe --exec bash -lc "dsh web"
默认使用 WSL 默认发行版。如需指定发行版,可在启动应用前设置 DSH_WSL_DISTRO 环境变量。
本地开发
pnpm install
pnpm run dev
常用命令:
pnpm run typecheck # TypeScript 检查
pnpm run build # 生产构建
pnpm run check # 类型检查 + 生产构建
pnpm run dist # 生成 Windows NSIS 安装包
构建产物位于 release/,该目录不会提交到 Git。
运行机制
Electron 主进程负责窗口、托盘和 DSH 子进程生命周期。启动时会先检查 127.0.0.1:3080:
- 端口已存在且服务可用:连接现有 DSH,不取得该进程的所有权。
- 端口不可用:通过 WSL 启动
dsh web,并在应用退出时终止本应用启动的 Linux 进程。 - 后端就绪后:窗口从本地加载页切换到 DSH Web UI。
日志保存在 Electron 的用户日志目录。可从托盘菜单选择“查看日志”。
安全说明
- DSH Web UI 默认只绑定
127.0.0.1。 - Electron renderer 禁止 Node.js 集成并启用上下文隔离。
- 外部链接交给系统默认浏览器打开。
- 应用不会在卸载时删除
~/.dsh或 DSH 会话数据。
如发现安全问题,请参阅 SECURITY.md。
路线图
- WSL 发行版选择与运行时诊断界面
- 设置界面与运行时诊断
- 自动更新和签名发布
- 完善安装、升级、卸载测试
贡献
请阅读 CONTRIBUTING.md。提交更改前请运行 pnpm run check。
许可证与品牌资产
项目代码使用 MIT License。DeepSeek Harness 官网图标不属于 MIT 许可范围,详情见 THIRD_PARTY_NOTICES.md。
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-desktop」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:Yuel25/dsh-desktop Headless(CLI)profile:
dsh plugin --profile headless add github:Yuel25/dsh-desktop 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。
使用场景
把 dsh 跑成原生桌面应用——独立窗口、托盘图标、快捷键——而不是浏览器标签。
适合谁
想要已安装应用的感觉和系统集成(托盘、全局热键、开机自启)的人。
二次开发建议
原生壳是缝——加全局快捷键、通知、单实例锁或按 OS 定制的行为。