deepseek-harness-desktop

41Star1Fork2Issue0Watching

官方 DeepSeek Harness 的自包含桌面壳,自带 Node 运行时,支持 macOS 与 Windows,提供用量统计、插件管理和故障回滚。

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
JavaScript
License
MIT
分支
main
ai-agentscoding-agentcross-platformdeepseekdeepseek-harnessdesktopdesktop-appdsh

安装

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

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

对话式安装

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

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

一句话定位

DSH Desktop 是一个把官方 DeepSeek Harness 体验装进桌面窗口的轻量壳程序,自带 Node.js 运行时,让用户在 macOS 或 Windows 上无需安装 Node 也无需手动敲命令就能启动 Harness。

核心能力

  • 一键启动并托管官方 dsh web,进程崩溃或重启时自动收敛
  • 在 macOS 标题栏展示今日 / 近 7 天的 Token、估算费用、活跃任务数与运行吞吐率
  • 在 Settings 里粘贴 github:owner/repo 或完整 dsh plugin 命令安装社区插件,启动失败自动回滚到上一份可用配置
  • 跟随系统侧栏显示"桌面版 + Harness 内置版本"(例如 DSH Desktop v0.3.0 · Harness rc.8),并内置 GitHub Releases 更新检查
  • 在 Settings 中按需下载并启用 Codex、Claude Code 子代理运行时,自动创建对应的 Agent 预设
  • 提供可选的"平滑流式输出"开关,新内容以更柔和的方式逐字出现,不延迟模型返回

技术实现

  • 语言: TypeScript(Electron 主进程、客户端模块)+ Rust(Tauri macOS 壳)+ JavaScript(注入到 WebView 的桥接脚本)
  • 关键依赖: @deepseek-ai/dsh@0.1.0-rc.8(被托管的官方 Harness 运行时)、@deepseek-ai/dsh-host-apiproxy(用于调用 Harness 设置 API)、tauri@2(macOS 壳)、electron@43(Windows 壳)、react@18(设置面板 UI)
  • 架构模式: 桌面壳仅负责窗口与进程生命周期。它把内置 Node 作为子进程 spawn dsh web --host 127.0.0.1 --port 0 --no-open,等待 dsh web: http://127.0.0.1:PORT 就绪行,再把 URL 装载进系统 WebView;WebView 中再注入更新检查、平滑流、用法计量、选择保护、插件管理桥等脚本。插件改动通过 profile 快照和 last-known-good 回滚机制保证启动安全。
  • 入口文件: src/main.ts(Electron 主进程,Windows)、src-tauri/src/main.rs(Tauri 主入口,macOS)、src/dsh-desktop-settings-plugin/desktop.patch.yml(DSH Host 在加载时插入 UI 注入项)

适用场景

已经在 macOS 或 Windows 上使用 DSH CLI 但希望免去终端步骤的普通用户;希望官方 Harness 在系统 WebView(macOS 的 WKWebView)中运行而不是 Chromium 的用户;希望桌面版附带用量监控、插件可视化管理、原生更新提示等附加能力,而不直接修改官方 Harness 源码的用户。

前置依赖与兼容性

依赖最低版本说明
DeepSeek Harness0.1.0-rc.8桌面壳在内部固定使用此版本(侧栏会展示),与外部 dsh CLI 共享 DSH_HOME
Node.js22.19.0 及以上macOS Tauri 包内置 Node sidecar,无需用户安装;开发与 Windows Electron 构建由宿主运行时提供
macOS11.0 (Big Sur) 及以上仅 Tauri 包可用;同时提供 Apple Silicon 与 Intel 安装包,macOS 安装包控制在 90 MB 以内
WindowsWindows 10 / 11 x64仅 Electron 包可用,提供 NSIS 安装版与便携 ZIP
Linux未发布二进制target_triple() 源码层支持 x86_64 与 aarch64,但官方未提供打包产物
原生模块package.json 未声明 node-gyp 原生依赖;Tauri/Electron 各自处理原生侧

安装方式

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

桌面壳本身以安装包形式分发(macOS .dmg、Windows .exe/.zip)。dsh plugin add 命令安装的是这个仓库内置的 dsh-desktop-settings-plugin 客户端插件,用于在桌面 UI 中暴露插件管理与子代理安装入口。

配置项

