本节将把 Computer Use 投入到真实的(模拟)工作中。 下面通过三个不同难度的案例,展示从简单的网页任务到复杂的跨应用工作流。
5.4.1 案例一:智能填表员
场景 :有一张 Excel 表格,里面有 10 个客户的姓名和地址。需要把它们一个个复制粘贴到一个老旧的 CRM 网页表单里,并点击“提交”。
难点 :CRM 系统没有 API,且 input 框的 id 是随机生成的,无法用传统爬虫。
复制 task = """
1. 打开桌面的 'customers.csv' 文件。
2. 打开 Firefox 浏览器,访问 'http://internal-crm.local'。
3. 对于 CSV 中的每一行:
a. 此刻在 CRM 页面上找到 'Name' 框,输入姓名。
b. 找到 'Address' 框,输入地址。
c. 点击 'Submit' 按钮。
d. 等待 'Success' 弹窗出现,点击 'OK'。
"""
run_agent (task) Read : 调用 str_replace_editor 读取 CSV 内容。
Open : 点击 Firefox 图标,输入 URL。
Loop :
Claude 会看着屏幕:"如果你能看到 'Name' 旁边那个白框,那就是输入框。"
它不需要知道 DOM 结构,它像人一样认出了输入框。
它会等待屏幕变化(Visual Feedback 视觉反馈),确认弹窗出现后再进行下一条。
5.4.2 案例二:视觉自动化测试
场景 :作为前端开发人员,想测试在不同分辨率下,网站的导航栏是否会重叠错位。
难点 :传统的单元测试测不出来 CSS 的视觉 Bug。
这里 Claude 扮演了 QA 的角色。它不仅仅是在操作,更是在判断 。
"Wait, at 375px width, the logo implies overlapping with the menu icon." -> 记录 Bug。
这就是 Computer Use 的核心优势:Semantic Understanding of UI (UI 的语义理解) 。
5.4.3 案例三:跨应用综合任务
场景 :每日早报生成。需要从网上搜集今天的科技新闻,整理成摘要,配上一张图,然后发到 Slack 群里。
涉及应用 :Chrome (搜索), VS Code (写摘要), Files (存图片), Slack (发送)。
上下文切换 (Context Switching) : Claude 需要在浏览器和编辑器之间来回切换 (Alt+Tab)。它需要记住"我刚才在浏览器里看到了什么",然后去编辑器里写下来。
文件路径 : 在上传图片时,Slack 的文件选择器是系统的原生窗口。Claude 需要能操作 Linux 的文件选择对话框("Click User -> Desktop -> cover.jpg")。这对传统自动化脚本来说是噩梦,但对 Claude 来说只是又一个 UI 界面而已。
在实战中,会发现 Claude 经常犯傻。比如盯着加载中的页面发呆,或者点不中那个微小的关闭按钮。
告诉 Agent:"点击后,请等待页面完全加载,直到你看到某某标志出现,再进行下一步。"
Mouse : move(500, 300) -> click()。容易受分辨率影响,容易点偏。
Keyboard : key("Super_L") (打开开始菜单) -> type("Chrome") -> key("Return")。
Rule (原则) : 能用快捷键(Ctrl+C, Ctrl+V, Ctrl+T)解决的,绝对不要用鼠标点。
让 Agent 具备韧性。 "由于网络波动,如果你点击提交后 10秒没反应,请刷新页面重试,不要卡在那里。"
Computer Use 虽好,但并非万能。目前它还处于 Beta 阶段,有着明显的局限性。我们需要了解这些边界,才能避坑。
➡️ 最佳实践与局限性