dsh-desktop-tools:在 DSH 里用 UI Automation 操作 Windows 桌面

前言

DeepSeek Harness(DSH)的智能体通常通过工具调用访问文件、终端或浏览器。要在本机 Windows 应用里查窗口、读控件结构、点按或输入,单靠通用 shell 往往不够:要么拿不到语义化的控件信息,要么坐标容易过期。社区插件 dsh-desktop-tools(GitHub:Kerberos255/dsh-desktop-tools)面向上述场景,在 DSH 内提供原生 Windows 桌面自动化能力,优先走 UI Automation(UIA),对无法暴露语义控件的界面则用带作用域的截图坐标兜底。

这是什么

dsh-desktop-tools 由维护者 Kerberos255 发布,在 SkillHub 社区目录中归类为「工作流」。插件简介为:Windows desktop automation for DeepSeek Harness: UI Automation, screenshots, scoped actions and native permissions。当前 package.json 中版本为 0.1.11,许可证 MIT。

插件仅在 Windows 上运行,依赖 PowerShell 7、与 DSH 版本要求匹配的宿主(engines 要求 node >= 24、dsh >= 0.2.0-rc.2),以及 README 中指向的 package.json 依赖说明。需要 UIA 或键盘交互时,须在已解锁的交互式桌面上操作。

核心功能

README 列出的能力可概括为以下五点(对应五个工具方向):

  1. 窗口发现:定位当前可用的桌面窗口。
  2. 无障碍 / 控件快照:获取控件引用,供后续点击、输入使用。
  3. 截图:对自定义绘制、难以通过 UIA 语义化的界面,用截图及其 screenshotRef 表示区域;坐标相对于该截图,而非全屏全局坐标。
  4. 点击与输入:在持有当前引用时调用 desktop_click、desktop_type;界面变化后需重新快照。
  5. 引用与权限:按会话 / 窗口的引用以及截图引用,避免重复使用过期坐标。

其他已文档化的行为包括:

  • 遵循当前 DSH 会话权限预设、插件写入开关、按进程策略及原生审批;只读会话不能写入。
  • 可选可见操作指示;支持基于 PowerShell 的 helper,而不必长期跑常驻服务。
  • 在配置的保留期过后自动清理符合条件的插件自有截图(默认保留 七天),不删除审计日志或活跃会话产物。
  • 可选向 dsh-plugin-diagnostics 上报受限的操作与失败元数据(不含对话内容与凭据)。

同作者的 dsh-browser-tools 面向网页;桌面与本机 GUI 场景可与此插件配合理解分工。

安装与启用

官方安装命令如下(profile 名 desktop 需按你本地 DSH 配置替换):

dsh plugin --profile desktop add github:Kerberos255/dsh-desktop-tools

安装或更新插件代码后应重启 DSH。若需可复现安装,README 建议 pin 到具体 commit。

启用前建议在 DSH 中打开 Settings → Plugins → Desktop Tools,查看允许的进程策略,并在确实需要写入前保持写入关闭。

典型用法

README Quick start 给出的顺序可直接复现:

  1. 打开 Settings → Plugins → Desktop Tools,审阅 allowed-process policy,在需要之前保持 writing disabled。
  2. 调用 desktop_windows 查找窗口,再调用 desktop_snapshot 获取当前控件引用。
  3. 使用 desktop_click 或 desktop_type 并传入当前引用;界面变更后刷新 snapshot。
  4. 对自定义绘制应用,使用 desktop_screenshot 及其 screenshotRef;坐标在该截图内部,不是全局屏幕坐标。

策略与字段示例见仓库中的 policy.json、config.example.json;安全说明见 SECURITY.md。

权限、隐私与测试

只读会话无法写入。具备完整访问权限的 DSH 会话可能对「已允许的普通交互」减少重复审批,但显式禁止的进程、安全桌面、凭据窗口与敏感提交仍受保护;关闭审批提示的设置 不等于 授予权限。

支持的快照 / 截图中会抑制凭据字段。审计文件与截图仅存放在本地 runtime 目录。仓库提供 npm test 做可移植的安全 / 策略检查;真实 UIA、DPI、焦点、键盘与屏幕标记测试需要在 已解锁的 Windows 主机 上完成,不能仅凭 GitHub Actions 推断。

适用场景与注意

适合:在 DSH 智能体工作流中,需要在本机 Windows 应用里做只读探查或经审批后的有限写入(查窗口、读结构、截图定位、点按输入)的开发者。

注意:

  • 插件随 当前 DSH 进程 的权限与策略运行;安装前应自行审阅源码与 MIT 许可证,并理解 policy.json、会话 preset 与原生审批的含义。
  • 仅 Windows;Linux / macOS 宿主不适用。
  • 社区目录页(SkillHub)与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方从属关系;星标与版本以你安装时仓库状态为准(资料抓取时 GitHub 星标为 0)。

结尾

dsh-desktop-tools 把 Windows UIA、作用域截图与 DSH 原生权限模型接到同一套工具里,适合需要「能看结构再动手、坐标不串会话」的桌面自动化步骤。进一步了解可访问社区目录页与 GitHub 仓库:

  • 目录页:https://www.skillhub.cn/plugins/Kerberos255/dsh-desktop-tools
  • GitHub:https://github.com/Kerberos255/dsh-desktop-tools
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