EternalNight996 / dsh-desktop

Listed

dsh-desktop · DeepSeek Harness 桌面工作台 🤖 AI 打工人的快乐老家 —— 双击即用,255+ 像素专家天团(独立插件)可一键加装

masterOther View source

Installation

npx -y @deepseek-ai/dsh plugin --profile web add github:EternalNight996/dsh-desktop

This installation command is an unverified starting point generated from the GitHub repository address.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit 0717759Synced Aug 18, 2026
DeepSeek Harness 桌面工作台 Logo

dsh-desktop · DeepSeek Harness 桌面工作台

🤖 AI 打工人的快乐老家 —— 双击即用,255+ 像素专家天团(独立插件)可一键加装

License: MIT Tauri 2 Platform dsh

📦 立刻下载 | 🌟 Gitee | 🐙 GitHub | 📄 License

DeepSeek Harness 桌面工作台全功能预览


一句话读懂它:不用装 Node、不用开终端、不用敲任何命令 —— 双击图标,一个「有人味」的 AI 工作台就自动出现:

🧑‍💼 像素人办公室(独立插件,一键加装):255+ 位专家角色变成像素小人,在办公室里走来走去、互相闲聊、随时听你差遣。

基于官方 deepseek-harness 打包 —— 不 fork、不改源码,官方更新即用。

✨ 四个让人「哇哦」的理由

🚀 开箱即用,零门槛

下载安装包 → 双击 → 开聊。不用装 Node、不用开终端、不用配环境,连 WebView2 都帮你装好;离线安装包断网也能跑。

🔄 自动更新,永远最新

桌面壳自己会每次启动自动检查新版本:发现更新 → 自动打开设置窗口弹出「是否立即更新」(可勾选「下次不提醒此版本」)→ 一键下载安装 → 自动重启。更新入口常驻系统托盘(右键:打开主窗口 / 设置 / 检查更新 / 退出),设置窗口里也能手动检查。在线版 dsh 启动直接用本地缓存,后台检查官方新版本,在设置窗口一键升级;更新源双端互备(国内自动走 Gitee,失败回退 GitHub),就算某一天某一边抽风,另一边照样能更。

🧑‍💼 像素人办公室:你的专家天团已入职

可选插件:先装 dsh-market 插件市场dsh plugin add dshmarket,界面浏览/一键安装)或直接 npx @deepseek-ai/dsh plugin --profile web add dsh-ui-agents-pixe(独立 npm 包,桌面壳默认不内置)。

255+ 位专家(17 个部门)变成会动的像素小人

  • 🚶 他们会走来走去、敲电脑、下班躺床,办公室里有饮水机、书架、吊灯
  • 💬 他们互相闲聊,还能接 AI 让台词更像人
  • 👑 一键团队编排:29 个预设团队(研发 / 安全 / AI大模型 / 区块链 / 跨境电商…),角色名配历史名人——图灵、霍金、刘慈欣、辛顿,都是你的同事
  • 🔍 每个会话专属办公室,重启不丢,状态持久化

🖼️ 界面预览

📸 全部真实抓屏。顶部 GIF 是全局总览,下面按模块展开细看。

🧑‍💼 像素人办公室(可选插件效果)

像素办公室-工作角色页签 像素办公室-办公室浮层

💬 对话主界面

dsh 对话主界面

🚀 三步上手

步骤做什么多久
1️⃣ 下载Gitee Releases(或 GitHub Releases)选你的平台1 分钟
2️⃣ 安装双击安装包,一路下一步1 分钟
3️⃣ 双击运行图标一点,自动启动,直接开聊10 秒
平台安装包
Windows*-setup.exe / .msi
macOS.dmg / .app
Linux.deb / .AppImage / .rpm