配置类型说明默认值
DSH_HOME环境变量覆盖 DSH 配置目录;桌面壳与官方 CLI 共享此目录,缺省时为 ~/.dsh~/.dsh
SPIKE_HOME环境变量仅 Tauri 内部使用;未设置时回退到 $HOME 并在其下使用 .dsh 子目录未设置
DSH_DESKTOP_ACTION_TOKEN环境变量内部动作协议 dsh-desktop://action/... 的鉴权 token;缺省时随机生成随机生成
desktop-preferences.jsonsmoothStreamEnabled布尔值是否启用"平滑流式输出"(柔化模型文本出现方式)true

桌面壳本身不要求用户手工编辑任何文件;以上变量仅在排查或迁移数据目录时需要调整。

常见问题

Q: 桌面壳和我本机装的 dsh CLI 是同一份代码吗?

A: 不是。桌面壳内置的 DSH 固定为 0.1.0-rc.8,由壳独立升级;本机的 dsh CLI 仍然是你自己 npm i -g 的版本。两边通过 $DSH_HOME(默认 ~/.dsh)共享配置、工作区和会话记录。

Q: 安装第三方插件会不会破坏现有配置?

A: 安装过程中壳会先做一份 profile 快照(last-known-good),并在新 Harness 启动失败 5 秒内自动回滚。如果启动正常,会保留新配置。手动安装前请检查插件的发布者和源码,第三方插件会在本机执行代码。

Q: macOS 包为什么这么小?

A: 因为采用 Tauri 并复用系统的 WKWebView,不打包 Chromium。完整的 Harness rc.8 运行时随应用一起分发,所以不需要本机 Node.js,安装后双击即可运行。

Q: 标题栏里的费用估算准确吗?

A: 这是按本地会话日志统计的估算,仅供参考。能匹配到公开价格的模型会换算费用,无法匹配价格表(如未公开或自定义模型)的会明确标记为"未定价",不会被算成免费。

Q: Codex / Claude Code 子代理是什么?要不要装?

A: 它们是 DSH 内置 Agent 预设里的可选子代理。Codex 让 Agent 把编码任务交给 OpenAI Codex CLI,Claude Code 同理(交给 Claude Code CLI)。它们各自有独立的登录态与配置;桌面壳提供下载运行时、创建预设、设为新会话默认三个按钮,仅在你确实需要这类编码子代理时才需要装。

Q: 桌面壳支持 Linux 吗?

A: 源码层面 Rust 的 target_triple() 同时支持 x86_64-unknown-linux-gnuaarch64-unknown-linux-gnu,但官方 GitHub Release 只提供 macOS 与 Windows 安装包,Linux 用户需自行构建。

Q: 如何卸载?

A: 直接删除应用并删除 $DSH_HOME(默认 ~/.dsh)即可;如有勾选"在终端启用 dsh 命令",先在 Settings → Plugins → Install & manage → Command-line integration 里点击"移除命令"再卸载应用。

Q: 启动时提示"Harness did not become ready within …ms"怎么办?

A: 这意味着内置 Harness 在 90 秒内没有打印就绪 URL(Electron 路径)或 120 秒内未就绪(Tauri 路径)。常见原因是端口被占用或 DSH_HOME 目录权限异常,错误信息会附带最近 40 行 Harness 输出,按提示定位即可。

上手难度

入门 — 仅需下载安装包、配置模型 API Key 即可使用;普通用户无需了解内部端口、profile 快照、动作协议等技术细节。

已知问题与限制

  • DeepSeek Harness 仍处开发者预览阶段,未来版本可能引入不兼容改动;桌面壳目前固定捆绑 0.1.0-rc.8,新 Harness 升级随壳版本同步发布
  • macOS 包采用 ad-hoc 签名,发行版需要 Apple Developer ID 才能公证;本地或带 tag 的构建未公证,首次打开可能需要在"系统设置 → 隐私与安全性"中放行
  • macOS 安装包最低系统要求为 macOS 11.0(Big Sur),不支持更早版本
  • 官方仅分发 macOS 与 Windows x64 安装包;Linux 没有打包产物,需要自行用 scripts/build-tauri.shnpm run dist 构建
  • Windows 路径下使用 Electron,体积大于 macOS 的 Tauri 包;两者体积、签名流程与文件位置均不同

收录徽章

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

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

返回插件目录