HaoyueQin/deepseek-harness-desktop
A desktop shell for DeepSeek Harness — the pluggable AI agent harness from DeepSeek. Wrap the official dsh web UI into a native-feeling, always-on desktop app.
이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.
DeepSeek Harness Desktop
为 DeepSeek Harness(DeepSeek 开源的可插拔 AI Agent harness)打造的桌面应用壳,把官方 dsh web 界面包装成原生质感、常驻后台的桌面应用。
English | 简体中文
特性
- 零侵入包装 — 以子进程方式运行
dsh web(内置 Node 24 +@deepseek-ai/dsh),加载其 localhost 界面;harness 源码零改动,升级只需换版本号 - 无边框沉浸窗口 — 无原生标题栏;自绘窗口控制按钮(最小化/最大化/关闭)以 DeepSeek 品牌蓝 hover 融入页面,并随明暗主题切换
- 托盘常驻 — 关闭窗口隐藏到系统托盘而非退出,后端持续运行,随时秒开
- 开机自启 — 托盘菜单一键开关(Windows/macOS 原生实现;Linux 走 XDG autostart)
- 端口冲突免疫 —
--port 0让系统分配空闲端口,壳从 dsh 的 stdout 就绪行读取真实地址 - 数据隔离 —
DSH_HOME指向应用专属数据目录,不污染默认~/.dsh - 单实例 — 重复启动会聚焦已有窗口
- 插件自由不受限 — 动态插件(
cordis_define/cordis_run)、$DSH_HOME/cordis.patch.yml、npm 插件生态均与 Web 版完全一致 - 设置页桌面分区 — 设置页新增「桌面」标签页(UI 契合 harness 设计):开机自启开关、启动最小化开关、关于卡片(版本/数据/日志目录)、更新检查按钮,均与托盘菜单双向同步
- 自动更新 — 启动 15 秒后静默检查:Windows 下载后引导运行安装包(未签名无法静默安装);Linux AppImage 全自动替换;macOS 暂不支持(需签名)
界面预览

安装
从 Releases 下载对应平台的安装包:
| 平台 | 安装包 | 说明 |
|---|---|---|
| Windows | DeepSeek Harness Desktop Setup <ver>.exe | NSIS 安装包,x64 |
| macOS | .dmg(Apple Silicon / Intel) | 未签名 — 首次运行需右键 → 打开 |
| Linux | .AppImage + .deb | x64 |
首次启动
- 启动应用 — 内置的
dsh web服务在后台启动,界面就绪后自动打开 - 关闭「预览版」提示
- 打开 设置 → 模型 配置你的 LLM 供应商(API Key、模型、Base URL),与 Web 版一致
- 选择一个工作区,开始对话
日常使用
- 关闭窗口 → 应用隐藏到托盘(系统时钟附近出现 DeepSeek 鲸鱼图标),后端继续运行
- 托盘菜单(右键点击图标):重新打开窗口、开关开机自启、退出 — 只有「退出」才会真正停止后端
- 只能通过托盘退出;关闭窗口永远不会退出应用
开发
npm install # 安装 electron 43 及工具链
npm run dev # dev 模式:系统 Node + 本地 node_modules 的 dsh
electron 二进制下载卡住?(一直显示
Downloading Electron binary...) GitHub 托管的二进制在某些网络下很慢。可手动下载https://npmmirror.com/mirrors/electron/<版本>/electron-v<版本>-win32-x64.zip放入%LOCALAPPDATA%\electron\Cache\electron-v<版本>-win32-x64\,然后:printf "electron.exe" > node_modules/electron/path.txt # 并把 zip 解压到 node_modules/electron/dist/
打包
npm run build:runtime # 生成 resources/:内置 Node 24 LTS + dsh 依赖树 + 图标
# 网络不佳时:HTTPS_PROXY=http://127.0.0.1:8897 npm run build:runtime
npm run dist:win # Windows NSIS 安装包 → release/
# npm run dist:mac # macOS dmg(需 macOS 环境;CI 负责构建)
# npm run dist:linux # Linux AppImage + deb
CI 工作流(.github/workflows/release.yml)在每个 v* tag 上构建全平台产物并自动发布到 GitHub Release。
数据与日志
- 数据(
DSH_HOME):<userData>/dsh— profile、会话、存储 - 日志:
<userData>/logs/main.log - 内置运行时:
<安装目录>/resources/resources/— Node(runtime/node/)+ dsh(dsh/node_modules/)
项目结构
src/
main.ts 应用生命周期:单实例锁、窗口、托盘、dsh 编排
paths.ts dev/prod 资源路径解析(内置 dsh、Node、preload、patch)
settings.ts 壳设置(userData/settings.json — 启动最小化)
updater.ts electron-updater(Windows 引导 / Linux AppImage 全自动)
dsh/spawn.ts spawn dsh web --port 0 --patch,解析 stdout URL 行,优雅停止
dsh/ready.ts HTTP 就绪探测
tray.ts 托盘菜单(打开 / 开机自启 / 退出)+ 自启勾选同步
autostart.ts 开机自启(win/mac 原生 + linux XDG 文件)
preload.ts contextBridge 桥(窗口控制 + 桌面 IPC;编译为 CJS)
scripts/
install-runtime.mjs 构建时填充 resources/(Node + dsh 树 + 图标 + 平台裁剪)
smoke.mjs 无 GUI 冒烟:spawn dsh,断言 URL 行 + HTTP 200
resources/
desktop-integration/ 设置页「桌面」分区插件(dsh 浏览器 half)
desktop-patch.yml 壳注入的 patch(挂载该插件)
assets/
wordmark.svg 项目标识
已知限制(v1)
- 安装包约 150MB+(内置 Node + dsh 完整依赖树),体积裁剪在路线图上
- macOS 构建未签名 — Gatekeeper 首次运行需右键 → 打开;macOS 暂不支持自动更新(需签名证书)
- dsh 处于 developer preview,迭代快速;壳锁定
@deepseek-ai/dsh版本,升级需重新打包验证 - Windows 自动更新为引导模式(下载后运行安装包)而非静默安装,源于未签名构建
反馈
发现 Bug?有功能想法?非常欢迎提交 issue — 问题报告、使用疑问、功能建议都行。
- 新建 issue(中文或 English 均可)
- harness 本身的问题,可同步查阅上游 deepseek-harness discussions
许可
보안 및 설치 증거
이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.
공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.
저장소가 MIT 라이선스를 선언했습니다.
최근 180일 내 코드 업데이트가 있습니다.
재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.
검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.