安装小贴士

  • Windows:双击 setup.exe → 一路「下一步」。若弹出 SmartScreen「已阻止运行」→ 点「更多信息」→「仍要运行」(未签名版正常现象);装完桌面会出现图标。
  • macOS:打开 .dmg → 把 App 拖进「应用程序」;首次打开提示「无法验证开发者」→ 右键图标 →「打开」。
  • Linux.debsudo dpkg -i xxx.deb(或双击);.AppImagechmod +x 再运行。
  • 离线版:选文件名带 offline 的安装包,Node/WebView2/dsh 全内置,断网也能装。

💡 想要完全离线?下载离线安装包:Node + WebView2 + dsh 全内置,断网也能装、也能跑。

❓ 常见疑问(大白话版)

Q:我需要会编程吗? A:完全不用。这是给「人」用的,双击就完事。

Q:它和 DeepSeek Harness 是什么关系? A:它是 DeepSeek Harness 的「桌面皮肤 + 保姆」:负责帮你拉起服务、开窗口、加彩蛋;对话、模型配置还是官方原汁原味。

Q:我的数据会传出去吗? A:角色、状态全在本机~/.dsh/),纯本地、零外传、零 LLM 开销。

Q:官方更新了怎么办? A:在线版桌面壳启动时直接用本地缓存的 dsh(首次联网自动安装;后台只检查版本,发现新版提示你点击「更新 dsh」一键升级),桌面壳自身也自动更新——你不用管,永远最新;离线版由维护者 just update 重新打包。

Q:像素人会偷懒吗? A:会摸鱼(下班躺床),但该干活时打字飞快 —— 这才是真实的打工人。

👨‍💻 给开发者的话(折叠)

点击展开:源码构建 / 更新 / 打包 / 架构(普通用户可跳过)

从源码构建(速览)

构建依赖 Rust + just + Tauri CLI,顺序:just setup(装 Tauri CLI)→ just vendor(准备运行时)→ just dev(开发)/ just dist(构建)。Linux 另需 just setup-linux

📖 完整保姆级教程(每步带验证 + 常见坑)见文末「🔧 安装部署教程」

真实运行日志:

[dsh-desktop] 使用内置 dsh(离线模式): ...\dsh-runtime\node_modules\@deepseek-ai\dsh\lib\bin.js
[dsh:out] dsh web: http://127.0.0.1:57222

常用命令速查

