CSlawyer1985/dsh-desktop
DeepSeek Harness 桌面客户端:双击即用,跨平台(macOS / Windows / Linux)
项目介绍Project Overview
DSH Desktop 是 DeepSeek Harness dsh web 的跨平台桌面封装,支持 macOS、Windows 与 Linux。安装包内置官方 @deepseek-ai/dsh@0.1.0-rc.8 与运行时,无需 Node.js、npm 或 CLI,双击即用;默认监听 3080 端口,检测到已有服务即复用,退出时只关闭自启进程。复用本机 ~/.dsh 配置,数据与命令行一致。下载 Release 中的 .dmg / .exe / .AppImage 即可安装;macOS 与 Windows 首次打开可能被 Gatekeeper 或 SmartScreen 拦截,按提示「仍要运行」即可。需正式签名分发请参考 docs/SIGNING.md。
DSH Desktop is a cross-platform wrapper that packages DeepSeek Harness dsh web as a desktop app for macOS, Windows, and Linux. The installer bundles @deepseek-ai/dsh@0.1.0-rc.8 and its runtime, so no Node.js, npm, or CLI setup is required. It auto-starts the service on port 3080, reuses an already-running instance, and shuts down only its own child process on exit. Profiles and sessions from ~/.dsh are shared with the CLI. Install from the Release artifacts for your platform. Unsigned builds may trigger Gatekeeper or SmartScreen warnings on first launch—use the override prompts to proceed.
请帮我了解并安装插件:【dsh-desktop】【https://github.com/CSlawyer1985/dsh-desktop】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add github:CSlawyer1985/dsh-desktop
把 CSlawyer1985/dsh-desktop 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
DeepSeek Harness Desktop
把 DeepSeek Harness(dsh web)及其所需运行组件封装成跨平台桌面应用:安装后双击图标即可打开,无需安装 Node.js、npm 或 dsh CLI,也不用打开终端。
支持 macOS / Windows / Linux,官方 logo 图标(白色星标衬黑底)。
特性
- 一键启动:自动拉起
dsh web服务(默认端口 3080),就绪后加载 UI - 运行组件内置:安装包内置官方
@deepseek-ai/dsh@0.1.0-rc.8,首次启动不会临时联网下载 CLI - 智能复用:如果服务已经在运行(比如你在终端里跑过
dsh web),直接复用,不重复启动 - 生命周期管理:退出应用时自动关闭它自己拉起的服务进程;复用已有服务时不会误关别人的
- 独立窗口:无地址栏、无标签页,固定到 Dock / 任务栏后和原生 App 体验一致
- 官方图标:DeepSeek 官方 logo(白色星标衬黑底),矢量渲染
- 服务守护:服务进程意外退出时弹窗提示,可一键重启
- 复用你的配置:直接使用本机
~/.dsh(Windows 为C:\Users\<你>\.dsh)下现有的 profile、插件、会话数据,与命令行体验完全一致
安装
从 Releases 下载对应系统的安装包:
| 平台 | 安装包 |
|---|---|
| macOS | DeepSeek-Harness-*-mac-arm64.dmg(Apple Silicon)或 -mac-x64.dmg(Intel) |
| Windows | DeepSeek-Harness-Setup-*.exe(安装器)或 DeepSeek-Harness-Portable-*.exe(免安装) |
| Linux | DeepSeek-Harness-*.AppImage |
无需额外准备:安装包已经内置所需运行组件。下载安装后可直接启动,不需要另外安装 Node.js、npm、npx 或 dsh CLI。
未签名说明:未配置签名密钥的构建产物没有代码签名,首次打开时系统可能拦截:
- macOS:右键点击 App →「打开」(Gatekeeper 提示仅首次出现);或终端执行
xattr -dr com.apple.quarantine <路径>- Windows:SmartScreen 提示时点「更多信息」→「仍要运行」
想要正式分发(无拦截、可公证):参见 docs/SIGNING.md —— 配置 Apple Developer ID 签名 + 公证、Windows 证书签名(OV / Azure Trusted Signing / SignPath),CI 已内置全部密钥注入。
工作原理
- 启动时探测
http://127.0.0.1:3080是否已有 DSH 服务(按首页的__DSH_BOOT__标记判断) - 没有则从应用安装目录加载随安装包发布的
@deepseek-ai/dsh - 用应用自带的运行时启动
dsh --profile web --port 3080,不依赖用户系统中的 Node.js、npm、npx 或 shell PATH - 轮询等待服务就绪(最长 120 秒),然后加载 UI
作者
- CSlawyer · chenshi.ai
从源码构建
git clone <你的仓库地址>
cd dsh-desktop
npm ci
bash scripts/build.sh mac # 当前系统使用 mac / win / linux
产物输出到 dist/:
- macOS:
.dmg(安装镜像)+.zip - Windows:
Setup .exe(NSIS 安装器)+Portable .exe - Linux:
.AppImage
因为 DSH 包含按系统和芯片区分的原生组件,本地构建只生成当前系统和芯片对应的安装包。GitHub Actions 已配置 macOS arm64/x64、Windows arm64/x64 和 Linux x64 原生构建;打 v* tag 即可产出全部安装包。
环境变量
| 变量 | 说明 |
|---|---|
DSH_DESKTOP_PORT |
覆盖端口(默认 3080) |
DSH_CLI |
开发调试时覆盖内置 dsh CLI 入口(lib/bin.js 的绝对路径) |
DSH_HOME |
数据目录(默认 ~/.dsh) |
调试运行(开发模式):DSH_DESKTOP_PORT=3081 npm start
日志与排障
- 服务日志(
server.log,在应用数据目录):- macOS:
~/Library/Application Support/DeepSeek Harness/ - Windows:
%APPDATA%\DeepSeek Harness\ - Linux:
~/.config/DeepSeek Harness/
- macOS:
- 端口 3080 被其他程序占用:服务启动会失败,弹窗里会显示错误日志;换端口用
DSH_DESKTOP_PORT,或先停掉占用进程 - 提示“安装不完整”:从项目 Releases 重新下载安装包并覆盖安装;开发调试时也可用
DSH_CLI指定入口 - 服务进程退出后残留:下次启动会检测到并直接复用
介绍页(site/)
site/ 目录是项目的下载介绍页(风格参照 deepseek.com/harness),包含各平台下载入口与作者信息。
- 本地预览:
open site/index.html - 正式站点:dsh.chenshi.ai,由 Cloudflare Pages 托管
- 手动部署:
wrangler pages deploy ./site --project-name dsh-desktop --branch main - 下载链接与版本号在
site/main.js顶部的CONFIG中维护
图标
应用图标来自 DeepSeek 官方品牌 logo(SVG 见 build/deepseek-logo.svg),渲染链路:
scripts/make-icon-render.js(提取官方星标)→ scripts/render-icon.js(Chromium 矢量渲染 PNG)→ scripts/make-icns.sh(macOS icns)
替换图标:替换 build/deepseek-logo.svg 或直接覆盖 build/icon.png 后重新构建。
开源与声明
- MIT License,可自由使用、修改、分发
- 本项目与 DeepSeek 官方无关,为非官方社区封装;"DeepSeek" 名称与 logo 为 DeepSeek 的商标,仅用于指代其产品
- 桌面端内置官方
@deepseek-ai/dsh@0.1.0-rc.8及其运行依赖,并随桌面版升级统一更新;本项目仍是非官方社区封装
nexu-io/open-design
ruvnet/ruflo
amruthpillai/reactive-resume
esengine/DeepSeek-Reasonix
volcengine/OpenViking
Molunerfinn/PicGo
titanwings/distilly
titanwings/colleague-skill