dshbase

插件目录 / Desktop / dsh-desktop

dsh-desktop

已验证 · 实测可装 kevenxz

✓ 持续维护 基于 1 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

2Stars
0Forks
0未关闭 issue
JavaScript语言
2026-08-13最近推送
跨平台平台

功能简介

DeepSeek Harness Windows桌面客户端:原生窗口、托盘、共享DSH配置和会话

✅
我们的评价
可用 — 实测通过,早期项目

DeepSeek Harness Windows桌面客户端:原生窗口、托盘、共享DSH配置和会话 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

DeepSeek Harness Desktop icon

DeepSeek Harness Desktop

把 DeepSeek Harness Web UI 带到原生 Windows 桌面。

Platform
Electron
DSH
License

DeepSeek Harness Desktop 是一个轻量的 Windows 桌面封装。应用启动时会在本机回环地址上运行随包提供的 dsh web,等待服务就绪后再用安全隔离的 Electron 窗口加载它。无需每次手动打开终端和浏览器,同时继续使用本机已有的 DSH profile、会话、凭据和设置。

[!NOTE]
这是社区项目,并非 DeepSeek 官方发行版。核心能力来自 DeepSeek Harness。

功能特性

  • 双击启动:自动运行 dsh --profile web 并打开原生窗口
  • 无端口冲突:默认动态选择一个空闲的本地端口
  • 数据复用:沿用 $DSH_HOME,默认位置为 %USERPROFILE%\.dsh
  • 托盘常驻:关闭窗口仅隐藏应用,后台会话和任务继续运行
  • 托盘菜单:显示主窗口、浏览器打开、查看日志、完全退出
  • 单实例:重复启动时自动聚焦已有窗口
  • 安全隔离:仅监听 127.0.0.1,启用渲染进程沙箱并禁止 Node.js 集成
  • 干净退出:退出应用时终止完整的 DSH 子进程树
  • 两种分发形式:NSIS 安装包和免安装 Portable 单文件版

系统要求

  • Windows 10 或 Windows 11
  • 从源码运行或构建时需要 Node.js >= 22.12.0 和 npm

打包后的应用会携带 DSH 依赖;程序优先使用系统 Node.js,找不到时会回退到 Electron 自带的 Node.js 运行时。

从源码运行

git clone https://github.com/kevenxz/dsh-desktop.git
cd dsh-desktop
npm install
npm start

首次启动时,应用会自动创建默认工作区 %USERPROFILE%\DSHWorkspace。

配置

可以通过启动参数或环境变量指定 agent 的工作区:

# 启动参数
npx electron . --workspace "G:\workspace\deepseek"

# 环境变量
$env:DSH_DESKTOP_WORKSPACE = "G:\workspace\deepseek"
npm start

支持的配置项:

配置 用途 默认值
--workspace <dir> 指定 agent 工作区 %USERPROFILE%\DSHWorkspace
DSH_DESKTOP_WORKSPACE 通过环境变量指定工作区 同上
DSH_DESKTOP_PORT 固定本地 Web 服务端口 自动选择空闲端口
DSH_DESKTOP_NODE 指定 Node.js 可执行文件 系统 Node.js,随后回退到 Electron
DSH_DESKTOP_SMOKE=1 页面加载成功后自动退出,用于冒烟验证 关闭

启动参数 --workspace 的优先级高于 DSH_DESKTOP_WORKSPACE。

数据与日志

应用不会复制或迁移 DSH 数据,而是直接复用 $DSH_HOME 中的 profile、会话、凭据与设置。

桌面壳和 DSH 服务日志位于:

%APPDATA%\DeepSeek Harness\dsh-desktop.log

也可以右键托盘图标,选择“打开日志目录”。日志可能包含工作区路径和运行信息,公开日志前请先检查敏感内容。

构建

# 重新生成应用图标
npm run icon

# 同时构建 NSIS 安装包和 Portable 版本
npm run dist

# 只构建 Portable 版本
npm run dist:portable

# 构建解包目录,适合本地调试
npm run dist:dir

构建产物位于 release/:

DeepSeek-Harness-Setup-<version>.exe
DeepSeek-Harness-Portable-<version>.exe
win-unpacked/

release/ 和 node_modules/ 已从 Git 中排除,不会提交到仓库。

冒烟验证

冒烟模式会启动 DSH、等待页面完成加载、输出 SMOKE_OK,然后自动退出:

$env:DSH_DESKTOP_SMOKE = "1"
npx electron .
$env:DSH_DESKTOP_SMOKE = $null

工作原理

flowchart LR
    A["启动桌面应用"] --> B["解析工作区与 Node.js"]
    B --> C["选择本地端口"]
    C --> D["启动 dsh web 子进程"]
    D --> E["等待服务就绪"]
    E --> F["Electron 窗口加载 127.0.0.1"]
    F --> G["关闭窗口时驻留托盘"]
    G --> H["退出时清理进程树"]

外部 HTTP(S) 链接不会留在应用窗口内,而是交给系统默认浏览器打开。

常见问题

启动后提示“未找到 dsh CLI”

确认依赖安装完整,然后重新安装:

Remove-Item -Recurse -Force node_modules
npm install

DSH 服务启动超时

从托盘菜单打开日志目录,检查 dsh-desktop.log 中最近的错误。也可以设置 DSH_DESKTOP_PORT,排除本机安全软件或端口策略的影响。

点击关闭按钮后应用仍在运行

这是预期行为。关闭窗口会隐藏到系统托盘;如需完全退出,请在托盘菜单中选择“退出”。

参与贡献

欢迎提交 Issue 和 Pull Request。提交改动前请至少运行一次冒烟验证;涉及打包配置时,也建议执行 npm run dist:dir。

许可证

本项目采用 MIT License。DeepSeek Harness 及其他依赖分别遵循各自的许可证。

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-desktop」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:kevenxz/dsh-desktop

Headless(CLI)profile:

dsh plugin --profile headless add github:kevenxz/dsh-desktop

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

使用场景

把 dsh 跑成原生桌面应用——独立窗口、托盘图标、快捷键——而不是浏览器标签。

适合谁

想要已安装应用的感觉和系统集成(托盘、全局热键、开机自启)的人。

二次开发建议

原生壳是缝——加全局快捷键、通知、单实例锁或按 OS 定制的行为。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Desktop 里更多

浏览全部 7797 个插件 →