🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

桌面窗口外壳 kkaktus463/dsh-desktop

DeepSeek Harness
kkaktus46372 天前有提交已提供中文文档扫描:无法判定

把命令行服务装进托盘窗口,一键启动看护进程

28.3/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add kkaktus463/dsh-desktop
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · desktop
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 72 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
⚪ 扫描:无法判定尚无人工评估
展开查看扫描说明与证据 ↓

已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。

  • · 包内无可扫 JS
  • · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 托盘窗口封装命令行服务
  • 一键启动看护进程

DeepSeek Harness 的原生桌面窗口,Tauri 封装,不是分支。

README

由 DeepSeek 最新模型翻译生成
DSH Desktop 基于 Tauri 的 DeepSeek Harness 轻量桌面外壳:一个窗口、一个托盘图标,以及对服务进程的看护。harness 本身是官方版本 —— 这是外壳,不是分支。 功能 启动时先检查端口。如果 harness 已在运行,应用直接连接过去,退出时不会动它;如果端口空闲,应用会自行启动 harness,并在退出时结束整个进程树。 关闭窗口只是把它收进托盘,harness 继续运行。通过托盘菜单退出;双击托盘图标可以重新打开窗口。 两种构建 | 版本 | 适用对象 | 内容 | | lite | 机器上已有 Node 或 harness | 仅应用本体,约 2 MB | | full | 不想安装任何东西 | 应用 + Node + harness,约 46 MB | 完整版自带 Node 和 harness 软件包,因此无需 Node、无需 npm、无需联网即可运行。 轻量版依赖机器上已有的 harness,按下方的来源顺序查找。 为完整版准备运行时(下载 Node 和软件包): npm run fetch-runtime src-tauri/runtime/ 不纳入版本库 —— 该脚本会完整重建它。
展开完整文档(README 剩余 1 节)
DSH Desktop

基于 Tauri 的 DeepSeek Harness 轻量桌面外壳:一个窗口、一个托盘图标,以及对服务进程的看护。harness 本身是官方版本 —— 这是外壳,不是分支。

功能

启动时先检查端口。如果 harness 已在运行,应用直接连接过去,退出时不会动它;如果端口空闲,应用会自行启动 harness,并在退出时结束整个进程树。

关闭窗口只是把它收进托盘,harness 继续运行。通过托盘菜单退出;双击托盘图标可以重新打开窗口。

两种构建

| 版本 | 适用对象 | 内容 |
| lite | 机器上已有 Node 或 harness | 仅应用本体,约 2 MB |
| full | 不想安装任何东西 | 应用 + Node + harness,约 46 MB |

完整版自带 Node 和 harness 软件包,因此无需 Node、无需 npm、无需联网即可运行。
轻量版依赖机器上已有的 harness,按下方的来源顺序查找。

为完整版准备运行时(下载 Node 和软件包):

npm run fetch-runtime

src-tauri/runtime/ 不纳入版本库 —— 该脚本会完整重建它。

从源码运行

npm install
npm run dev

构建

npm run build # 轻量版
npm run build:full # 含内置运行时
npm run build:both # 两者,分别放入 dist/lite 和 dist/full

两种构建写入同一个 target/release/bundle 目录,后者会覆盖前者,因此 build:both 会依次构建并把结果收集到 dist/。

单次构建产生两个文件:

| 内容 | 位置 |
| 安装包 | src-tauri/target/release/bundle/nsis/DSH Desktop_0.1.0_x64-setup.exe |
| 免安装 exe | src-tauri/target/release/dsh-desktop.exe |

免安装版无需安装,但需要 WebView2 运行时 —— Windows 10 和 11 均已自带。安装包在缺失时会自动获取。

应用未签名,因此首次运行时 SmartScreen 会发出警告。对未签名程序而言这是正常现象,只有购买代码签名证书才能消除。

语言

界面和所有消息支持中文、英文和俄文。语言取自系统区域设置;无法识别时回退到英文。
覆盖方式:

set DSH_LANG=zh

接受 ru、en、zh。文案集中在 src-tauri/src/i18n.rs 以及 ui/index.html 内的词表中。

图标

源文件为 assets/icon.png。替换后重新生成整套图标:

npx tauri icon assets/icon.png

配置

环境变量:

