deepseek-harness-desktop

156Star5Fork6Issue0Watching

把官方 DSH 装进 Windows 桌面 EXE,预装 13 个功能插件与 10 款皮肤。

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
TypeScript
License
BSD-3-Clause
分支
main
ai-agentai-coding-assistantcodexdeepseekdeepseek-harnessdesktop-appdshdsh-plugin

安装

$ dsh plugin --profile web add github:ningbainb/deepseek-harness-desktop

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 ningbainb/deepseek-harness-desktop:先查看仓库 https://github.com/ningbainb/deepseek-harness-desktop.git 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

一句话定位

DeepSeek Harness Desktop 是把官方 DSH Web 界面装进 Windows 桌面 EXE 的 Electron 包装器,并预装 13 个功能插件与 10 款皮肤。它不是 DSH 插件本身,而是把同一套 DSH 体验打包成可双击运行的桌面应用,同时也作为 dsh-web-ui 全家桶(含任务看板、Git 图谱、桌宠、SSH、移动端远程等)的发布仓库。

核心能力

  • 将官方 DSH 装进 Windows EXE:Electron 在本机启动 @deepseek-ai/dsh(profile=desktop、port=0),通过 HTTP 健康探针确认就绪后用原生窗口加载该回环 URL;DSH 子进程只监听 127.0.0.1,导航策略禁止跳转到非 loopback / 非 https。
  • 预装 13 个功能插件与 10 款皮肤:任务看板、Git 图谱、桌宠、移动端远程、实时令牌统计、SSH、皮肤中心、图像描述、量身 Agent(量神)、Web UI 设置、Codex Connect、QQ Bot、Reasoning Slider 加 Windows XP、Minecraft 方块世界、Blue Fantasy、鲸吟、初音未来、交易终端、QQ2008 怀旧、同花顺风格、龙的传人、Harbor——一次安装全部加载,皮肤支持试穿 / 退出还原 / 一键应用。
  • QQ Bot 扫码接入:在扩展坞用腾讯官方 @tencent-connect/dsh-qqbot 扫码绑定 QQ 私聊与群聊;未绑定时插件保持禁用,绑定后 AppSecret 由 Electron safeStorage + Windows 凭据保护加密,只通过 DSH 子进程环境注入,不写入 renderer、cordis.patch.yml 或日志。
  • 自动更新与国内镜像测速回退:启动 15 秒后第一次检查 GitHub Releases,之后每 6 小时一次;默认测速 gh-proxy.com、ghproxy.net、ghfast.top 三个镜像作为下载源,版本元数据仍以 GitHub 官方为准;发现新版后台下载、弹窗展示中英双语更新说明,用户确认后才会重启并由安装器替换文件;升级不删除 DSH_HOME、桌面 profile、社区 bundle、桌宠状态、皮肤配置或已加密凭据。
  • 插件三层容灾:变更前快照、故障插件一次性自动隔离、连续失败后的安全模式;Shift 启动 / --safe-mode / 环境变量 DSH_DESKTOP_SAFE_MODE=1 进入安全模式后可一键恢复全部插件并重启。

技术实现

  • 语言: TypeScript / JavaScript(Electron 主进程为 Node ESM,渲染层由上游 DSH Web 提供)
  • 关键依赖: electron 43.4.0(宿主运行时,devDependencies)、@deepseek-ai/dsh 0.1.0-rc.6 与一组官方 DSH SDK 包(dependencies)、electron-updater 6.8.9(自动更新)、koffi 3.1.4(Windows Shift 键检测)
  • 架构模式: Electron 主进程 + Cordis bundle 注入;apps/dsh-desktop/src/main.mjs 抢单实例锁、加载 preload、注册 IPC;apps/dsh-desktop/src/profile.mjs~/.dsh/profiles/desktop 下写入隔离 profile,链接所有功能子包并维护 cordis.patch.yml;构建产物为 Windows NSIS x64 安装包(asar 打包、extraResources 注入图标)
  • 入口文件: apps/dsh-desktop/src/main.mjs(Electron 引导)、apps/dsh-desktop/src/electron-app.mjs(窗口、runtime、profile 协调)、apps/dsh-desktop/src/runtime-controller.mjs(DSH 子进程生命周期)、apps/dsh-desktop/src/profile.mjs(profile 与 cordis.patch.yml 管理)

适用场景

想在 Windows 上像普通软件一样启动 DSH、不必每次手动 dsh 命令起服务、也不希望自己处理 Node 与 pnpm 安装的用户。同时适合想一次性拿到完整 dsh-web-ui 增强套件(任务看板、Git 图谱、桌宠、SSH、移动端远程、皮肤中心、QQ Bot 等)的用户。仅需要 Web 端体验或在其他平台工作的用户可直接用上游 DSH,不必要求本桌面 EXE。

前置依赖与兼容性

依赖最低版本说明
DSH0.1.0-rc.6桌面应用通过 @deepseek-ai/dsh 等 27 个官方 SDK 包族隐式锁定(apps/dsh-desktop/package.json:33-83)
Node.js^22.19.0 || >=24.0.0由根 package.json#engines 声明(package.json:33-35);桌面 EXE 终端用户无需自行安装
pnpm11.22.0由 packageManager 字段声明,用于源码开发(package.json:36)
Electron43.4.0devDependencies;预编译产物随安装包发出(apps/dsh-desktop/package.json:78-82)
平台Windows x64electron-builder.yml#win.target 只声明 nsis/arch=x64,无 macOS/Linux 构建目标(electron-builder.yml:25-31)
原生模块electron / koffi / ssh2 / electron-updater随安装包预编译发布,运行时不再重新下载

