双击即开托盘驻留,自动拉起并守护本地服务
27.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add g1998815/dsh-desktop-windows该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · desktop
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 79 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件
查看扫描证据(共 7 处,展示前 7 条)
- 执行外部命令固定命令src/server-manager.js:237
return spawn("node", [dshEntry, "web", "--port", String(port)], { - 删除本地文件src/logger.js:15
try { fs.unlinkSync(last); } catch { } - 写入本地文件src/logger.js:19
try { fs.renameSync(from, to); } catch { } - 写入本地文件src/logger.js:21
try { fs.renameSync(LOG_FILE, path.join(LOG_DIR, "main.log.1")); } catch { } - 写入本地文件src/logger.js:25
fs.mkdirSync(LOG_DIR, { recursive: true }); - 读取本地文件src/logger.js:32
const stat = fs.statSync(LOG_FILE); - 写入本地文件src/logger.js:36
fs.appendFileSync(LOG_FILE, line, "utf8");
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 双击即开
- 托盘驻留
- 服务守护
README
由 DeepSeek 最新模型翻译生成DshDesktop — DSH 桌面版(Electron 壳)
用独立 Electron 桌面应用包装 DeepSeek Harness(DSH) Web 界面, 双击即开,托盘驻留,无需手动开浏览器输地址。
托盘驻留模式:关闭窗口最小化到托盘,托盘“退出”才真正停止服务。
壳不修改 DSH 本体(全局安装的 @deepseek-ai/dsh)与 ~/.dsh 配置,是独立可移植的小项目。
✨ 功能特性
- 🖥️ 桌面窗口化:加载 http://127.0.0.1:3080,窗口即 DSH Web
- 🧲 单实例锁:重复启动聚焦已有窗口,不会出现两个壳各自拉起服务
- 🔍 智能端口探测:
- 3080 已是 DSH 服务 → 直接复用(不重复拉起)
- 端口空闲 → 自动拉起 dsh web
- 被其他程序占用 → 扫描 3081~3090 找空闲端口
- 🛡️ 服务守护:崩溃自动重启,指数退避(1s→30s 封顶),连续失败 5 次停止并提示
- 📌 托盘菜单:打开窗口 / 浏览器打开 / 重启服务 / 退出(退出只停自己拉起的服务)
- 📝 日志落盘:~/.dsh-desktop/logs/main.log,超 1MB 轮转保留 5 份
- 📦 双形态打包:NSIS 安装版 + 便携版(见下方“打包为 exe”)
🚀 快速开始
环境要求
展开完整文档(README 剩余 1 节)
DshDesktop — DSH 桌面版(Electron 壳) 用独立 Electron 桌面应用包装 DeepSeek Harness(DSH) Web 界面, 双击即开,托盘驻留,无需手动开浏览器输地址。 托盘驻留模式:关闭窗口最小化到托盘,托盘“退出”才真正停止服务。 壳不修改 DSH 本体(全局安装的 @deepseek-ai/dsh)与 ~/.dsh 配置,是独立可移植的小项目。 ✨ 功能特性 - 🖥️ 桌面窗口化:加载 http://127.0.0.1:3080,窗口即 DSH Web - 🧲 单实例锁:重复启动聚焦已有窗口,不会出现两个壳各自拉起服务 - 🔍 智能端口探测: - 3080 已是 DSH 服务 → 直接复用(不重复拉起) - 端口空闲 → 自动拉起 dsh web - 被其他程序占用 → 扫描 3081~3090 找空闲端口 - 🛡️ 服务守护:崩溃自动重启,指数退避(1s→30s 封顶),连续失败 5 次停止并提示 - 📌 托盘菜单:打开窗口 / 浏览器打开 / 重启服务 / 退出(退出只停自己拉起的服务) - 📝 日志落盘:~/.dsh-desktop/logs/main.log,超 1MB 轮转保留 5 份 - 📦 双形态打包:NSIS 安装版 + 便携版(见下方“打包为 exe”) 🚀 快速开始 环境要求 | 依赖 | 说明 | | Node.js ≥ 18 | 开发机已验证 v24 | | 全局 DSH | 提供 dsh web / lib/bin.js,壳本身不包含 DSH | | Windows | start.vbs + 托盘设计(跨平台需另行适配) | 安装与启动 npm install # 安装依赖(国内可设 ELECTRON_MIRROR 镜像) npm start # 或双击 start.vbs(隐藏控制台窗口) 启动后自动完成:单实例锁 → 端口探测(复用/拉起/换端口)→ 轮询就绪(60s 超时)→ 创建窗口与托盘。 托盘使用 | 操作 | 行为 | | 关闭窗口 | 隐藏到托盘,服务继续运行 | | 打开窗口 | 显示并聚焦窗口 | | 在浏览器打开 | 系统浏览器打开同一地址 | | 重启服务 | 停止自拉起服务 → 重新拉起 → 窗口刷新 | | 退出 | 确认后停止自己拉起的服务(外部服务不碰),退出 | 📦 打包为 exe npm run build # 同时产出安装版 + 便携版 npm run build:nsis # 仅 NSIS 安装版(推荐日常使用,启动快) npm run build:portable # 仅便携版(绿色免安装) 产物输出到 release/: | 文件 | 说明 | | DshDesktop--setup.exe | 安装版:向导式安装、可改目录、桌面+开始菜单快捷方式,启动秒开 | | DshDesktop--portable.exe | 便携版:免安装,U 盘可带;每次启动解压到临时目录,启动略慢 | 国内网络下先设镜像再打包: set ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/ set ELECTRON_BUILDER_BINARIES_MIRROR=https://npmmirror.com/mirrors/electron-builder-binaries/ npm run build 🖥️ 部署到新机器 1. 新机器先安装全局 DSH:npm i -g @deepseek-ai/dsh(或 DSH 官方安装方式) 2. 安装 DshDesktop--setup.exe,或拷贝便携 exe 到任意目录双击运行 3. DSH 安装位置非默认路径时,设置环境变量后启动: set DSH_DESKTOP_DSH_ENTRY=D:\path\to\dsh\lib\bin.js 4. 首次使用在 DSH Web 界面配置模型 API(如 DeepSeek API Key)——这是 DSH 自己的配置,壳不涉及、不存储任何密钥 exe 只是桌面壳,运行依赖目标机器的全局 DSH,不携带 DSH 本体。 🧪 测试 纯逻辑(端口状态判断、端口扫描选择、重启退避与次数限制)用 Node 内置 node:test 单测,不依赖 Electron: npm test 📁 目录结构 dsh-desktop/ ├── package.json # main: main.js;build 配置(electron-builder) ├── main.js # 入口:app 生命周期 / 单实例锁 / 窗口 / 托盘 ├── assets/ │ └── icon.png # 运行时窗口/托盘图标(替换即换图标) ├── build/ │ └── icon.png # 打包用应用图标(512x512) ├── src/ │ ├── server-manager.js # 端口探测、spawn+守护 dsh web、崩溃重启、换端口 │ └── logger.js # 日志落盘 ~/.dsh-desktop/logs/main.log(轮转 5 份) ├── start.vbs # 双击启动脚本(隐藏控制台窗口,调 electron .) ├── README.md ├── test/ │ └── server-manager.test.js # node:test 单测 └── release/ # 打包产物(已 gitignore) 📝 日志 统一落盘 ~/.dsh-desktop/logs/main.log,单文件超 1MB 轮转,保留 main.log + main.log.1 ~ main.log.4 共 5 份。 ✅ 手动冒烟验证清单 桌面行为(托盘、关窗隐藏、退出联动)需手动验证。 - [ ] 双击 start.vbs 或运行 exe,窗口自动打开,页面正常 - [ ] 托盘出现图标;关闭窗口后进程仍在,托盘“打开窗口”可恢复 - [ ] 托盘“在浏览器打开”用系统浏览器打开同一地址 - [ ] 托盘“重启服务”:服务重启,窗口自动刷新 - [ ] 托盘“退出”:确认后进程完全退出 - [ ] 先手动启动 dsh web 再打开桌面版:复用已有服务(不重复拉起) - [ ] 占用 3080 后打开桌面版:自动换到 3081+ 拉起 - [ ] 杀掉自拉起的 node 服务:观察自动重启(指数退避) - [ ] 服务连续失败 5 次:弹提示,托盘仍可“重启服务” - [ ] 查看日志有完整启动/退出记录 ⚠️ 明确不做的(YAGNI) - 不携带 DSH 本体(保持壳的独立性) - 不做自动更新、开机自启、多语言 - 不修改 DSH 本体与 ~/.dsh 下的任何配置 - 不做签名(当前 exe 无代码签名,Windows SmartScreen 可能提示) 📄 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
g1998815/dsh-desktop-windows
双击即开托盘驻留,自动拉起并守护本地服务
相关插件 · 桌面端
Codex 任务面板chuspeeism/dashi-taskboard
现代化可灵活嵌入的任务面板,支持 Codex、DeepSeek Harness
★ 3,409已汉化DSH
71.7
多智能体自进化开发平台Prism-Shadow/penguin-harness
统一、稳定的 Agent 自进化框架全自动优化:任意模型 · 任意算法 · 任意 Benchmark
★ 3,111已汉化DSH
71.1
桌面宠物PC2005-cloud/dsh-pet
DSH 桌面宠物:一行命令装好即用的透明动画小桌宠,支持多开、大小位置随心配置;还内置 DIY 素材链,能用 AI…
★ 5,341已汉化DSH
71
多端 Agent 工作台GCWing/OpenBitFun
OpenBitFun 是一个高度可定制的开源 Agent 工作台,让任务按你的方式持续推进。
★ 3,449已汉化DSH
70.8
DSH Desktopanywhere-labs/dsh-desktop
为 DeepSeek Harness DSH 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 34,532已汉化DSH
70.7
桌面宠物伴侣OpenPetsHQ/openpets
桌面伴侣平台,带宠物、插件,还能选配本地智能体集成。
★ 1,353已汉化DSH
70.2
这是你的仓库?认领条目