| 变量 | 含义 |
| DSH_PORT | harness 端口,默认 3080。 |
| DSH_REPO | 本地源码目录 —— 在其中运行 pnpm dsh web。 |
| DSH_COMMAND | 完整的启动命令,优先于其他所有来源。 |
| DSH_LANG | 界面语言:ru、en、zh。 |

未设置变量时,应用会自动查找来源,由快到慢:

0. 内置运行时 —— 仅完整版;
1. PATH 中的 dsh —— 全局安装;
2. 常见位置中的 deepseek-harness 目录(桌面、主目录、Documents、 projects、src),通过根 package.json 识别;
3. npx -y @deepseek-ai/dsh web —— 从 npm 下载。

最后一种方式是为完全没有 harness 的机器准备的。如果应用提示正在下载,而你确实已经有 harness,说明它不在搜索范围内 —— 请用 DSH_REPO 指明路径。

端口冲突

当端口被 harness 以外的程序占用时,应用既不会崩溃,也不会只丢出一句错误:它会查出占用端口的程序(名称和进程号),挑选第一个空闲端口,并给出选择 —— 在该端口启动 harness,或直接打开已经在响应的页面。所选端口会被记住,因此只会询问一次。

应用绝不会结束他人的进程。它无法区分被遗忘的旧进程和你正需要的服务器,而判断错误的代价是丢失工作成果。

端口已打开但尚未响应不算冲突:应用最多等待十秒,因为 harness 会先接受连接,之后才提供第一个页面。

启动耗时

内置运行时、本地源码目录和自定义命令都从磁盘启动,限时两分钟。npx 方式首次使用时可能需要下载软件包,限时十分钟;启动画面会说明正在下载,而不是看起来卡住。

诊断

harness 的输出写入 %LOCALAPPDATA%\dsh-desktop\harness.log。GUI 进程没有控制台,如果没有这个文件,启动失败的原因将无处可查。每次启动都会重写该文件。

同时只运行一个实例:再次启动会唤起已打开的窗口。

结构

src-tauri/src/main.rs 窗口、托盘、退出处理、冲突界面 src-tauri/src/server.rs 来源选择、启动与停止 harness src-tauri/src/platform.rs Windows、macOS、Linux 之间的所有差异 src-tauri/src/i18n.rs 消息词表 src-tauri/src/settings.rs 跨次启动保留的内容 ui/index.html 启动画面与冲突界面

启动画面立即显示,harness 在独立线程中启动,就绪后窗口跳转到其地址。就绪的判断标准是真实的 HTTP 响应,而不仅仅是端口已打开。若启动失败,启动画面会显示错误内容、所用命令以及日志路径。

平台

所有系统调用都集中在 src-tauri/src/platform.rs:外壳、进程树终止、监听表读取和数据目录都按 #[cfg] 区分。代码可在 Windows、macOS 和 Linux 上构建,但目前仅在 Windows 上实际验证过。

每种安装包格式只能在对应系统上生成:Windows 生成 .exe,macOS 生成 .dmg, Linux 生成 .deb 和 .AppImage。Tauri 的交叉构建并不实用,因此 .github/workflows/release.yml 会在相应的 GitHub runner 上构建这三种格式,并收集到草稿版本中。触发方式为 v* 标签或手动运行。

限制

这里没有插件市场,也没有自动更新 —— 它是外壳,不是分支。密钥和设置仍然保存在
dsh 原本的位置:~/.dsh。

通过任务管理器强制结束应用会让 harness 继续运行:此时任何退出处理都来不及执行。

许可证

MIT,© 2026 kkaktus463。可以自由使用、修改和分发,包括商业用途;唯一的条件是随附许可证文本。

完整版会分发并非本项目所有的软件,各部分保留各自的许可证:

- Node.js —— 其许可证与二进制文件放在一起:runtime/LICENSE.node.txt;
- harness 软件包及其依赖 —— 许可证文件位于 node_modules 内,随代码一同打包;
- DeepSeek Harness 本身 采用 MIT 许可证,本项目未对其进行修改。

轻量版不含上述任何内容 —— 它只是外壳本身。
预览分享卡片长什么样 ↓kkaktus463/dsh-desktop
分享 · DeepSeek Harness Hub
kkaktus463/dsh-desktop

把命令行服务装进托盘窗口,一键启动看护进程

这是你的仓库?认领条目

回到顶部