DSH Windows Computer Use:在 Windows 桌面上的原生电脑操作

前言

在 DeepSeek Harness(DSH)里做智能体,常见需求是让模型「看见」当前桌面、选中某个窗口,再按步骤点击、输入和滚动。若仍依赖旧版 Windows 控制器或浏览器侧能力,窗口绑定、观察失效和输入校验往往各走一套,失败时也不清楚该重新截图还是重试动作。

下面介绍社区插件 Very12345/dsh-computer-use-windows(npm 包名 @very12345/dsh-computer-use-windows,当前资料版本 0.6.4)。它为 DSH 0.2 系列提供 Windows 桌面应用操作,参照 Codex 的窗口选择、观察后操作、操作后刷新和错误恢复流程,在 DSH 内独立实现原生控制层;不包含浏览器 DOM、标签页、扩展或浏览器输入,也不分发 OpenAI 的程序。

这是什么

维护者 Very12345,分类为客户端插件。一句话定位:在 Windows 10/11 交互桌面上,通过绑定窗口、一次性观察(截图 + UIA)、校验后的输入,以及 DSH 原生审批与急停,让模型安全地操作普通桌面应用。

Windows 后端基于 MIT 项目 Yu-tao-Li/dsh-computer-use-win 的 0.2.3 版本并做了目标身份、控件作用域、焦点、坐标和输入路径等修改;DSH 控制层与测试为本仓库代码,主许可证 MIT。社区目录页:skillhub.cn 插件页;源码:GitHub。

核心功能

窗口与观察

窗口 id 由真实枚举产生,绑定 HWND、PID 和进程启动时间;标题变化保留绑定,窗口关闭或重建后须重新选择。

截图与 UIA 状态生成一次性 observation_id,默认 5 分钟有效,以适应模型较长的思考时间。其他输入会使旧观察失效;操作前仍会校验窗口、布局、焦点及视觉输入时的鼠标位置。控件索引属于对应观察,不能跨观察使用。

截图作为 DSH 附件发给支持图像的模型,JSON 不携带 base64;纯文本模型仍可读无障碍树,不能凭未收到的截图猜坐标。

输入与校验

点击坐标使用返回截图中的像素;插件处理缩放和窗口移动,窗口尺寸变化则要求重新观察。遮挡兜底截图禁止坐标操作。200% 等 Windows 显示缩放不需要模型再换算。

所有桌面任务共用串行队列;每次输入后返回新截图和 UIA 状态,不自动重试输入。

computer_scroll 的横纵参数是 Windows 滚轮 delta(每格 120),不是像素;一次动作最多依次发送 30 个独立滚轮刻度。文本输入走剪贴板,可识别编辑控件会核对焦点和旧值;type_text 默认 input_mode:auto,自绘界面(如部分 IM)可走视觉输入,须刚完成左键点击并查看点击后截图。

回包中的 verified、dispatched、outcome_unknown、rejected 区分回读成功、已投递待看图、效果不明和明确拒绝;工具不自动重发。

工具面

插件注册的工具包括:computer_list_apps、computer_list_windows、computer_launch_app、computer_get_window、computer_get_window_state、computer_click、computer_type_text、computer_press_key、computer_scroll、computer_drag、computer_set_value、computer_secondary_action、computer_activate_window、computer_stop。

launch_app 支持返回的应用 id 或明确的本地绝对 .exe 路径,不接受命令行或参数。原生工具模式可直接调用;PTC 模式通过宿主生成的 SDK 调用,截图沿用宿主附件投影。推荐流程:先获取状态,查看结果,再发出下一次动作。

权限、审批与急停

普通桌面应用默认可用;也可在设置中切换到「仅预先授权的应用」,用应用列表逐项添加或移除。该模式下未添加的应用通过 DSH 请求会话授权;审批策略为 never 时会被拒绝。浏览器、终端和敏感应用仍被排除。

删除、对外发送、权限修改、支付等动作须声明 requires_confirmation:true 并通过 DSH 当次审批。操作进行时会有蓝色视觉提示;按实体 Esc 可立即取消输入并暂停控制器,需在设置中恢复后重新观察。插件发送的 Escape 快捷键不会触发急停。

设置页支持深浅色、窄屏、自动保存,以及独立的暂停与恢复;与 DSH「电脑操作」设置联动。

安装与启用

环境要求:Windows 10/11 交互桌面、PowerShell 5.1、Node ≥22;不要求 Python、浏览器扩展或第三方 npm 运行依赖。

在 PowerShell 中执行官方安装命令:

dsh plugin --profile desktop add github:Very12345/dsh-computer-use-windows --ignore-scripts

安装后重启 DSH,在 设置 → 电脑操作 中开启。默认允许所有普通桌面应用;可按需收紧为应用列表模式。

若曾安装旧插件 dsh-computer-use-win,建议卸载,避免两套控制器并存。新插件开启时,DSH 工具守卫会拒绝旧 mcp__wincu__* 调用;它不修改其他插件、模型、预设或 PowerShell/Git Bash 工具。

典型用法

工作流与 README 描述一致,可概括为:

  1. 用 computer_list_windows 或 computer_launch_app 确定目标窗口,必要时 computer_activate_window。
  2. 调用 computer_get_window 或 computer_get_window_state 获取带 observation_id 的截图与 UIA 状态。
  3. 在同一观察有效期内,用 computer_click、computer_type_text、computer_press_key、computer_scroll 等发出动作;每次动作后会刷新观察。
  4. 根据回包状态决定是继续、computer_get_window 重新观察,还是在敏感步骤前带上 requires_confirmation:true。
  5. 需要中止时用 computer_stop,或用户按 Esc 急停后在设置中恢复。

宿主提供的 windows-desktop 技能与原生系统提示涵盖选择窗口、焦点检查、逐步操作、失败恢复及确认要求,可与上述工具配合使用。

适用场景与注意

适合谁: 在 Windows 上让 DSH 智能体操作记事本、Office 类应用、部分自绘 UI 客户端等允许列表内的桌面程序;需要 DSH 原生审批、观察失效规则和 Esc 急停的团队。

范围与限制: 实际输入占用 Windows 前台;锁屏、UAC、提权窗口、失效焦点或遮挡可能拒绝操作。浏览器、终端、认证、密码管理器和安全应用不接受授权;不允许 Win 键。通用像素点击不能自动识别所有业务语义,仍依赖模型遵循操作技能,并非完整系统沙箱。

安全: 插件以当前 DSH 进程权限运行,安装前应自行查看 GitHub 源码、NOTICE 与许可证。DSH 社区目录(SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-computer-use-windows 把 Windows 桌面的窗口绑定、观察、校验输入和 DSH 审批/急停收进同一套原生控制层,适合在 DSH 0.2 桌面配置里替代旧版 WinCU 路径做本地 GUI 自动化。

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

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

小夜