DeepSeek Harness Hub
← 返回列表

桌面启动器241793/DSH-Win-GUI

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

双击即开免命令,自动装齐组件并管理插件渠道

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/18 · 已提供中文文档

Deepseek Harness桌面版,为用户提供便捷安装操作,无需输入命令。内置QQBot、Wxclaw渠道连接功能,还有插件市场以及插件安装界面。添加cc-tui兜底插件

综合分
27.8
GitHub 分
27.8
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add 241793/DSH-Win-GUI
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

DeepSeek Harness 桌面端

基于 Electron 的 deepseek-harness Windows 桌面启动器。它不重新实现 Harness,而是把官方 dsh web 服务包装成一个双击即开、缺组件自动下载安装的桌面程序,并在此基础上提供互联渠道、插件市场、插件安装、技能管理、技能市场、定时任务、会话修复等增强功能。可当机器人对话使用

官方 CLI:@deepseek-ai/dsh(dsh 命令)。本项目是官方预留 Electron 壳形态的实用实现:Electron 主进程负责检测、安装、拉起后端,窗口加载官方 Web UI。

使用教程:下载安装即可https://github.com/241793/DSH-Win-GUI/releases/download/0.1.0/DeepSeek.Harness-Setup-0.1.0.exe

1. 功能特性

1.1 基础启动器

- 双击即开:单实例锁,重复双击只会聚焦已开窗口。
- 自动检测:启动时检测 Node.js(≥ 22.5.0)、npm、dsh(@deepseek-ai/dsh)、Web 前端资源。
- 缺组件一键安装:未安装时显示引导页,「下载并安装」按钮会自动:
1. 没有可用 Node.js 时,从 npmmirror 下载便携版 Node.js(免管理员权限);
2. 用 npm 从 npmmirror 安装 @deepseek-ai/dsh 到应用自管目录(优先复用全局已装的 dsh);
3. 实时显示下载进度与 npm 日志。
- 启动 Harness:拉起 dsh web --port 0,解析真实端口,把窗口导航到 http://127.0.0.1:。
- 退出清理:应用退出时 taskkill /T /F 清理后端进程树。
- 检查 DSH 更新:菜单栏「检查DSH更新」,从 npmmirror 获取最新版本,有新版本弹窗询问是否更新;点击「立即更新」后会弹出独立的「DSH 更新进度」窗口实时显示 npm 安装日志,更新完成后自动重启 dsh web。
- CC-TUI 终端修复:菜单栏「帮助」旁的「CC-TUI」或启动报错页的「CC-TUI 终端修复」按钮,会检测是否已安装 dsh-TUI(支持 cc-tui / tui 两种 profile,且会校验是否真正挂载了 dsh-cc-tui bundle);未安装或历史 dsh-tui 包损坏则自动安装(优先 npmmirror 的 dsh-cc-tui 包,失败时回退 GitHub tarball)并显示进度,已安装则打开系统终端里的 dsh --profile cc-tui 原生交互界面,方便 dsh web 报错时通过终端排查修复。

1.2 互联(渠道对接,集成在 Harness Web UI)

启动桌面端后,打开 Harness 界面「设置 → 互联」即可管理聊天渠道:

