Skip to content

计算机使用(Computer Use)

在 CLI 中让 Claude 在 macOS 上操控屏幕:开应用、点击、输入、截图。

是什么

计算机使用让 Claude 像你本人一样在你的机器上操作:打开应用、控制屏幕、点击和输入。在 CLI 里,Claude 可以在同一个会话中编译 Swift 应用、启动它、点遍每个按钮并截图结果,处理那些通常需要离开终端手动完成的 GUI 任务。

它目前是 macOS 上的研究预览(research preview),通过内置的 MCP server computer-use 提供。本页讲的是 CLI 形态;Desktop app 形态(macOS 与 Windows)另见 computer use in Desktop 文档。

怎么工作

  • 工具优先级:Claude 先用最精确的方式——有 MCP server 就用 MCP,shell 命令用 Bash,浏览器任务且配了 Claude in Chrome 就用它,都不适用才用 computer use(最广也最慢)。
  • 逐应用授权:每个会话首次需要某个应用时,终端弹出提示,显示要控制哪些应用、额外权限(如剪贴板)、以及会隐藏多少其他应用;选 Allow for this session 或 Deny,授权仅在当前会话有效。
  • 控制级别按应用类别不同:浏览器和交易平台为只读(view-only),终端和 IDE 为只能点击(click-only),其余为完全控制(full control)。
  • 单会话独占:computer use 运行时持有一把全机锁,若已有其他 Claude Code 会话在用,新尝试会失败并提示哪个会话持锁。
  • 工作时隐藏其他应用:Claude 开始控制屏幕时其他可见应用被隐藏,只与已批准应用交互;你的终端窗口保持可见且被排除在截图之外,回合结束后自动恢复隐藏的应用。
  • 自动降采样截图:发送给模型前每张截图都会降采样,无需调低分辨率或缩放窗口(16 寸 MacBook Pro 原生 Retina 3456×2234 降到约 1372×887,保持宽高比)。
  • 随时中止:获得锁时出现 macOS 通知,按 Esc(任意位置)或终端里 Ctrl+C 立即中止,Claude 释放锁、取消隐藏并交还控制。

怎么配置 / 用法

启用步骤(交互式会话中):

  1. 打开 MCP 菜单,在 server 列表里找到 computer-use(默认显示为 disabled):
text
/mcp
  1. 选中 computer-use 并 Enable,设置按项目持久化(每个项目只需开一次)。
  2. 首次使用时授予两项 macOS 权限:Accessibility(点击/输入/滚动)和 Screen Recording(看屏幕);授权 Screen Recording 后 macOS 可能要求重启 Claude Code。

启用后直接用自然语言下达需要 GUI 的任务,例如:

text
Build the app target, launch it, and click through each tab to make
sure nothing crashes. Screenshot any error states you find.

什么时候用

  • 构建并验证原生应用(如 macOS 菜单栏 app):写 Swift、编译、启动、点遍每个控件验证。
  • 端到端 UI 测试(如本地 Electron 应用走 onboarding 流程),无需 Playwright 或测试框架。
  • 调试视觉/布局问题:缩放窗口复现 bug、截图、改 CSS 再验证。
  • 驱动只有 GUI 没有 CLI/API 的工具:设计工具、硬件控制面板、iOS Simulator、专有应用。

限制 / 坑

  • 仅 macOS 研究预览,需 Pro 或 Max 套餐,Team/Enterprise 不可用;不支持 Linux/Windows(Windows 用 Desktop)。
  • 需要 Claude Code v2.1.85 或更新版本,且必须是交互式会话;非交互模式(-p 标志)不可用。
  • 必须通过 claude.ai 认证,不支持 Amazon Bedrock、Google Cloud Vertex AI、Microsoft Foundry 等第三方 provider。
  • 与沙箱化 Bash 不同,computer use 运行在你真实的桌面上,信任边界不同;虽会标记潜在 prompt injection,但需注意安全。
  • CLI 暂不支持 Desktop 才有的功能:denied apps 列表、auto-unhide 开关(CLI 永远开启)、Dispatch 集成。

硬事实速查(10 条)

  • 内置 MCP server 名为 computer-use,默认关闭,通过 /mcp 启用,设置按项目持久化。
  • 需 Claude Code v2.1.85+(用 claude --version 查),需交互式会话,-p 非交互模式不支持。
  • 仅 macOS,需 Pro 或 Max 套餐(用 /status 确认),需 claude.ai 认证,不支持第三方 provider。
  • 需授予两项 macOS 权限:Accessibility 与 Screen Recording。
  • 控制按应用分级:浏览器/交易平台只读,终端/IDE 只能点击,其余完全控制。
  • Sentinel 警告:Terminal/iTerm/VS Code/Warp 等终端与 IDE 等同 shell 访问;Finder 可读写任意文件;System Settings 可改系统设置。
  • 持有全机锁,同一时刻只允许一个会话控制机器;其他会话崩溃时锁会在检测到进程消失后自动释放。
  • 按 Esc(任意位置)或终端 Ctrl+C 可立即中止;Esc 按键被消费,防止 prompt injection 用它关闭对话框。
  • 工作时隐藏其他应用,终端窗口可见且被排除在截图外,回合结束自动恢复。
  • 截图自动降采样,无需手动调分辨率;无可改目标尺寸的设置,文字太小应在应用内放大而非改显示分辨率。

官方出处:https://code.claude.com/docs/en/computer-use