命令作用
just setup安装 Tauri CLI(cargo install tauri-cli --locked
just vendor准备运行时(node/npm sidecar + 内置 dsh)
just dev / just dist开发运行 / 拉取构建
just dist-offline离线构建(内置 dsh)
just update自动查询 npm 官方 dsh 最新版并拉取,不改源码
just release-* / release-*-offline带签名 / 离线发布构建
just keygen生成更新签名密钥(一次性)
just icon生成图标

桌面壳自动更新(速览)

基于 tauri-plugin-updater:启动自检新版本,一键下载安装并重启;双源互备(GitHub Releases + Gitee 发行版的 latest.json,国内自动走 Gitee)。发布新版本:

  • 跨平台全自动(推荐):推 v* tag,GitHub Actions(.github/workflows/release.yml)自动三平台构建、签名、发布到 GitHub + Gitee 双发行版;需仓库 secret TAURI_SIGNING_PRIVATE_KEY + GITEE_TOKEN
  • 本机一键(Windows)just release-publish "更新说明"(带签名 NSIS 构建 → latest.json → GitHub Releases → 打 tag)。

📖 完整保姆级配置教程(keygen / Secrets / 发布 / 排错)见文末「🔄 自动更新配置教程」

三种 WebView2 打包方式

方式webviewInstallMode命令行为
用系统自带(默认)skipjust dist / just release-*用系统自带 WebView2,安装包最小
在线安装downloadBootstrapperjust dist-online / just release-online安装时联网下载 WebView2
离线安装offlineInstallerjust dist-offline / just release-*-offline内置 WebView2 + dsh,完全离线

离线模式还会内置 dsh(@deepseek-ai/dsh);在线模式首次联网自动安装 dsh 到本地缓存,之后直接用内置 node 启动(无需 npx);后台只检查版本,发现新版由你点「更新 dsh」手动升级。

离线打包教程(客户零依赖,4 步)
  1. 准备运行时(下载 node sidecar + 内置 dsh):
    just vendor
    
  2. 出离线安装包(按平台,任选其一):
    just release-win-offline     # Windows
    just release-mac-offline     # macOS Apple Silicon
    just release-linux-offline   # Linux
    # 或 debug:just dist-offline
    
  3. 原理tauri.offline.json@deepseek-ai/dsh node_modules 打进 resources,并设 webviewInstallMode: offlineInstaller——安装器内置 WebView2 离线安装器,断网可装、断网可跑
  4. 客户拿到什么:一个 *-setup.exe 安装包 → 双击 → 装完直接用。不用装 Node、不用联网、不用任何配置。

离线如何做到:node sidecar(node-<triple>[.exe])+ 内置 dsh + WebView2 离线安装器(offlineInstaller,而非默认安装时联网下载的 downloadBootstrapper)。

跨平台构建

同一套 Rust 代码,差异只在 node sidecar 二进制与系统 WebView:

平台node sidecar 文件名WebView安装包
Windows x64node-x86_64-pc-windows-msvc.exeWebView2NSIS / MSI
macOS Apple Siliconnode-aarch64-apple-darwinWKWebViewdmg / app
macOS Intelnode-x86_64-apple-darwinWKWebViewdmg / app
Linux x64node-x86_64-unknown-linux-gnuWebKitGTKdeb / AppImage / rpm

目标平台运行 just vendor,自动识别架构复制对应 node 二进制;不支持跨 OS 编译(原生构建或 CI 矩阵)。

与手动方案对比

手动 npx dsh webElectron 壳本壳(Tauri)
装 Node
自动启动 dsh❌ 手动
dsh 引擎更新手动 npm手动✅ 在线后台检查 + 手动一键;离线 just update 一键
桌面壳自动更新手动✅ 启动自检 + 一键更新
内置插件(开箱彩蛋)❌ 需自装❌ 需自装❌ 需自装(独立插件一键加装)
像素人角色管理❌ 需自装(255+ 角色 / 29 团队)
安装包体积~200MB+壳 ~12MB(+运行时)
离线零依赖部分✅(离线方案)
内存占用

架构与目录

  • 决策记录见 ADR-001(加载远端 dsh Web UI,因 dsh 前端依赖服务端注入 __DSH_BOOT__,非静态站点)
  • 目录:src-tauri/(Rust + sidecar + 配置)、src/(加载页)、vendor/(运行时产物,just vendor 生成,不入库)、scripts/
  • 可选插件:dshmarket(插件市场,界面浏览/一键安装)与 dsh-ui-agents-pixe(像素办公室,独立 npm 包 / 独立仓库维护,桌面壳不内置)——按需 dsh plugin add 安装,不改 dsh 源码
  • 提交规范:feat/fix/chore/docs/refactor/test;semver 打 tag;GUI 文档配真实截图

🔧 安装部署教程(详细版)

从源码构建的完整保姆级流程,每步带「验证」与「常见坑」,照做即可。

前置条件:Windows 10/11 或 macOS 或 Linux(Ubuntu/Debian),能联网,预留约 2GB 磁盘空间。

① 安装 Rust(rustup)

  • Windows:打开 rustup.rs 下载 rustup-init.exe → 双击 → 一路默认 → 装完务必重开一个终端(PATH 才生效)。
  • macOS / Linux
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    source "$HOME/.cargo/env"
    
  • 验证:新终端里执行 rustc --version && cargo --version,能打印版本号即成功。
  • ⚠️ :提示 'rustc' 不是内部或外部命令 → 没重开终端;Windows 上确认 %USERPROFILE%\.cargo\bin 在 PATH。

② 安装 just(命令执行器,一般不会预装)

  • 已装 Rust:cargo install just
  • Windowswinget install casey.just(或 scoop install just
  • macOSbrew install just
  • Ubuntu/Debiansudo apt install just
  • 验证just --version 能打印版本号即成功。

③ 安装 Tauri CLI(一次性)

just setup        # = cargo install tauri-cli --locked,编译约几分钟
  • Linux(Ubuntu/Debian)还需系统依赖:just setup-linux
  • 验证cargo tauri --version 能打印版本号即成功。

④ 准备运行时(node/npm sidecar,离线还需 dsh)

just vendor
  • 这一步下载 node sidecar 并复制到 src-tauri/binaries/;离线方案还会把 dsh 装进 vendor/dsh-runtime/
  • 验证src-tauri/binaries/ 下有 node-<平台>.exe(Windows)或 node-<平台>(macOS/Linux)。

⑤ 开发运行 / 构建

just dev          # 开发运行:自动拉起 dsh 并弹出窗口(带 Rust 热重载)
just run          # 一键本地启动调试:增量构建后直接运行 debug 版 exe(比 dev 更快)
just dist         # 构建(debug,不打包安装器)
just release-win  # Windows 正式安装包(其他平台见上方「跨平台构建」表)

验证(真实运行日志):

[dsh-desktop] 使用内置 dsh(离线模式): ...\dsh-runtime\node_modules\@deepseek-ai\dsh\lib\bin.js
[dsh:out] dsh web: http://127.0.0.1:57222
  • ⚠️ just devcargo-tauri 找不到 → 第③步没装好;报 Node 相关错误 → 先跑 just vendor

离线打包教程(客户零依赖,4 步)

  1. 准备运行时(下载 node sidecar + 内置 dsh):
    just vendor
    
  2. 出离线安装包(按平台,任选其一):
    just release-win-offline     # Windows
    just release-mac-offline     # macOS Apple Silicon
    just release-linux-offline   # Linux
    # 或 debug:just dist-offline
    
  3. 原理tauri.offline.json@deepseek-ai/dsh node_modules 打进 resources,并设 webviewInstallMode: offlineInstaller——安装器内置 WebView2 离线安装器,断网可装、断网可跑
  4. 客户拿到什么:一个 *-setup.exe 安装包 → 双击 → 装完直接用。不用装 Node、不用联网、不用任何配置。

普通用户安装贴士

  • Windows:双击 setup.exe → 一路「下一步」。若弹出 SmartScreen「已阻止运行」→ 点「更多信息」→「仍要运行」(未签名版正常现象);装完桌面会出现图标。
  • macOS:打开 .dmg → 把 App 拖进「应用程序」;首次打开提示「无法验证开发者」→ 右键图标 →「打开」。
  • Linux.debsudo dpkg -i xxx.deb(或双击);.AppImagechmod +x 再运行。
  • 离线版:选文件名带 offline 的安装包,Node/WebView2/dsh 全内置,断网也能装。

🔄 自动更新配置教程(详细版)

原理一句话:应用启动时请求 latest.json(更新清单,含各平台安装包 URL + 签名),比对版本号,有新版就下载安装并自动重启。更新源双端互备:GitHub Releases + Gitee 发行版(国内自动走 Gitee,失败回退 GitHub),已配在 src-tauri/tauri.conf.jsonplugins.updater.endpoints

整个自动更新系统需要三样东西:① 签名密钥(证明安装包是官方的)② 带签名的安装包(.exe + .sig)③ latest.json 清单(指向新安装包)。下面按「一次性配置」→「每次发版」两步走。

一次性配置(首次做一次)

① 生成签名密钥(生成后私钥只在本地,切勿外传):

just keygen
  • 产出 .tauri/updater.key(私钥,已 gitignore,不会提交);公钥已自动写入 tauri.conf.jsonplugins.updater.pubkey——无需手动改任何配置
  • 验证.tauri/updater.key 文件存在;tauri.conf.jsonpubkey 非空。
  • ⚠️ 私钥一旦丢失/泄露,升级签名即失效——务必备份到安全处;泄露则必须重新 just keygen 并换公钥。

② 给 GitHub 仓库配置 CI 密钥(只用 GitHub Actions 全自动发版才需要;本机发布不需要):

GitHub 仓库 → Settings → Secrets and variables → Actions → New repository secret,新建两个:

Secret 名
TAURI_SIGNING_PRIVATE_KEY.tauri/updater.key全文内容(Get-Content .tauri/updater.key -Raw)
GITEE_TOKENGitee 私人令牌(gitee.com → 设置 → 安全设置 → 私人令牌,勾选 projects / releases 权限)

每次发新版(二选一)

方式 A:GitHub Actions 全自动(推荐,跨平台一键出三平台安装包)

git tag v0.3.1 && git push origin v0.3.1
  • 推送 v* tag 即触发 .github/workflows/release.yml:Windows/macOS(arm64+x64)/Linux 三平台带签名构建 → 合并生成 latest.json → 发布到 GitHub + Gitee 双发行版,并同步 master/gitee 分支与 tag。
  • tag 已存在时,可到 GitHub Actions 页手动运行 release 工作流,填 tag 名补发。
  • 验证:Actions 全绿后,访问 https://github.com/EternalNight996/dsh-desktop/releases/latest/download/latest.json 能看到 JSON(含 version 与各平台 signature/url)。

方式 B:本机一键发布(Windows 单平台,需 gh CLI 或 GITHUB_TOKEN)

just release-publish "更新说明"   # 带签名 NSIS 构建 → latest.json → GitHub Releases → 打 tag 推双仓库
just release-win-signed          # 只构建不发布(产出 setup.exe + .sig,供后续 just publish)
  • 内部流程(scripts/release-publish.ps1):校验密钥 → cargo tauri build --bundles nsis --cinode scripts/publish-update.mjs 生成并上传 latest.jsongit tag v<版本> 推 GitHub/Gitee。
  • ⚠️ :报「未找到签名私钥」→ 先 just keygen;报「未找到带 .sig 的安装包」→ 构建时没带签名(必须走本命令或设 TAURI_SIGNING_PRIVATE_KEY)。

手动分步(不想用脚本时)

# 1. 带签名构建(--ci 跳过密钥密码交互;TAURI_SIGNING_PRIVATE_KEY 指向密钥文件路径即可)
$env:TAURI_SIGNING_PRIVATE_KEY = Get-Content .tauri/updater.key -Raw
cargo tauri build --bundles nsis --ci

# 2. 生成 latest.json 并发布(需 gh CLI 或 GITHUB_TOKEN)
node scripts/publish-update.mjs --notes "更新说明"

📄 License

MIT


🎨 扩展:插件市场 + 像素办公室

桌面壳不内置任何插件;推荐先装 dsh-market 插件市场,之后所有插件都能在界面里浏览、搜索、一键安装:

dsh plugin add dshmarket

安装后重启桌面壳,设置页会出现「插件市场」入口(dsh-market/dsh-market)。

🧑‍💼 像素办公室插件

也可直接装像素办公室插件(255+ 专家角色,The Agency en + agency-agents-zh,29 个预设团队):

dsh plugin add dsh-ui-agents-pixe

安装后重启桌面壳,像素办公室自动出现。

仓库地址
🌟 GitHubEternalNight996/dsh-ui-agents-pixe
🐮 Giteeeternalnight996/dsh-ui-agents-pixe

如果这个「AI 打工人快乐老家」对你有帮助,点个 ⭐ Star,或分享给同样需要它的朋友~
Built with ❤️ by EternalNight · 包装自 deepseek-harness

Project files and signals

Shown items are public repository signals detected in the directory snapshot.

DocumentationDetected

Repository information

Language
JavaScript
License
MIT
Latest release
v0.3.1
Last updated
Aug 18, 2026, 3:24 AM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.