Claude Code 的 Computer Use 功能让 Claude 可以像人一样操控你的电脑——打开应用、点击按钮、截图验证。这解决了一个长期存在的问题:对于没有 API 的 GUI 工具,AI 以前根本无法帮忙验证变更。
Computer Use 能解决什么问题?
传统 AI 编程工具的局限:
- 能写代码,但只能通过运行测试验证
- 无法验证 GUI 层面的正确性(UI 渲染、用户交互流程)
- 对专有工具(没有 API 的商业软件)完全无能为力
- 无法操控 iOS 模拟器、Figma、Adobe 等工具
Computer Use 打破了这个边界,让 Claude 可以:
- 端到端验证 UI 变更
- 测试用户实际会走的流程
- 操控任何可以在屏幕上显示的工具
三种入口:桌面应用、终端 CLI、桌面应用
| 入口 | 版本 | 状态 | 启用方式 |
|---|---|---|---|
| Claude Code 桌面应用 | v2.1.83 | 研究预览 | 设置开关 |
| Claude Code CLI(终端) | v2.1.86 | 研究预览 | /mcp → computer-use |
| Claude Code 桌面(macOS) | v2.1.83 | 研究预览 | 设置 → 启用 |
桌面应用启用步骤
macOS:
- 打开 Claude Code 桌面应用
- 进入 Settings(设置)
- 找到 "Computer use" 开关,开启
- 系统会弹出权限请求:
- 屏幕录制:允许(Claude 需要截图)
- 辅助功能:允许(Claude 需要控制鼠标和键盘)
- 重启 Claude Code
确认启用成功:
> /status
# 会显示 Computer use: enabled
CLI 终端启用步骤
# 1. 在 Claude Code 里运行
> /mcp
# 2. 在 MCP 服务器列表里找到 "computer-use"
# 3. 按回车开启
# 4. 重新启动对话
或者通过配置文件:
json
// .claude/settings.json
{
"mcpServers": {
"computer-use": {
"enabled": true
}
}
}实际使用示例
iOS 应用引导流程测试
> 打开 iOS 16 模拟器,运行我们的应用,
点击完整的新用户引导流程(5 步),
截图每一步,在每张截图上标注步骤编号,
最后告诉我哪一步的 UI 看起来有问题。
Claude 会:启动模拟器 → 运行应用 → 截图 → 点击 → 截图 → … → 汇报结果。
验证深色模式/浅色模式
> 验证刚刚修改的 ProfileScreen 组件在深色模式和浅色模式下的渲染。
在模拟器里切换系统主题,截图对比,
找出任何颜色对比度或布局问题。
Figma 设计稿检查
> 打开 Figma,找到"Homepage v3"设计稿,
截图所有需要在这次 Sprint 里实现的组件,
列出每个组件的具体颜色值、字体大小和间距。
没有 API 的专有工具
> 打开公司内部的 QA 系统(那个只能在浏览器里用的),
把刚才的 Bug 报告 #4521 标记为"已修复",
截图确认状态已更新。
权限和安全机制
Computer Use 默认是关闭的,需要显式开启。
每次操作前,Claude 都会显示将要执行的操作,你可以:
- 批准:允许执行
- 拒绝:阻止这一步
- 修改:告诉 Claude 用不同方式操作
最佳实践:
- 只在需要的会话里启用,用完关掉
- 不要在处理敏感数据的屏幕上使用
- 对于重要的系统操作,保持默认的手动确认
当前已知限制(研究预览阶段)
官方提醒"仍在早期,预期会有粗糙的地方":
- 截图分辨率和 AI 识别精度仍在优化
- 复杂的动画和过渡效果可能干扰识别
- 有些应用(用了特殊安全机制)可能无法被操控
- 网络延迟会影响实时交互的流畅度
- Windows 支持仍在开发中
Computer Use + Hooks 的高级组合
可以用 Hooks 在 Computer Use 截图后自动处理结果:
json
// .claude/settings.json
{
"hooks": {
"PostToolUse": [{
"matcher": "computer_use",
"hooks": [{
"type": "command",
"command": ".claude/hooks/save-screenshot.sh"
}]
}]
}
}bash
# .claude/hooks/save-screenshot.sh
#!/bin/bash
# 把每次截图保存到 screenshots/ 目录
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
mkdir -p screenshots
cp /tmp/claude-screenshot-*.png screenshots/screenshot_$TIMESTAMP.png
echo "截图已保存:screenshots/screenshot_$TIMESTAMP.png"来源:Claude Code Computer Use 文档 | Week 13 What's New | Week 14 What's New | 整理:ClaudeEagle