用途:computer-use CLI 面向 macOS 后台 UI 自动化,可在不占用用户光标和键盘的前提下检查窗口、捕获界面并执行操作;同时提供隔离的无头浏览器用于网页任务。
主要能力:原生应用侧可列出应用、启动后台实例、枚举窗口、观察并截图、检查可访问性树、描述元素,并通过路径执行 press、set、perform 等操作。浏览器侧可启动独立无头 Brave 或 Chromium 配置,进行导航、快照、截图、点击、聚焦和输入。操作命令的结果与错误以 JSON 输出到 stdout,错误时以非零状态退出。
使用方式:先运行 command -v computer-use 检查是否已安装;若缺失,可在仓库根目录执行 cargo install --path . --locked,或从其他目录传入仓库绝对路径。原生应用需运行 computer-use doctor,并要求宿主应用具备辅助功能与屏幕录制权限;浏览器任务用 browser start,不需要这些 macOS 权限。原生循环示例:computer-use apps、computer-use launch --app '/path/to/Target.app'、computer-use windows --pid PID、computer-use observe --pid PID --output /tmp/target.png、computer-use inspect --pid PID --depth N --nodes N、computer-use describe --pid PID --path PATH。操作时建议带 --expect-id,必要时用 --expect-title 或 --expect-value,例如 computer-use press --pid 1234 --path 0/2/1 --expect-id save-button,以及 printf '%s' 'Draft text' | computer-use set --pid 1234 --path 0/3 --expect-id draft-field --stdin。每次 UI 变化后应重新观察并验证。浏览器循环示例:computer-use browser start、navigate、snapshot、screenshot --output /tmp/page.png、click --selector、focus --selector、type --stdin、stop。
适用场景:需要后台操作 macOS 应用、读取界面结构、截图或执行受控点击输入,以及在不共享用户标签页和 Cookie 的隔离浏览器中完成网页自动化。
限制:原生操作要求应用暴露可访问控件,不支持任意后台拖拽和键盘快捷键;默认拒绝对当前前台应用执行操作,后台工作应避免 --unchecked 和 --allow-frontmost。perform 仅接受已声明的 AXPress、AXIncrement、AXDecrement、AXConfirm、AXCancel、AXScrollToVisible。路径为从应用根开始的子索引,可能变化。浏览器选择器仅作用于主文档,不跨源 iframe 或 shadow root;坐标为 1280×800 视口内的 CSS 像素;快照限制 500 节点、深度 12,并对常见敏感字段做启发式脱敏;loaded:false 不代表页面已就绪。browser stop 结束进程但保留私有配置数据。若操作无法通过这些受支持方式完成,应报告具体限制,而不是发送会干扰用户的全局输入。