Skip to content

Computer Use 边界

Computer Use 安全栈的安全面摘要。操作性与按动作细节见 Computer Use:安全边界

五层

作用
1. macOS 辅助功能权限没它,守护进程对任何应用都无能为力。
2. 每应用审批 Gate(UI)新应用上的首次修改型动作弹出 modal。仅本次 / 始终 / 拒绝。
3. 守护进程硬黑名单(CUPolicy对某些 bundle(密码管理器、敏感工具)无视 UI 批准。
4. 动作形态约束某些动作(Calendar 写、drag)需额外显式参数。
5. 事件投递模型默认 preserveFocus,守护进程不抢你的真实光标 / 键盘。

层是有意冗余的。任一层失效(如自动批准的 UI bug,或绕过 Gate 的漏洞)本身不会导致点击落在敏感应用。

守护进程保护的资产

资产保护
其他应用 UI审批 Gate、硬黑名单
真实光标 / 键盘preserveFocus 事件投递
敏感系统工具硬黑名单
Calendar / Mail / 系统数据写入动作形态约束(allow_calendar_write=true 等)
动作历史按 Profile 加密的动作日志

守护进程保护:

  • 用户对宽松应用授予的 Always。这是用户决定。
  • macOS 辅助功能本身的 bug。
  • 模型被不可信内容(截图、工具结果)社工后请求一个你本不会批准的动作。

最后一点,每应用 Gate 是用户抓住意外动作的机会。动作日志给事后视角。

动作日志的角色

每次经过 Gate 的动作——批准或拒绝——都进 Computer Use Action Log:

  • 时间戳
  • 动作类型
  • 目标 bundle ID
  • 审批状态
  • 结果

日志本地、按 Profile,与其他数据一起在 SQLite 中加密。除非你为相关类别 opt-in,否则不同步。

用日志来:

  • 发现模式("Agent 最近频繁在 Mail 里点击——都是我让它做的吗?")。
  • 复盘具体事件。
  • 导出做合规审查。

看似绕过的(受控)面

少数机制看起来像绕过 Gate,但都受约束:

机制约束
只读动作跳过 Gate不能改状态——只读 AX 树和截图
已批准(Always)应用跳过每动作弹窗限制在已批准的动作类别内
Calendar / Mail compose 的 dry_run 标志只验证不产生副作用;仍记录日志
某些进阶动作的 force 标志默认技能不暴露;要在自定义技能里写显式代码

每一项都是安全与摩擦的权衡。没有一项授予无差别绕过。

严格审批开启后的变化

Settings → Computer Use → Strict Approval 把 Allow Always 改为 Allow Once。每次修改型动作重新弹窗。黑名单、动作形态约束、事件投递模型不变。动作日志按动作记录审批。

威胁模型

  • 已批准应用随时间漂移——你上月授了 Always,但 Agent 行为已演化。用动作日志重新审视;如需要在 Settings 里撤销。
  • 被攻破的模型请求某动作。每应用 Gate 缓解(你看到要做的事),硬黑名单缓解(即使想通过 UI 批准也批不进密码管理器)。
  • 被攻破的本地桌面进程。Gate 代码与守护进程代码同时被攻破时,这套栈不保护你。这是远比这里覆盖的更强的威胁。

相关页面