kipozannaki
dsh-gui
Deepseek Harness GUI图形化界面,兼容mac和windows 开箱即用
- Stars
- 1
- Language
- JavaScript
- Created
- Aug 14, 2026
- Updated
- Aug 15, 2026
Introduction
DSH-GUI
DeepSeek Harness 的 Windows 桌面客户端 —— 开箱即用:自动复用系统 Node.js(版本符合要求时免内置运行时),否则使用内置 Node;首次启动自动部署 DSH 并在桌面窗口中直接使用 Web UI。
💡 macOS 版本正在开发中,敬请期待。
界面:深色现代风格(参考 Codex / Claude Code 设计语言),左侧边栏 + 顶部状态栏 + 嵌入的 DSH Web UI。
✨ 功能特性
- 🟢 自动运行时管理:优先检测并复用系统 Node.js(≥ 22.19.0 时跳过内置运行时),不满足或缺失时自动使用内置 Node(≥ 22.19.0);首次启动自动检测并部署
@deepseek-ai/dsh@0.1.0-rc.6(版本锁定),全程可视化进度(进度条 + 状态文字) - 🚀 免浏览器:启动后自动在
127.0.0.1拉起dsh web服务并直接嵌入窗口;端口 3080 被占用时自动改用空闲端口;窗口关闭自动终止 DSH 子进程(进程树清理,不留孤儿) - 🪟 桌面 GUI:Electron 原生窗口,深色现代风格(参考 Codex / Claude Code);左侧边栏(会话 / 工作区 / 日志)、顶部状态栏(服务状态实时反馈:启动中 / 运行中 / 已停止 / 错误)、自定义窗口控制
- 🎨 换肤(壁纸透出):5 套预设背景主题 + 自定义图片上传;DSH 界面所有白色区域自动透明化,壁纸完整透出而文字保持清晰;「界面透出强度」0-100% 可调,页面切换/动态渲染不失效
- 🖥️ 托盘常驻:关闭窗口最小化到系统托盘,后台服务继续运行;托盘菜单:显示主窗口 / 在浏览器中打开 / 查看日志 / 完全退出
- 🌏 国内用户优化:内置 npmmirror 镜像加速开关(默认开启),首次部署走国内镜像
- 🔑 首次使用引导:自动检测 API Key 是否已配置,未配置时提示前往设置页
- 🧩 复用已有安装:若检测到用户已安装 DSH(本地运行时 / npm 全局 / npx 缓存),直接启动,跳过安装流程
📦 安装与分发
👉 下载地址:GitHub Releases(DSH-GUI-Setup-1.0.0.exe / DSH-GUI-Portable-1.0.0.exe)
| 产物 | 说明 |
|---|---|
DSH-GUI-Setup-1.0.0.exe | NSIS 安装版:安装到系统,自动创建桌面快捷方式与开始菜单快捷方式,可自定义安装目录;数据存于 %APPDATA%\DSH-GUI\ |
DSH-GUI-Portable-1.0.0.exe | 便携版:免安装、双击即用,可放 U 盘;数据存于 exe 同目录的 data\ 文件夹 |
卸载:安装版通过「控制面板 / 设置 → 应用」完整卸载程序文件;数据目录默认保留(可选手动删除 %APPDATA%\DSH-GUI)。
🛠️ 从源码构建
要求:Node.js ≥ 22(本机已装 Node 即可构建;最终产物内置自己的运行时)。
# 1. 安装依赖(国内镜像加速)
$env:ELECTRON_MIRROR = "https://npmmirror.com/mirrors/electron/"
$env:ELECTRON_BUILDER_BINARIES_MIRROR = "https://npmmirror.com/mirrors/electron-builder-binaries/"
npm install
# 2. 下载内置 Node 运行时(v22.x ≥ 22.19.0)
npm run fetch:node
# 3. 生成图标
npm run icons
# 4. 构建(NSIS 安装版 + 便携版)
npm run dist
# 单独构建:npm run dist:installer / npm run dist:portable
# 开发模式运行(不打包)
npm start
产物位于 dist/:DSH-GUI-Setup-1.0.0.exe、DSH-GUI-Portable-1.0.0.exe。
🧭 首次使用
- 双击运行 DSH-GUI(安装版或便携版均可)
- 首次启动自动部署运行环境(若检测到本机已安装 DSH 则跳过)——进度条实时显示
- 服务就绪后自动加载 DSH Web UI,若未配置 API Key 会弹出引导横幅
- 配置 API Key 后即可开始使用
🔧 数据目录
| 模式 | 位置 |
|---|---|
| 便携版 | exe 同目录 data\(config.json 设置、dsh-home\ DSH 主目录、dsh-runtime\ DSH 运行时、logs\ 日志、themes\ 背景图) |
| 安装版 | %APPDATA%\DSH-GUI\(同上结构) |
在「设置 → 服务」中可一键打开数据 / 日志 / DSH 主目录。
📄 技术说明
- 桌面框架:Electron + electron-builder(NSIS 安装版 + portable 便携版)
- Node 运行时:启动时探测系统 Node,版本 ≥ 22.19.0 直接复用(npm/npx 同步跟随系统);否则使用内置运行时(
scripts/fetch-node.mjs从 npmmirror 下载官方 Node win-x64 并只解出运行所需文件) - DSH 集成:
main.js用child_process以node <dsh>/lib/bin.js web --host 127.0.0.1 --port N启动服务;DSH_HOME指向应用数据目录,实现完全便携;--port 0+ 解析dsh web: http://127.0.0.1:PORT输出完成端口自动选择 - 版本锁定:
@deepseek-ai/dsh@0.1.0-rc.6(main.js中DSH_VERSION常量),避免上游更新导致兼容性问题 - 安全:渲染层
contextIsolation+ 无nodeIntegration,仅通过 preload 桥接白名单 IPC;DSH Web UI 以<webview partition="persist:dsh-gui-web">隔离加载 - 图标:
scripts/make-icon.ps1使用 GDI+ 抗锯齿绘制(蓝紫渐变 + 字母 + 光泽)
🤝 开源协议
MIT,与上游 deepseek-ai/deepseek-harness(MIT)保持一致。
🔗 相关链接
- 本项目仓库:github.com/kipozannaki/dsh-gui(Issues / PR 欢迎)
- Release 下载:github.com/kipozannaki/dsh-gui/releases
- 上游项目:deepseek-ai/deepseek-harness
⚠️ 免责声明
本项目为社区开源项目,与 DeepSeek 官方无隶属关系;DSH 本体(@deepseek-ai/dsh)版权归其原作者所有。