- QQ Bot:一键安装 @tencent-connect/dsh-qqbot 到 qqbot profile,一键启动并扫码绑定;显示已连接机器人信息(昵称 / Bot ID / AppID)。
- WxClaw(微信):内置自研 dsh-wxclaw 插件,使用微信 ilink Bot API(https://ilinkai.weixin.qq.com)扫码绑定微信账号;微信发消息给该账号,dsh 接收并回复。
- 账号管理:每个渠道支持「账号」弹窗查看已绑定账号,并支持删除 / 切换账号。
- 卸载:每个渠道支持一键卸载(dsh plugin remove 或删除自管目录)。
- 自动连接:已绑定凭据的渠道在应用启动后自动上线,无需手动启动。

1.3 插件市场(Harness Web UI → 设置 → 插件市场)

- 从 https://www.dshplugin.store/ 拉取插件列表(首页 HTML 解析,sitemap 兜底)。
- 支持搜索、分类筛选、已安装筛选。
- 每个插件显示名称、作者、介绍、star、分类,并提供:
- GitHub 按钮:打开插件源码仓库;
- 安装 / 卸载:自动解析安装命令并执行 dsh plugin add/remove,安装完成后自动重启 dsh web 生效;
- client-only 插件自动写入 profile 入口行,确保被 dsh 识别。

1.4 插件安装(Harness Web UI → 设置 → 插件 → 插件安装 Tab)

官方「插件」设置页新增「插件安装」Tab:

- 本地导入:选择本地插件文件夹(或 package.json),自动安装到 dsh 插件位置。
- 链接安装:输入插件链接(一般 GitHub 地址)→「查看」弹出插件信息 →「下载安装」。GitHub 仓库通过官方 tarball 下载到本地再安装,不依赖 git。
- 本界面安装列表:展示通过该 Tab 安装的插件,支持查看信息与删除。

1.5 技能管理(Harness Web UI → 设置 → 技能)

- 已安装:列出 dsh 当前可发现的 skill(名称、描述、来源),用户 ~/.dsh/skills 下的 skill 支持删除。
- 安装:
- 本地导入:选择包含 SKILL.md 的文件夹或单个 .md 文件,复制到 ~/.dsh/skills。
- 从链接安装:输入 GitHub 仓库链接,自动下载 tarball 并扫描 SKILL.md / skills/ 目录,安装到 ~/.dsh/skills。

1.6 技能市场(Harness Web UI → 设置 → 技能 → 技能市场)
- 支持自定义市场源,例如:https://github.com/anbeime/skill/tree/main/skills。
- 自动拉取该目录下的技能列表,显示名称、描述、适用场景、附加信息。
- 支持「查看」详情和「下载」安装到 ~/.dsh/skills。
- 市场源保存在 ~/.dsh/skill-market-source.json。

1.7 定时任务(Harness Web UI → 设置 → 定时任务)

- 支持新建 / 编辑 / 删除 / 启用 / 禁用 / 立即运行任务。
- 任务配置:名称、执行频率(间隔 / 每天 / 每周 / 单次)、提示词、模型、权限模式、指定技能、前置脚本。
- 使用 dsh 官方 headless 模式执行:dsh --profile headless --patch  "提示词"。
- 运行记录与完整日志保存在 ~/.dsh/scheduled-task-runs.jsonl,支持查看和删除。
- 应用启动时会自动向 ~/.dsh/skills/scheduled-task-management 写入说明 skill,让 dsh 知道桌面端具备定时任务功能。

1.8 会话修复(Harness Web UI → 设置 → 会话修复)

- 自动扫描 ~/.dsh/sessions 下所有 session.jsonl.zstd。
- 检测历史记录中的 seq 重复 / 乱序问题。
- 一键修复:自动备份、删除重复/乱序记录、重新压缩并校验。
- 修复依赖本机 python 与 zstandard 模块;应用启动时会把修复脚本释放到 userData 目录。

1.9 打包分发

- 提供 NSIS 安装包与免安装版两种产物。
- 应用图标、窗口图标、安装包图标、快捷方式图标统一使用 assets/icon.ico / assets/icon.png。

2. 实现原理

2.1 整体架构

┌────────────────────────────────────────────────────────┐
│                    Electron 主进程                        │
│                                                         │
│  main.js           窗口/单实例/菜单/IPC/生命周期/更新检查  │
│  detector.js       检测 Node、npm、dsh、前端资源           │
│  installer.js      下载便携 Node、npm 安装 dsh             │
│  backend.js        spawn "dsh web --port 0" 并探活        │
│  channels.js       互联渠道管理(QQBot / WxClaw)          │
│  marketplace.js    插件市场(dshplugin.store 抓取/解析)    │
│  plugin-install.js 插件安装 Tab(本地导入/链接安装/历史)    │
│  skills.js         技能列表/导入/链接安装/技能市场           │
│  scheduler.js      定时任务存储/调度/headless 执行/日志      │
│  session-repair.js 会话历史扫描与修复(内嵌 Python 脚本)    │
│  util.js           版本比较、命令执行、下载、解压等工具       │
└──────┬──────────────────────────┬──────────────┬─────────┘
│ IPC (contextBridge)     │ spawn        │ spawn
▼                         ▼              ▼
preload.js                dsh web 后端    渠道进程(dsh --profile ...)
renderer/                 (Web UI 3080)   qqbot / wxclaw
启动/检测/安装页              ▲
│                      │
│   dsh 设置页插件(src/connect-plugin,复制为 dsh-connect-center)
│   注册:设置 → 互联 / 插件市场 / 插件安装 / 技能 / 定时任务 / 会话修复
│   window.desktopAPI.connect / market / pluginInstall / skills / scheduler / repair
└── 检测通过后 win.loadURL(http://127.0.0.1:)

2.2 启动流程

1. 双击 exe → app.requestSingleInstanceLock() 防重复打开。
2. 显示启动页 → 渲染层通过 IPC 调用 detect-harness。
3. 主进程执行 detector.detectAll():
- 探测系统 Node(PATH 找 node,再查常见安装目录);
- 探测应用自管便携 Node(userData/runtime/node 下递归找 node.exe);
- 选一个可用 Node(优先系统,其次自管);
- 用 npm prefix -g、PATH 目录扫描、.npmrc、%APPDATA%\npm 等多路策略定位 dsh;
- 检查 \node_modules\@deepseek-ai\dsh\lib\bin.js 与前端 dist。
4. 检测通过 → 渲染层调用 start-harness → backend.js 拉起后端并导航。
5. 检测不通过 → 渲染层显示缺项列表和「下载并安装」按钮。

2.3 后端与插件装载

- dsh web --port 0 让系统分配空闲端口,解析 stdout 中 dsh web: http://127.0.0.1: 得到真实地址。
- 启动后端前,backend.js 会把内置的 dsh-connect-center UI 插件复制到
~/.dsh/profiles/web/node_modules/dsh-connect-center,并加入 web profile 的 bundles,
这样官方 Web UI 才会出现「互联」「插件市场」和「插件安装」Tab。

2.4 互联渠道原理

- channels.js 统一管理渠道的安装 / 启动 / 停止 / 切换账号 / 卸载 / 账号查看。
- 渠道定义在 CHANNELS 数组:QQ Bot 为 dsh-profile 型(安装官方 npm 插件),
WxClaw 为内置 dsh-wxclaw 本地插件。
- WxClaw 插件(plugins/dsh-wxclaw/)是参照 QQ Bot 插件写的 Cordis 插件:
- 未配置 token 时,调用微信 ilink Bot API 的 get_bot_qrcode(GET /ilink/bot/get_bot_qrcode?bot_type=3)显示二维码;
- 轮询 get_qrcode_status?qrcode= 直到扫码成功,拿到 token/botId 并持久化到 profile;
- 轮询 getupdates 拉取微信消息,交给 dsh agent;
- 监听 session/event,通过 sendmessage 把 dsh 回复发回微信(支持 context_token 24h 回复窗口)。
- 渠道进程的 stdout/stderr 实时回传 Web UI,二维码、绑定状态、账号信息均在界面展示。

2.5 插件市场与插件安装原理

- 插件市场:marketplace.js 抓取 dshplugin.store 首页 HTML,用正则解析插件卡片
(名称、作者、仓库、简介、star、分类);失败时用 sitemap.xml 兜底。
安装时抓取插件详情页,解析 dsh plugin --profile  add  命令并执行。
client-only 插件(无 dsh.bundle)自动往 web profile 的 cordis.patch.yml 写入
insert 入口行,让 dsh-client-modules 能发现其 dsh.client。
- 插件安装 Tab:plugin-install.js 负责:
- 本地导入:Electron 文件选择框 → dsh plugin --profile web add ;
- 链接安装:GitHub 仓库先下载官方 tarball 到 ~/.dsh/plugin-tarballs/,再
dsh plugin add ,避免依赖 git;
- 历史记录:~/.dsh/plugin-install-history.json,可查看信息、删除(dsh plugin remove)。
- 安装 / 卸载完成后,主进程自动重启 dsh web 后端并刷新窗口,使插件立即生效。

2.6 技能 / 技能市场原理

- skills.js 扫描标准 skill 根目录(~/.dsh/skills、~/.agents/skills、~/.dsh/.system/skills)。
- 技能市场通过 GitHub API 读取仓库目录树,识别 skills/ 下的 SKILL.md / .md,拉取 frontmatter 展示,并下载到 ~/.dsh/skills。

2.7 定时任务原理

- scheduler.js 每 30 秒检查一次任务是否到期。
- 到点后调用 dsh headless:dsh --profile headless --patch  "提示词"。
- 临时 patch 可覆盖模型、权限等配置;前置脚本输出会附加到提示词。
- 运行记录写入 ~/.dsh/scheduled-task-runs.jsonl。

2.8 会话修复原理

- session-repair.js 内嵌一个 Python 修复脚本。
- 脚本解压 .zstd 会话日志,按事件 seq 校验连续性,删除重复/乱序记录,必要时对尾部 seq 重编号,再重新压缩为 header + body 两个 zstd frame。
- 修复前自动备份原文件。

3. 使用方法

3.1 开发运行

cd D:\Python\开发\harness
npm install
npm start

国内网络加速:

$env:ELECTRON_MIRROR='https://npmmirror.com/mirrors/electron/'
npm install --registry=https://registry.npmmirror.com

也可以直接双击仓库根目录的 启动桌面端.cmd(优先启动 dist\win-unpacked 打包版;不存在时自动装依赖并 npm start)。

3.2 打包

cd D:\Python\开发\harness
npm run dist

产物在 dist\:

| 文件 | 说明 |
|---|---|
| DeepSeek Harness-Setup-0.1.0.exe | NSIS 安装包,可分发 |
| win-unpacked\DeepSeek Harness.exe | 免安装版,可直接双击运行 |

本项目仓库已内置 installer.nsi(带图标、快捷方式、注册表卸载信息)。如需完全由
electron-builder 重新生成,请设置 ELECTRON_BUILDER_BINARIES_MIRROR 后执行 npm run dist。

3.3 使用打包版

方式 A:安装包(推荐)

1. 双击 DeepSeek Harness-Setup-0.1.0.exe;
2. 选择安装目录;
3. 安装完成后双击桌面「DeepSeek Harness」图标启动。

方式 B:免安装版

1. 把 win-unpacked 整个文件夹拷到任意位置;
2. 双击 DeepSeek Harness.exe;
3. 可右键 → 发送到 → 桌面快捷方式。

3.4 使用互联(QQ Bot / WxClaw)

1. 启动桌面端,进入 Harness Web 界面。
2. 打开「设置 → 互联」。
3. 在渠道卡片上点「安装到 dsh profile」(WxClaw 会自动安装内置插件)。
4. 点「启动并扫码绑定」,按提示扫码:
- QQ Bot:手机 QQ 扫码;
- WxClaw:微信扫码。
5. 绑定成功后即可通过对应渠道与 dsh 对话;已绑定账号会在应用启动后自动上线。
6. 「账号」弹窗可查看 / 删除 / 切换已绑定账号;「卸载」可移除渠道。

3.5 使用插件市场 / 插件安装

- 插件市场:设置 → 插件市场,搜索 / 分类 / 安装 / 卸载 / 打开 GitHub。
- 插件安装:设置 → 插件 → 插件安装,本地导入或粘贴 GitHub 链接安装。

3.6 使用技能 / 技能市场

- 技能:设置 → 技能,查看已安装技能;「安装」页支持本地导入或 GitHub 链接安装。
- 技能市场:设置 → 技能 → 技能市场,输入市场源(如 https://github.com/anbeime/skill/tree/main/skills),保存后浏览并下载技能。

3.7 使用定时任务

- 进入 设置 → 定时任务,新建任务并配置频率、提示词、模型、权限、技能、前置脚本。
- 任务到点后自动执行;也可点「立即运行」手动触发。
- 运行记录和完整日志可在「运行记录」中查看或删除。

3.8 使用会话修复

- 进入 设置 → 会话修复,点「扫描损坏会话」。
- 出现损坏列表后点「修复」,应用会自动备份并修复历史记录。

4. 数据存放位置

- dsh profile / 会话数据:C:\Users\\.dsh(与官方 CLI 共用)。
- 应用自管运行时(检测不到全局 Node/dsh 时创建):\runtime\。
- 插件安装 Tab 的 tarball:~/.dsh\plugin-tarballs\。
- 插件安装 Tab 的历史记录:~/.dsh\plugin-install-history.json。
- 技能:~/.dsh\skills\、~/.agents\skills\。
- 技能市场源:~/.dsh\skill-market-source.json。
- 定时任务配置:~/.dsh\scheduled-tasks.json。
- 定时任务运行记录:~/.dsh\scheduled-task-runs.jsonl。
- 会话修复脚本:\session-repair\session-repair.py。
- 外观等 UI 偏好:浏览器 localStorage(Harness 页面内)。

5. 常见情况与处理

| 现象 | 原因 | 处理 |
|---|---|---|
| 启动页长时间停在「正在启动」 | dsh web 首次初始化较慢 | 等 30 秒;失败会显示错误日志 |
| 提示 Node.js 版本过低 | 系统 Node < 22.5.0 | 点「下载并安装」,应用自管便携 Node |
| 检测不到已安装的 dsh | npm 全局 prefix 不在默认位置 | 已做 PATH/.npmrc/%APPDATA%\npm 多路兜底;仍失败点「下载并安装」 |
| 下载慢 | 默认 npmmirror | 检查网络,可改 src/main/installer.js 的 NPMMIRROR |
| SmartScreen 提示 | 安装包未签名 | 点「更多信息 → 仍要运行」;正式分发建议签名 |
| 双击第二次没反应 | 单实例锁 | 属正常现象,窗口会被聚焦 |
| 插件市场加载慢 | dshplugin.store 首页较大 | 稍等;失败会自动用 sitemap 兜底 |
| 插件安装后不生效 | 未重启 dsh web / client-only 未写入口行 | 当前版本已自动重启并写入口行;如仍不生效发日志 |
| WxClaw 收不到消息 | 未绑定 / token 失效 / 网络问题 | 在「账号」中删除后重新扫码;查看渠道日志 |
| 快捷方式图标不显示自定义图标 | Windows 图标缓存 | 重启资源管理器或注销重登;安装包和 exe 已内嵌图标 |
| 历史记录报错 corrupt session log: seq gap | 进程被强制结束导致日志重复/乱序 | 打开「设置 → 会话修复」一键修复;平时避免强杀 dsh/Electron |

6. 源码目录说明

harness/
├─ package.json               # 项目元信息、scripts(start / dist)
├─ electron-builder.yml       # electron-builder 配置(NSIS、图标、electronDist)
├─ installer.nsi              # NSIS 安装脚本(图标、快捷方式、卸载注册表)
├─ 启动桌面端.cmd              # 双击启动脚本(优先打包版)
├─ README.md                  # 本文档
├─ VERSION.md                 # 本版本说明
├─ assets/
│  ├─ icon-source.svg         # 鲸鱼 SVG 源图标
│  ├─ icon.png                # 256×256 PNG(窗口/页面 logo)
│  ├─ icon.ico                # Windows 多尺寸图标(exe/安装包/快捷方式)
│  └─ icon-multi.ico          # 多尺寸 ICO 生成副本
├─ plugins/
│  └─ dsh-wxclaw/             # 内置 WxClaw 微信渠道插件(dsh Cordis 插件)
│     ├─ package.json
│     ├─ cordis.patch.yml
│     └─ dist/index.js
└─ src/
├─ main/                   # Electron 主进程
│  ├─ main.js              # 入口:窗口、菜单(检查DSH更新/CC-TUI/帮助)、IPC、生命周期
│  ├─ detector.js          # 环境检测
│  ├─ installer.js         # 一键安装 Node/dsh
│  ├─ backend.js           # dsh web 后端启动/停止 + 装载 dsh-connect-center
│  ├─ channels.js          # 互联渠道管理(QQBot/WxClaw/账号/切换/卸载)
│  ├─ marketplace.js       # 插件市场抓取/解析/安装/卸载
│  ├─ plugin-install.js    # 插件安装 Tab:本地导入/链接安装/历史
│  ├─ skills.js            # 技能列表/导入/链接安装/技能市场
│  ├─ scheduler.js         # 定时任务存储/调度/headless 执行/日志
│  ├─ session-repair.js    # 会话历史扫描与修复(内嵌 Python 脚本)
│  └─ util.js              # 工具函数
├─ connect-plugin/         # dsh 设置页插件(复制为 dsh-connect-center)
│  ├─ package.json
│  ├─ cordis.patch.yml
│  └─ lib/
│     ├─ index.js          # 主机端 no-op
│     └─ client.js         # 浏览器端:注册 互联 / 插件市场 / 插件安装 / 技能 / 定时任务 / 会话修复
├─ preload/
│  ├─ preload.js           # contextBridge:file: 全量 API;127.0.0.1 暴露 connect/market/pluginInstall/skills/scheduler/repair
│  └─ update-progress-preload.js  # DSH 更新进度窗口 preload
└─ renderer/               # 启动页 UI(connect.html/connect.js 为历史遗留,当前菜单已不入口)
├─ index.html / renderer.js / styles.css
├─ cc-tui-progress.html / cc-tui-progress.js   # CC-TUI 安装进度窗口
├─ update-progress.html / update-progress.js   # DSH 更新进度窗口
├─ connect.html / connect.js

7. 开源说明

- License:MIT。
- 本项目为 DeepSeek Harness 的桌面壳与增强插件集,Harness 本体版权归
deepseek-ai/deepseek-harness 所有。
- WxClaw 微信接口版权归微信 / ilink 平台所有,仅供个人学习与合规使用。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群