deepseek-harness-desktop-app

606Star32Fork6Issue0Watching

把 DSH Web 套进 Electron 桌面应用,加入项目管理、Git Worktree、Browser Workspace、Canvas、Site、Office 产物和本地主题,并注册 10 个应用自有工具。

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
JavaScript
License
MIT
分支
dev
agentic-workflowsai-agentai-workbenchdata-analysisdeepseek-harnessdesktop-appdshdsh-plugin

安装

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

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

对话式安装

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

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

一句话定位

DeepSeek Harness Desktop App 是 DeepSeek Harness(DSH)官方 Web 之上的一层 Electron 桌面外壳,把 DSH 的会话、Agent、Tool、Profile Bundle 与本地项目管理、Git Worktree、Browser Workspace、Canvas、Site、Office 产物合并到同一个桌面应用里。装到当前 DSH Web Profile 后,会自动给模型注册 10 个应用自有工具,并改写默认布局、侧栏、会话入口和通用设置页的根节点。

核心能力

  • 在 DSH Profile 上挂载三组私有 Profile Bundle:主题包、双面根 Client 包、10 个产品工具桥接包
  • 给模型注册 10 个应用自有工具:project_listconversation_list 用来枚举项目与对话,canvas_inspect / canvas_create / canvas_edit / canvas_suggest 处理 Canvas 与本地 Site,artifact_office_inspect / artifact_office_create / artifact_office_edit 处理 Office 产物,ui_render 渲染结构化交互界面
  • 提供产品级工作台五件套:结果与证据、浏览器、文件、产物、Site 五个标签页取代 DSH Web 的默认页
  • 接入项目管理、文件授权、Git Worktree 隔离开发、Browser Workspace 多标签浏览、本地 Office 文件预览与定点编辑、不可变版本 Canvas / Site
  • 暴露两款官方主题:professional-blue(默认,墨蓝底+钴蓝强调色)和 anime-blue(可选,看板娘风格);支持本地主题新建、导入、预览、编辑、导出、删除,但只能改颜色与外观 token,不能注入原始 CSS
  • 插件中心提供 Profile Bundle 兼容性检查与安装入口,用户已装的 Bundle 可以卸载
  • 在 DSH pre-step 把应用指令、项目指令和全局/项目记忆作为不可变用户消息注入上下文,并在 DSH Session Log 中保留 dsh-work-contextdsh-work-memory 来源

技术实现

  • 语言: JavaScript(三个 Bundle 包使用 ES Module)+ TypeScript(Electron 主进程与 Renderer 使用 TS/TSX)+ Vite/React 前端栈
  • 关键依赖: @deepseek-ai/cordis ^4.0.1(插件编排)、@deepseek-ai/dsh-agent ^0.1.0-rc.6(Agent 运行时)、@deepseek-ai/dsh-tools ^0.1.0-rc.6(工具注册)、@deepseek-ai/dsh-invariants ^0.1.0-rc.6(不变量校验)、@deepseek-ai/dsh-client-* ^0.1.0-rc.6(Client Loader 注入)、electron ^42 与 electron-updater 6.8.9(桌面宿主与更新)
  • 架构模式: 三个 private Profile Bundle 通过 dsh.bundle.patch(cordis.patch.yml)插入到当前 DSH Web Profile 的 Cordis 树;dsh-work-shell 同时禁用官方 ui-layout / ui-sidebar / ui-conversation / ui-settings-general 四个壳,再以自身作为可见根;dsh-product-bridge 监听 agent/createdtools/pre-executeagent/disposed,把 IPC 请求通过 Electron 主进程桥接到本机后端;进程间只发送 DSH Session id,身份与项目绑定在父进程
  • 入口文件: electron/main.js(Electron 主进程入口)、packages/dsh-product-bridge/src/index.js(Profile Bundle 1:产品桥接与 10 个工具)、packages/dsh-work-shell/src/index.js(Profile Bundle 2:根 Client 插件)、packages/dsh-theme-pack/src/index.js(Profile Bundle 3:主题数据)、renderer/src/app-init.ts(Renderer 启动初始化)

适用场景

适合希望把 DSH 从浏览器标签页搬进独立桌面 App 的重度用户:项目多、需要在多 Worktree 之间并行、经常同时打开会话、文件、Office 和网页对照阅读。Capable 之外典型场景是产品/设计/运营需要把对话、Markdown、Canvas、本地 Site、DOCX/XLSX/PPTX/PDF 全部留在一个桌面会话里同步追溯。如果只要一个最小 DSH 客户端,或只在 Linux 上跑,这个桌面应用还不在覆盖范围内(Linux 暂无桌面打包配置)。

前置依赖与兼容性

