Vai al contenuto principale
K

dsh-computer-use-next

kjhajkslfha/dsh-computer-use-next

macOS cross-application desktop tools for DSH using CuaDriver, with a hidden agent cursor, background window selection and post-action observations.

Installazione

dsh plugin --profile web add github:kjhajkslfha/dsh-computer-use-next

README

DSH Computer Use Next

macOS 全局跨应用桌面控制插件。默认隐藏虚拟光标,在后台选定窗口;窗口操作后自动回读界面,供 DSH 模型继续判断。

基于 MIT 授权的 dsh-computer-use 0.3.1 修改,保留原许可,变更见 NOTICE。本项目与 OpenAI、Codex 无隶属关系,不包含其内部实现或模型。

要求

  • macOS;其他操作系统未验证。
  • Node.js 22.18+;兼容 @deepseek-ai/dsh-tools 0.2.0-rc.2 接口的 DSH 宿主。
  • 已安装 CuaDriver,并授予其辅助功能和屏幕录制权限;实测版本 0.35.2。
  • 原生图片和整屏观察需要对话模型支持图片输入,否则使用窗口 AX 控件树。

安装

发布后可通过 GitHub Release 中的 dsh-computer-use-next.tgz 安装,或由收录后的 DSH 插件市场安装。仓库自带 dsh.bundle manifest 和运行时 JavaScript,不需要编译。

本机桌面 profile 的手动安装:

python3 install.py

脚本只针对已有 ~/.dsh/profiles/desktop 的桌面版,复制插件、备份并追加配置,不重启应用、不更改模型账号。其他 profile 使用宿主的插件安装方式。

如已启用旧版 dsh-computer-use,先禁用旧版,避免同名工具重复注册;本插件不会擅自禁用其他插件。

工具

工具用途
desktop_windows全局应用窗口列表及精确窗口 ID。
app_switch后台选定并观察目标窗口,不主动前置。
desktop_observe主显示器整屏图片,包括 Dock 和菜单栏。
desktop_click全局坐标点击及回读;后台模式默认禁用。
screen_observe窗口 AX 控件树及可用截图。
screen_zoom局部截图。
computer_click / computer_double_click / computer_right_click窗口点击、双击、右键。
computer_type / computer_key目标窗口文本输入及快捷键。
computer_scroll / computer_drag窗口内滚动及拖拽。
computer_wait等待加载。
app_list / app_launch应用列表及启动。

合计 16 个工具。窗口点击、输入、按键、滚动和拖拽后自动回读原窗口,模型需要检查实际变化。不同 agent 的观察缓存隔离,插件内调用串行执行。

示例:

使用 desktop_windows 查看窗口,选定计算器计算 12+34,再观察另一个应用,最后回到计算器核对结果。保持后台,每步检查界面,不重复执行结果未知的动作。

后台与前台

默认 backgroundOnly=true、animateCursor=false。驱动会话初始化和恢复时关闭虚拟光标,不隐藏用户自己的鼠标。

后台模式禁止主动前置及 desktop_click;使用 app_launch 和 app_switch 跨应用工作。不支持后台的操作会失败,不自动前置重试;应用自身弹窗仍可能改变焦点,不能保证所有软件完全后台运行。

如需 Dock/菜单栏点击,可显式设置 backgroundOnly=false,允许前台交互。整屏坐标和窗口坐标不能混用。

未验证多屏、其他 Space、最小化窗口及完整模型驱动的跨应用长任务;未实现跨窗口拖拽、视频流或独立无人值守规划。

数据和权限

截图经 DSH attachments 服务处理,可能按模型路由发送给模型服务商。显式 vision 模式继承上游观察者及可选 GLM fallback,其密钥查找和请求见 lib/vision.js。默认 native/AX 路径不新增密钥。

快照 TTL、应用白名单和部分按钮审批规则不是完整安全保障,坐标点击及快捷键不能可靠推断业务后果。详见 PERMISSIONS.md。

验证和卸载

node --test tests/*.test.mjs
python3 install.py --uninstall

16 项自动测试通过。实际验证了计算器点击与截图回读、计算器与 DSH 的后台窗口观察、1568×1014 整屏读取及虚拟光标关闭。完整模型任务尚未验证。

卸载只移除本插件的配置块,保留其他配置及插件文件。下一次启动或宿主重新加载配置后生效。

Plugin correlati