dsh-cua
Windows computer-use plugin for DeepSeek Harness (DSH): UIA, local OCR, window binding, browser automation and visual grounding.
一句话定位
Windows computer-use plugin for DeepSeek Harness (DSH): UIA, local OCR, window binding, browser automation and visual grounding.
安装方式
在 DSH 的 web profile 中执行下面的命令;装完刷新页面即可。
$ dsh plugin --profile web add 'git+https://github.com/Mrkennyhungry/dsh-cua.git#c735c1458e65f0f7db49f360f4258d7503db0614'
兼容的 DSH 版本
>=0.2.1-rc.2
作者与热度
Mrkennyhungry · ★ 20 · 更新于 2026-11-05
关于这个插件
DSH CUA — Windows 桌面自动化插件
简体中文 | [English](README.en.md)
让 DeepSeek Harness(DSH)操作 Windows 桌面应用与浏览器。
结合 UIA 控件树、本地 OCR、图标检测、窗口绑定和视觉语义识别,为 AI Agent 提供观察界面、点击输入、跨软件操作和结果读回能力。
Windows computer-use plugin for DeepSeek Harness, combining UI Automation (UIA), local OCR, window binding, browser automation and visual grounding.
72 秒操作选段拼接,片段保持录屏原有速度并省略无操作等待;画面下方字幕标出当前动作。点击动图观看完整实测。
[观看完整实测:QQ 音乐 → Steam → B 站 → QQ](https://www.bilibili.com/video/BV1L9xe6sEDi/)
[快速安装](#快速安装) · [完整安装参考(English)](README.en.md#install-the-plugin) · [数据边界](docs/data-boundary.md) · [反馈问题](https://github.com/Mrkennyhungry/dsh-cua/issues)
实测:一句话,完成多个软件里的任务
> 打开 QQ 音乐播放《无敌》;去 Steam 家庭库找《影之刃零》,有就开始下载;再去 B 站找相关教程,把链接通过 QQ 发给我自己,顺便留句话。
这次任务约 六分半,花费 0.36 元(作者本次运行记录,非通用性能基准)。演示保留了判断与纠错:识别 Steam 界面、根据磁盘剩余空间选择安装位置、处理独立协议窗口、筛选教程并发送链接。
下载启动后,Agent 继续搜索教程和发送消息;不需要等待整个游戏下载完成。演示中的“完成下载任务”指已开始下载。
插件提供什么能力
| 能力 | 用途 |
|---|---|
| Windows 窗口枚举与绑定 | 获取目标窗口句柄,把后续观察和操作关联到窗口 |
| UI Automation(UIA) | 读取原生控件的名称、类型、值和位置 |
| 本地 OCR 与图标检测 | 用 RapidOCR、YOLO 补充文字、图标位置等信息 |
| 视觉语义识别 | 为无文字图标补充描述,辅助定位 |
| 桌面输入 | 鼠标点击、键盘输入、快捷键、滚动与拖拽 |
| 浏览器自动化 | 借助 Playwright/DOM 读取网页、操作页面 |
| 状态读回与任务反馈 | 检查操作后的界面状态,显示任务提示 |
| 窗口作用域选择器(可选,默认关闭) | 只允许 CUA 操作你授权的窗口/应用,详见[下文](#可选窗口作用域选择器只让-cua-操作指定窗口) |
如何执行:观察 → 操作 → 读回
1. 获取并绑定目标窗口,确定操作对象。
2. 根据任务读取 UIA 控件或浏览器 DOM;信息不足时使用本地 OCR、图标检测及视觉能力。
3. 执行点击、输入或滚动,重新观察目标状态;结果不明确时先检查,再决定下一步。
这些能力按任务选择,并非每次点击都调用全部识别流程。目标是减少不必要的视觉调用和模型往返;实际速度、费用与准确性取决于模型、应用和任务。
视觉边界:图标 caption 开启且有可用 Key 时,会向 DeepSeek 接口发送标注截图和图标裁图,并非只传局部裁图。显式读取图片也可能把图像交给 DSH 配置的模型。本地运行的是 OCR 与图标检测,不能将整个插件描述为完全离线。详见[数据边界](docs/data-boundary.md)。
遥测说明: 0.4.5–0.4.7 的发布版内置过默认开启的遥测上报(元数据发往第三方域名),已在 0.4.8 移除;历史细节与影响范围见[数据边界](docs/data-boundary.md#五历史版本045047内置过遥测)。
快速安装
需要 Windows 10/11、Node.js >= 22 和 DeepSeek Harness,以及已加入 PATH 的 [uv](https://docs.astral.sh/uv/getting-started/installation/)。首次安装 Python 依赖需要联网;OCR 和图标检测权重已随仓库分发。
仓库名是 dsh-cua;安装包名为 dsh-doraemon。当前主分支不再声明固定的 DSH 客户端版本范围;实际可用性取决于客户端提供的插件 API。
1. 在 DSH 的 Plugins → Add plugin 中粘贴:
dsh-doraemon@git+https://github.com/Mrkennyhungry/dsh-cua.git#main
2. 重启 DSH。
3. 在安装包目录中打开 PowerShell,运行一次:
cd "$env:USERPROFILE\.dsh\profiles\\node_modules\dsh-doraemon" .\scripts\bootstrap.ps1
将 `` 替换为自己的 profile 名称;自定义目录请使用实际安装路径。脚本创建 Python 3.11 环境、安装依赖并复制模型权重。只安装插件不运行 bootstrap,内核无法启动。
4. 再次重启 DSH,尝试一个简单任务:
> 用 doraemon 打开记事本,写一行 hello,然后把窗口标题读回来。
首次配置、插件市场安装、API Key 与常见问题见 [QUICKSTART.md](QUICKSTART.md) 和 [完整安装参考](README.en.md#install-the-plugin)。插件复用 DSH 中配置的 DeepSeek Key;浏览器默认使用已安装的 Microsoft Edge。
可选:窗口作用域选择器(只让 CUA 操作指定窗口)
这是一个默认关闭的可选能力,但值得知道它存在:开启后,屏幕右上角会停靠一个
像素鲸鱼女仆,点它弹出「窗口 / 应用」两级选择器;选中哪些窗口,CUA 之后就只能操作
哪些窗口(窗口作用域锁定),再点一次可清空授权。适合「别碰我其他窗口」的场景 ——
不开也能正常用插件,只是没有这层限制。
它需要额外安装,三步缺一不可:
1. .NET 10 SDK。选择器是 net10.0-windows 的 Avalonia 程序,仓库里没有预编译产物。
2. 构建选择器 UI(在插件目录执行一次):
.\scripts\build-companion-ui.ps1
产物在 .runtime/companion-ui/(自包含,约 220 MB)。不构建的话,点击角色只会动一下、不会弹窗。
3. 显式开启:在 profile 的 cordis.patch.yml 里给 doraemon 加 commandFeedback: true,再重启 DSH。
同分类对比
同一分类下 Star 最高的 5 个,便于横向比较。
| 插件 | 作者 | Star | 版本 | 更新 |
|---|---|---|---|---|
| Mole | tw93 | 74.5K | 0.0.0 | 2026-11-10 |
| DeepSeek-Reasonix | esengine | 36.1K | 0.0.0 | 2026-11-10 |
| dsh-desktop | anywhere-labs | 35.6K | 0.4.1 | 2026-11-06 |
| awesome-dsh-plugin | awesome-dsh-plugin | 24.1K | 0.1.0 | 2026-11-10 |
| dsh-market | dsh-market | 11.8K | 1.73.17 | 2026-11-09 |