DSH 插件:datuloar/dsh-computer-use-win

在开发基于 DeepSeek Harness 的智能体时,让 agent 在 Windows 桌面环境中执行操作是一个常见需求。现有的解决方案通常需要安装复杂的原生驱动或 SDK。datuloar/dsh-computer-use-win 插件通过 CLI 工具 dsh-cu,为 Harness 提供了截图、点击、输入和滚动的能力,并包含一个供人类观察和干预的屏幕覆盖层。

插件定位

这是一个为 DeepSeek Harness 设计的 Windows computer use 插件。它不依赖外部驱动或 SDK,直接利用 Windows 自带的 .NET Framework 和 UI Automation 进行操作。CLI 工具 dsh-cu 独立运行,也可以配合 Harness 的技能系统使用。

核心功能

  • 屏幕读取:支持将屏幕内容转换为文本(OCR)或读取 UI 控件树,支持通过名称点击控件。
  • 输入与操作:支持截图、鼠标移动、点击、拖拽、滚动、键盘输入及组合键操作。
  • 人类监督:内置屏幕指示器,人类可以实时看到 agent 的操作状态,并按下 ESC 键停止 agent。
  • 通用 CLI:命令行工具可与任何 Harness 技能或独立脚本配合使用。

安装与启用

使用官方安装命令添加插件:

dsh plugin --profile web add github:datuloar/dsh-computer-use-win

安装后,系统将注册名为 dsh-computer-use 的技能,并提供 dsh-cu 命令行工具。

典型用法

插件提供了一系列命令用于桌面操作:

  • 启动覆盖层(供人类观察):
    dsh-cu overlay
  • 截图:
    dsh-cu shot
  • 点击指定坐标:
    dsh-cu click 640 380
  • 输入文本:
    dsh-cu type "hello"
  • 输入组合键:
    dsh-cu keys ctrl+l
  • 拖拽:
    dsh-cu drag 420 300 980 300
  • 通过控件名称点击:
    dsh-cu tap "Save"
  • 读取屏幕内容:
    dsh-cu read
  • 获取控件树:
    dsh-cu tree

依赖与环境要求

运行此插件需要满足以下条件:

  • 操作系统:Windows 桌面环境。
  • 运行环境:
    • Node.js 18+。
    • Windows PowerShell 5.1。
  • 注意事项:PowerShell 7 (pwsh) 不受此插件支持,因为后端依赖于 Windows 自带的 .NET Framework 和 WinRT,而非 .NET Core 运行时。

局限性与注意事项

  • 无浏览器 DOM:插件基于 UI Automation,获取的信息是应用暴露的控件,而非浏览器 DOM 树。
  • 无多显示器支持:目前不支持多显示器环境。
  • 无应用程序白名单:没有限制只能在特定应用中操作。
  • 安全机制:
    • 在覆盖层开启期间,输入操作会被拒绝,直到覆盖层启动。
    • agent 无法通过注入 ESC 键来关闭覆盖层,必须由人类手动停止。
  • 沙箱运行:该插件可以在 Harness 的沙箱环境中运行,但依赖文件描述符捕获而非管道 stdio(针对 Harness 的文件沙箱限制做了适配)。

总结

datuloar/dsh-computer-use-win 插件提供了一个轻量级、无需额外驱动的 Windows 桌面自动化方案。通过 CLI dsh-cu,开发者可以方便地让智能体与本地应用交互,同时通过覆盖层机制确保了操作的可观测性和安全性。

羽毛球分组比赛记分
小程序二维码

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

小夜