第 03 模块 · 3 节

Computer Use 与 Worktree Checkpoints

《Orca 生产级工程》03 编排与自动化 · 本节时长 24 分钟

两种「状态」能力Computer Use 让 Agent 像人一样操作桌面应用;Worktree Checkpoints 让 Agent 用一句话向人类汇报「我干到哪了」。一个向外,一个向内,都是生产级编排的拼图。

Computer Use:驱动桌面应用

orca computer CLI 让 Agent 通过 accessibility 树 + 截图 + 安全 UI 动作检查与控制原生桌面应用:列出应用、读可访问性树、点击控件、设置值、输入文本、滚动、截图。适合需要操作 OS 或第三方应用、而不仅是终端和内置浏览器的任务。

Beta:需要平台原生 helper,以及 Accessibility 权限(macOS 还需 Screen Recording)。命令面已稳定到可被 skills 依赖,但 flag 名仍可能变动。

首次设置

orca status --json
orca computer permissions --json      # 检查权限
orca computer capabilities --json     # 检查能力

缺少权限时,在系统设置里给 Orca Computer Use 授予 Accessibility(及 macOS Screen Recording),再重跑 permissions --json 确认。

Snapshot → act → snapshot 循环

orca computer list-apps --json
orca computer get-app-state --app com.spotify.client --json
orca computer click --app com.spotify.client --element-index 42 --json

关键纪律:元素索引作用域是最近一次 get-app-state 结果,且可能稀疏——从 result.snapshot.treeText 读树,不要从 elementCount 猜索引。导航、焦点变化、滚动或任何重渲染后都要先刷新状态再复用索引。

多窗口应用list-windows + --window-id <id> 精确定位,优先稳定 window id。


Worktree Checkpoints:人机协作的状态位

每个工作树带一个轻量、自由文本的 comment 字段(UI 可见)——工作树当前在做什么的状态快照。Agent 可从 CLI 更新它,这是官方推荐让人类协作者保持同步、又不必强制聊天的模式:

orca worktree set --worktree active --comment "复现了认证失败;正在测试凭据链修复" --json

附带卡片状态

阶段变化时加 --workspace-status

orca worktree set --worktree active \
  --comment "修复已实现;跑集成测试" \
  --workspace-status in-progress \
  --json

状态值:todo / in-progress / in-review / completed(或你的工作区自定义 id)。

好的检查点时机

时机 例子
完成一段有意义的实现 加了 debounce,等待评审
确认/推翻一个假设 根因已定位:缓存未失效
完成一次代码评审 三份 diff 已审,选了方案 A
遇到阻塞 等外部输入 / 上游 bug / 缺权限
从调查转向修复 原因查明,开始改

格式:首行写动作——发生了什么、在哪、状态或下一步。写之前先读orca worktree current --json),别覆盖用户写下的目标或约束;保留仍有效的、丢弃过时的,再织入你的更新。


落地练习:让 Agent 汇报状态

  1. 检查并补齐 Computer Use 权限(orca computer permissions --json
  2. 对任意桌面应用跑一次 list-appsget-app-state → 安全地 click 一个元素
  3. 故意在导航后不刷新就复用索引,观察报错,加深对「先刷新」的印象
  4. 让一个 Agent 在工作树干活时更新 --comment--workspace-status
  5. 换到你自己的工作站(不用 Agent),先 orca worktree current 读状态再更新

怎么判断做对了?——你能说出元素索引的作用域规则,并写出一条符合「首行动作」格式的 checkpoint 注释。

卡住了怎么办? Computer Use 权限报错:逐项授予并重跑 permissions;checkpoint 被覆盖:让 Agent 养成「写前先读」的习惯。


小结

  1. Computer Use:accessibility 树 + 截图 + 安全动作操作桌面应用
  2. 循环是 snapshot → act → snapshot;索引只在最近一次状态快照内有效
  3. Checkpoints:工作树自由文本 comment + workspace-status(todo / in-progress / in-review / completed)
  4. 写前先读(orca worktree current),首行写动作
  5. 都是「Agent 与人类协作」的低摩擦机制,不强制聊天

下一节,移动端 Companion。