安装方式

dsh plugin --profile web add github:ningbainb/deepseek-harness-desktop

如需桌面 EXE,请从 GitHub Releases 下载安装包:

https://github.com/ningbainb/deepseek-harness-desktop/releases/latest

配置项

本桌面应用无需额外配置。profile、cordis.patch.yml、皮肤选择、QQ Bot 启用状态等均由桌面端自动托管(apps/dsh-desktop/src/profile.mjs:190-213、apps/dsh-desktop/src/extensions/qqbot.mjs:52-79)。如需扩展坞安装社区 DSH bundle,扩展坞会基于当前 DSH 运行时、Electron Node.js、Desktop 版本和已安装 peer 版本自动判定兼容性,并在不兼容时给出原因。

常见问题

Q: 这个仓库装进 DSH 后会装什么?

A: 仓库根目录(apps/dsh-desktop)是 Windows 桌面应用,与 dsh plugin 安装机制并非同一回事;通过 dsh plugin 命令安装时,DSH 解析器会去 packages/ 下识别各个独立的 cordis bundle 子包(@linxin666/dsh-client-ui-task-board@linxin666/dsh-web-ui-all 等),实际生效的是这些子包。要用桌面 EXE,请从 GitHub Releases 下载安装包。

Q: 需要单独安装 Node.js 或 pnpm 吗?

A: 使用桌面 EXE 不需要,安装包自带官方 DSH、pnpm 与原生依赖。源码开发时需要 Node 22.19+ 与 pnpm 11.22+。

Q: 安装包打开时 SmartScreen 提示"未知发布者",正常吗?

A: 正常。当前安装包未做商业代码签名,Windows SmartScreen 会显示未知发布者。请只使用项目 Release 页面提供的安装包,并比对 SHA256SUMS.txt 中的 SHA-256 校验和。

Q: QQ Bot 是怎么接入的?安全吗?

A: 在桌面版的扩展坞(Tools > Extension Dock)打开 QQ Bot 卡片扫码绑定即可。未绑定时插件保持禁用;绑定后 AppSecret 由 Electron safeStorage + Windows 凭据保护加密保存,只通过环境变量注入 DSH 子进程,不会出现在 renderer、cordis.patch.yml 或日志中。

Q: 桌面版如何升级?

A: 应用启动 15 秒后检查一次 GitHub Releases,之后每 6 小时再查一次;发现新版本后台下载,完成后弹窗展示中英双语更新说明,确认后才重启并由安装器替换文件。升级不会删除 DSH_HOME、桌面 profile、社区 bundle、桌宠状态、皮肤配置或已加密的 QQ Bot 凭据。

Q: 安装路径有什么需要注意的?

A: 尽量使用默认路径;自定义安装根路径不要过长,部分原生工具仍受 Win32 260 字符路径限制。

Q: 启动时按住 Shift 或加 --safe-mode 会发生什么?

A: 启动会进入安全模式:所有第三方插件被禁用,仅保留官方与桌面自管 bundle;扩展坞插件恢复页提供"一键恢复全部插件并重启"。2.1 之前因 120 秒未就绪误判写入的未知故障安全模式也会在首次启动时被识别并撤销。

Q: 桌面版会监听外网吗?

A: DSH 子进程只监听 127.0.0.1 随机端口,浏览器渲染面走的是 Electron 窗口加载该回环地址;导航策略禁止跳转至非 loopback、非 https 之外的目标。

上手难度

入门 — 下载 EXE 双击安装即可;扩展坞扫码绑定 QQ Bot 一条主路径就能上手。源码开发需要熟悉 pnpm 工作区、Electron 与 Cordis bundle 机制,但终端用户不需要。

已知问题与限制

  • 当前只发布 Windows x64 NSIS 安装包,无 macOS / Linux 构建目标(electron-builder.yml:25-31)。
  • 安装包未做商业代码签名,Windows SmartScreen 会显示未知发布者;只信任项目 Release 页面提供的安装包(README.md:206)。
  • 自定义安装根路径不要过长;部分原生工具链仍受 Win32 260 字符路径限制(README.md:206)。
  • 升级时若旧进程仍在运行、文件被占用,安装器可能误报文件占用;2.1 起会通过父子进程关系自动结束旧应用与 resources 下的后台进程(CHANGELOG.md:9-27)。
  • 启动前会做运行时完整性预检;缺关键文件时直接报错(DSH_DESKTOP_INSTALLATION_INCOMPLETE)而不是进入崩溃重启循环,需重新安装或排查安全软件隔离(apps/dsh-desktop/src/runtime-integrity.mjs:8-47)。
  • Windows 上以隐藏 PowerShell 承载 DSH 子进程,依赖 PowerShell 可用;极少数精简 Windows 镜像缺少 PowerShell 时启动会失败(apps/dsh-desktop/src/runtime-controller.mjs:40-62)。
  • 移动端远程默认走局域网;公网访问需启用 cloudflared 隧道,会引入额外网络依赖(README.md:128)。
  • 通过 dsh plugin add github:ningbainb/deepseek-harness-desktop 安装与桌面 EXE 是两套不同路径:前者只激活 packages/ 下的 cordis bundle 子包,不会产生 Electron 桌面窗口;后者才是完整桌面应用。

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/ningbainb/deepseek-harness-desktop)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录