ReachGa0/dsh-desktop · plugin

DeepSeek Harness 桌面版(Windows):双击即用,选区截图直接问 AI · 系统托盘、会话管理 · Featured in awesome-dsh-plugin

Bundle 已验证 MIT JavaScript v0.3.0
Bundle 已验证

已收录

0

Ui

Bundle 已验证

版本v0.3.0
语言JavaScript
许可证MIT
在 GitHub 查看

预览

第 1 个预览,共 2 个:ReachGa0/dsh-desktop · plugin
第 2 个预览,共 2 个:ReachGa0/dsh-desktop · plugin

功能介绍

dsh 插件(dsh-desktop-launcher):在对话中一键启动 dsh-desktop Windows Electron 桌面壳——双击即用、无需终端;支持选区截图提问(GPU 实时框选、自动粘贴到聊天框、配合识图插件 AI 直接看图回答)、系统托盘、会话管理、环境自动引导、可换端口、单实例锁。

适合

  • 希望无需打开终端、在独立 Electron 窗口中运行 DSH Web 的 Windows 用户。
  • 经常截取屏幕区域并粘贴到 DSH 对话中的用户。
  • 需要托盘入口、会话管理、可配置端口及复用现有 DSH 服务的用户。
  • 通过识图桥接插件对截图内容进行问答的工作流。

不适合

  • macOS、Linux 或其他非 Windows 环境。
  • 没有 Node.js 22 或全局 DSH 命令、且不准备先安装所需环境的机器。
  • 不需要选区截图、托盘行为或独立 Electron 桌面壳的用户。
  • 期望仅靠截图就让纯文本模型获得视觉能力的工作流;仍需兼容的识图桥接插件。

README

dsh-desktop

中文 English

License: MIT Electron dsh Platform Build awesome-dsh-plugin

English summary · An Electron desktop shell for DeepSeek Harness (dsh web) on Windows — double-click to run the harness in a standalone window. Region screenshot to ask AI, system tray, session manager, auto environment setup. Full English docs: README.en.md

DeepSeek Harness 的 Electron 桌面壳:双击图标,一个独立窗口运行 dsh web —— 不用开终端、不用敲命令、不用切浏览器。

纯壳,不改动 dsh 本身。服务端复用全局安装的 @deepseek-ai/dsh。

✨ 特性

  • 📸 选区截图提问:一键截屏 → 全屏遮罩实时框选(GPU 加速、8 方向手柄微调)→ 自动粘贴到聊天框 → AI 直接看图回答;截图时自动隐藏聊天窗口
  • 🗂️ 会话管理:Alt → 文件 → 会话管理… 列出所有会话,一键删除(永久清理聊天记录)
  • 🪟 独立窗口:原生桌面窗口加载 Harness Web UI,可最小化到任务栏
  • 🍱 系统托盘:关窗口最小化到托盘常驻,右键菜单可随时显示/退出
  • 🔄 便捷刷新:F5 / Ctrl+R / 右下角悬浮按钮,重新加载 Web UI——前端类插件(皮肤、布局、增强)装完刷新即生效,无需重启应用
  • 🧭 环境自动引导:首次启动自动检测 Node.js / dsh,缺失时引导一键安装,小白也能搞定
  • 🔧 可换端口:npm start -- --port 3081 解决端口占用
  • 🧠 智能复用:检测到已有的 dsh 服务就直接复用,不重复启动
  • 🧹 干净退出:关窗口只杀自己启动的 dsh 进程,绝不误杀外部服务
  • 🔒 单实例锁:防止双开冲突
  • 🎨 安全加固:contextIsolation + sandbox + 禁用 Node 集成,外部链接走系统浏览器
  • 📦 一键安装包:npm run dist 生成 NSIS 安装程序

原理

  1. 启动时探测 127.0.0.1:3080 是否已有 dsh 服务;
  2. 没有 → 自动执行 dsh web --port 3080(日志在 %APPDATA%/DeepSeek Harness Desktop/dsh.log);
  3. 就绪后打开 Electron 窗口加载 Web UI;
  4. 关窗口 → 自动杀掉由本壳启动的 dsh 进程树(手动起的外部服务不会被误杀)。

📸 选区截图提问

选区截图直接问 AI 演示

  1. 点右下角 📸(聊天窗口自动隐藏)
  2. 全屏遮罩上拖动框选区域(实时显示,画完可拖 8 个手柄微调)
  3. 点 ✔ 确定(或双击 / 回车)→ 聊天窗口恢复
  4. 截图自动进入聊天框 → 输入问题 → AI 看图回答

配合 ModLens 等识图插件,DeepSeek 文本模型也能看懂图片。 截图同时自动保存到 ~/.dsh/screenshots/(托盘右键可打开目录)。

前提

  • Node.js ≥ 22(v24 验证通过)
  • 全局安装 dsh:npm i -g @deepseek-ai/dsh(0.1.0-rc.6 验证通过)
  • 如需覆盖 dsh 路径,设置环境变量 DSH_BIN(例如指向源码构建的 apps/cli/src/bin.ts)

安装与运行

cd Desktop\deepseek_work\dsh-desktop
npm install
npm start

国内网络下 Electron 二进制下载可能很慢或失败,用镜像:

set "ELECTRON_MIRROR=https://cdn.npmmirror.com/binaries/electron/"
npm install

换端口(3080 被占用时):

npm start -- --port 3081

首次打开后:设置 → 模型 → 填入 DeepSeek API Key,然后选择工作区即可使用。

打包成安装程序

npm run dist

产物在 release/ 下:dsh-desktop-<版本>-setup.exe(NSIS 安装包)。

自定义图标:放一个 assets/icon.ico(≥256×256),并在 package.json 的 build.win 里加 "icon": "assets/icon.ico"。

常见问题

  • 启动失败弹窗:看 %APPDATA%/DeepSeek Harness Desktop/dsh.log;确认 dsh --version 可用。
  • 端口被占:用 npm start -- --port <新端口> 换一个端口即可。
  • 改了 dsh 版本:重新 npm i -g @deepseek-ai/dsh 即可,壳无需改动。
  • 截图没进聊天框:点一下输入框按 Ctrl+V(截图已在剪贴板)。
  • 关闭窗口后应用还在:正常!它最小化到托盘了,右键托盘图标选”退出”。

贡献

欢迎提 Issue 和 PR!项目很小,代码都在 src/ 里,容易上手。

License

MIT

常见问题常见问题

在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:ReachGa0/dsh-desktop#path:/plugin。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。