依赖最低版本说明
DSH0.1.0-rc.6三个 Profile Bundle 在 peerDependencies 中固定该版本族,未声明宽松范围
Node.js>=24.0.0(Bundle 兼容 ^22.19.0 / >=24)package.jsonelectron/package.jsonrenderer/package.json 的 engines 全部声明 >=24;三个 Bundle 的 engines 放宽到 `^22.19.0
平台macOS(arm64 与 x64)/ Windows x64macOS Apple Silicon 已通过开发与目录包验证;macOS Intel 通过 Rosetta 检查仍需实机验收;Windows x64 已接入构建流程,仍需安装包实机验收
原生模块electron / electron-updaterelectronelectron/package.json 引入;electron-updater 6.8.9 提供应用内更新;未涉及 node-pty、sqlite 等其他原生依赖
Windows arm64不支持README 平台状态章节明确标注
Linux暂无桌面打包配置renderer 可单独跑,但 Electron 桌面产物的打包配置未提供

安装方式

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

配置项

配置类型说明默认值
主题选择professional-blue | anime-blue切换官方主题;缺失时回落到 professional-blueprofessional-blue
明暗模式light | dark | system由 DSH Settings API 持久化为 ui-theme.preference,仅在尚无用户偏好时写入默认值system
背景颜色颜色 token个人背景调整,仅修改安全 renderer 颜色 token,不会注入远程图片跟随主题 bgColor
面板透明度百分比调节面板不透明度,独立于明暗与背景主题 panelOpacity
语言zh | en切换界面语言跟随系统
Bundle 安装源npm 精确版本包 | dsh-external 仓库 commit 地址必须在兼容性检查结果为"可以安装"后才能写入当前 Profile

主题相关的 varsmantineColorsappearance.bgColorappearance.panelOpacitylight/dark 两套色板完整定义在 packages/dsh-theme-pack/themes.json。第三方 Client UI Bundle(包含 dsh.client)一律在预检阶段被拒绝,不会进入 Renderer。

常见问题

Q: 这个插件跟 DSH 官方 Web 是什么关系?

A: 它不是 DSH Web 的 iframe,也没有复制一套 Agent 运行时。Electron 启动官方 DSH Web Profile,沿用同一套 Session、Agent、Tool、Skill、MCP、Settings、Profile Bundle 和 Client Loader;桌面壳建立在同一运行链上,并额外提供项目管理、文件授权、Browser Workspace、Git Worktree、Canvas、Site 和 Office 产物。

Q: 装上之后双击图标就能打开桌面应用吗?

A: 这个仓库本身是一个完整的 Electron 桌面应用代码库,需要本地 npm installnpm run doctornpm run dev 启动开发模式,或使用 npm run package:mac / npm run package:win 打包出 macOS DMG / Windows NSIS 安装器后再双击运行。

Q: 普通用户能装哪些 Bundle?第三方 Client UI 可以进入主窗口吗?

A: Tool、Skill、MCP、Hook 等 Host Bundle 可以进入 DSH 运行时。包含第三方 Client UI 的 Bundle 在预检阶段会被直接拒绝,直到它们能在拥有 Electron 权限的主窗口之外独立运行;随桌面应用一起发布且经过审核的 Client Bundle 不受此限制。

Q: 装上这个 Bundle 后模型多了哪些工具?

A: 模型额外获得 10 个应用自有工具:project_listconversation_list(只读项目/对话枚举)、canvas_inspect / canvas_create / canvas_edit / canvas_suggest(Canvas 与本地 Site 的读取/创建/编辑/行内建议)、artifact_office_inspect / artifact_office_create / artifact_office_edit(Office 产物的只读/写入)与 ui_render(结构化交互界面渲染)。

Q: 数据存在哪里?项目源码默认是只读吗?

A: Profile、Session、项目、运行记录和产物数据默认保存在本机 ~/.dsh。项目源码目录默认只读,Agent 写入需要用户明确授权。

Q: 哪些平台已经能用?哪些还在路上?

A: macOS Apple Silicon 已通过开发与目录包验证;macOS Intel 通过 Rosetta 检查但仍需 Intel 实机验收;Windows x64 已接入构建流程但安装包仍需实机验收;Windows arm64 不支持;Linux 暂无桌面打包配置。

Q: 模型写应用自有数据前需不需要批准?

A: 需要。tools/pre-execute 钩子会把 canvas_create / canvas_edit / canvas_suggest / artifact_office_create / artifact_office_edit 五个写入类工具拦下弹 DSH 审批,不会自动落入用户数据。

Q: 本地主题会不会夹带恶意 CSS 或远程图片?

A: 不会。本地主题只能改动颜色与外观设置,限定为 renderer-safe 的颜色 token;Bundle 的 Themes 描述符不允许注入原始 CSS、远程图片,也不允许改应用名称;过度宽松的字段会在加载时被丢弃。

上手难度

进阶 — 装好后可以直接用 DSH 默认的所有官方能力,并额外获得 10 个工具、五件套工作台和两款主题;但需要熟悉 DSH Session 的能力审批、Worktree 切回主检出再删除、子 Agent 模型继承等规则,否则容易踩到写入审批和分支状态机。

已知问题与限制

  • 桌面应用目前没有五列任务看板、独立定时任务页、Git 图谱、stage/unstage 面板或独立的终端页(README.md 当前边界章节)
  • 本地 Site 只支持预览和单文件导出,没有公开部署服务;公开分享仅提供只读查看
  • 没有移动端远程控制、二维码配对、公网隧道、SSH、SFTP 或端口转发
  • 子 Agent 可在对话与轨迹中执行,但还没有完整的独立管理页
  • Windows arm64 暂不支持;Linux 暂无桌面打包配置
  • macOS Intel 仍需实机验收,Windows x64 安装包仍需实机验收
  • rc.6 SDK 不再发布原 ProductHost 与项目工具包,因此本应用的 Bundle 直接持有全部 10 个工具及其父进程桥接(已知替代约束)
  • 依赖固定在 0.1.0-rc.6,未声明更宽版本范围;开发期间不同 RC 系列不能混装;运行 npmmirror 上的 latest 在某些细包上仍指向旧版本,需明确固定 next/rc.6 系列
  • 这三个 Bundle 都是私有包;成品构建必须携带相同审核版本和匹配的官方 NPM SDK 版本

收录徽章

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/vibeinging/deepseek-harness-desktop-app)

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

返回插件目录
deepseek-harness-desktop-app — DeepSeek Harness 插件 | deepseek-plugin.org