EP11. "Agents:Claude Code 与 Computer Use"
🔒 登录后可标记已读- Claude Code 不只是写代码,能贯穿从项目初始化、规划、实现、测试到部署维护的整个开发流程——效果好不好,很大程度取决于你给它多少上下文和结构
- 两套最见效的工作流是「先规划再动手写」和「测试驱动开发」,两者共同点都是先明确禁止 Claude 直接写代码,逼它先想清楚再动手
- Claude Code 能接 MCP Server 扩展能力(比如接 Sentry 抓生产环境错误、接 Jira 拿票据需求),也能用 Git worktrees 让多个 Claude Code 实例平行跑在各自独立的工作区,互不冲突
- Computer Use 让 Claude 能像人一样操作桌面环境——截图、点击、打字、切应用,本质上还是标准的 tool use,只是这次的"工具"模拟的是鼠标键盘操作,不是查数据库
- 有效的 agent 有四个共同特质:专注的工具集 + 循环执行、上下文靠工具主动获取(Claude 对你的环境没有天生认知)、适合高价值/低错误成本的任务、靠严格测试持续验证
- 前置知识:EP04/EP05 的 tool use(Computer Use 底层复用同一套机制)
重点内容
Claude Code:贯穿整个开发周期的搭档
新项目最先用的是 /init 命令——Claude Code 会检查你的代码库,记录项目结构、依赖、常用命令、代码风格,汇总写进一份 CLAUDE.md 文件,之后的对话会自动参照这份文件。
可以维护多份不同范围的 CLAUDE.md:
| 范围 | 用途 |
|---|---|
| Project | 存在 git 里,团队成员共享 |
| Local | 不进 git,自己给 Claude 的私人笔记 |
| User | 套用到你所有的项目 |
💡 跑 /init 时可以指定要 Claude 重点关注哪些地方;用 # 这个快捷键能快速把一条笔记附加进 CLAUDE.md。
📌 Claude 更多是一个「效果倍增器」——给的上下文和结构越充分,产出质量提升得越明显。
两个高效工作流
先规划再写(Planning-First Workflow),适合复杂功能,三步:
- 喂上下文给 Claude——找出跟这个功能相关的文件,分享给它
- 让 Claude 先规划方案——说清楚需求,但明确要求 Claude 先不要写代码
- 让 Claude 实现方案——有了扎实的规划,Claude 能基于已经理清的上下文和计划来写代码
举例:做一个文档转换工具,可以先让 Claude 看现有的工具范例和辅助函数,再让它列出实现步骤,最后才要求它真正写代码。
测试驱动开发(Test-Driven Development Workflow),前期投入更多,但能大幅提升效果,四步:
- 喂上下文给 Claude——分享跟这个功能相关的文件
- 让 Claude 先想测试用例——同样明确要求先不要写任何代码
- 让 Claude 实现这些测试——挑出看起来跟这个功能相关的测试
- 让 Claude 写能通过测试的代码——Claude 会反复迭代,直到测试全部通过
这套方法有助于确保代码可靠、顾及到你可能没想到的边界情况。
📌 除了写代码,Claude 还能处理:环境搭建和依赖安装、暂存/提交改动并写有意义的 commit message、跑测试套件并分析结果、用 /clear 清掉对话历史重置上下文。
由于 Claude Code 会自动读取 CLAUDE.md,任何写进去的编码规范、项目专属笔记、架构决策,都会持续影响它之后的每次互动——积累得越多,Claude 对项目的理解就越到位。
接 MCP Server 扩展 Claude Code
MCP server 能让 Claude Code 连接外部服务,每个 server 能提供工具、prompts、resources 来扩展 Claude 能做的事。
加一个 MCP server:先停掉正在跑的 Claude Code session,再执行:
claude mcp add documents uv run main.py
需要两个参数:server 名字(自己取,比如 "documents")、启动这个 MCP server 的命令。加完后重启 Claude Code 就会自动连上这个 server。
课程示例:接一个自定义的文档转换 MCP server,让 Claude 能读取并把 PDF、Word 文档转成 markdown。
几个热门的开发用 MCP server:
| MCP Server | 用途 |
|---|---|
sentry-mcp | 找出并修复 Sentry 记录的 bug |
playwright-mcp | 浏览器自动化测试 |
figma-context-mcp | 把 Figma 设计暴露给 Claude |
mcp-atlassian | 访问 Confluence 和 Jira |
firecrawl-mcp-server | 加上网页抓取能力 |
slack-mcp | 发消息或回复 Slack 讨论串 |
💡 真正的威力在于把多个 MCP server 组合起来,贴合自己的开发需求——比如同时接 Sentry(拿生产环境错误详情)+ Jira(拿票据需求)+ Slack(团队通知)+ 自定义 server(特定工具/流程),这种灵活性让 Claude Code 能适应各种不同的开发环境。
平行跑多个 Claude Code:Git Worktrees
📌 同时跑多个 Claude Code 实例是能拿到的最大生产力提升之一。
主要挑战:多个实例同时改同一批文件会冲突。解法:给每个 Claude 实例一个独立的工作区。
Git Worktrees:Git 分支机制的延伸,能在同一台机器的不同目录下,建出项目的完整副本——每个 worktree 对应一个独立分支,可以互不干扰地各自开发不同功能。
Claude Code 能自动化整个流程:在指定文件夹建新的 git worktree、给未纳入版本控制的依赖建符号链接、在那些目录里启动新的 VS Code 实例。
自定义命令:在 .claude/commands 下加 markdown 文件就能建自定义斜杠命令,用 $ARGUMENTS 占位符接收动态输入,例如 /project:create_worktree feature_a。
平行开发工作流示例:多个 Claude 实例同时各自处理独立任务——更新文档测试、加日志、加笔记功能、加减法工具。改动完成后,自动化流程负责合并,基于 Claude 对各分支改动的理解处理冲突。
效果:这套做法能随着并行实例数量扩展,有效地把开发产能乘上去。
自动化除错:生产环境错误自动修
问题:在开发环境跑得好好的应用,部署到生产环境却可能出问题。课程举例:一个能生成表格的聊天机器人,本地跑得完美,部署到 AWS Amplify 后却静默失败。
传统流程:手动翻 CloudWatch 日志、解析错误堆栈、找出根本原因、写修复、重新部署——非常耗时。
自动化方案:一个每天跑一次的 GitHub Action workflow,步骤:
- Checkout 代码库、装依赖
- 拉过去 24 小时的 CloudWatch 日志
- Claude 分析错误、去重
- Claude 自动修代码
- 建 pull request 给人复核
真实案例:Claude 找出生产环境配置里一个无效的 model identifier,自动改正并附上说明文档。
好处:主动监控、省时间、修复过程有据可查、走正常复核流程、能持续改进。
⚠️ 落地注意事项:要有合适的 AWS 权限、要有错误去重逻辑、要管理好上下文窗口大小、workflow 跑的时机要仔细考虑。
Computer Use:控制电脑界面
Computer Use 让 Claude 能像人一样操作桌面环境,解锁了超越文字生成的自动化、测试、复杂工作流可能性。
Claude 能做到:截图观察屏幕内容、点击按钮和链接、在表单/应用里打字、在不同应用/浏览器分页间切换、执行需要视觉反馈的多步骤流程。特别适合需要跟用户界面互动、验证功能是否正常的 QA 测试场景。
真实案例:自动化 QA 测试——一个 React 组件带自动完成功能(打 @ 提及文件/资源),表面看起来能用,但想彻底测边界情况。给 Claude 具体测试用例:
- 验证打「Did you read @」会显示自动完成选项
- 测试按 Enter 能正确把 mention 加进文本框
- 检查加了 mention 后按 backspace,自动完成列表位置是否正确
Claude 系统化地逐条测试、截图、跟界面互动、记录结果。示例里前两个测试通过,第三个测试失败——backspace 后自动完成下拉框出现的位置不对。
测试流程:打开浏览器、导航到你的应用 → 逐条执行测试用例 → 截图验证视觉行为 → 每次测试之间刷新页面保持干净状态 → 记录具体的通过/失败细节 → 给出带可执行建议的总结报告。
📌 主要优势:Claude 能抓到人工测试时容易漏掉的问题,而且每次代码改动后都能跑一样的测试、结果稳定一致。
环境搭建(出于安全考虑要隔离运行):一个跑桌面环境的 Docker 容器、一个 Claude 能控制的浏览器实例、给你下指令的聊天界面、跟主系统完全隔离。
最佳实践:明确说清楚要 Claude 测什么/完成什么;给每个任务清楚的成功标准;复杂流程拆成小步骤;一定在隔离环境里跑;Claude 的发现要人工复核重要结果。
Computer Use 怎么运作:本质还是 Tool Use
Computer Use 建立在跟标准 tool use 一样的基础原理上——不是呼叫外部 API 或数据库,而是让 Claude 发请求去控制电脑界面。
Tool Use 流程回顾:把问题和工具 schema 一起发给 Claude → Claude 判断要不要用工具 → Claude 回传工具调用请求(工具名+参数)→ 你的 server 执行工具函数、拿结果 → 把结果送回给 Claude。例如问旧金山天气,Claude 会调用 get_weather 函数并带上地点参数,你的 server 去查数据再回传。
Computer Use:同一套流程,换了个工具。这次"工具"模拟的是电脑交互:鼠标移动和点击、键盘输入和组合键、截图、滚动等界面操作。开启后,Claude 会拿到一个特殊的工具 schema,背后自动展开成一整套完整界面操作能力,开发者不用手动逐一定义。
技术实现:需要一个能真正执行 Claude 请求动作的运算环境。参考实现用的是跑 Firefox 的 Docker 容器,配上模拟按键和鼠标移动的代码。Claude 发工具调用请求,server 在容器环境里执行对应动作——点按钮、打字、截图。
📌 重要认知:Claude 不是直接在控制电脑,它是在发工具请求,你的基础设施负责把这些请求转译成真正的电脑操作。
上手准备:不用从零搭基础设施,Anthropic 提供参考实现。需要:本机装好 Docker runtime、本机配置好 AWS profile(通常叫 "default")、从 Anthropic quickstarts 仓库拿参考实现。准备好之后一条命令就能启动 Docker 容器,界面左侧是聊天界面、右侧是浏览器环境,Claude 在里面跟网页和应用互动。完整搭建指南在 Anthropic quickstarts 的 GitHub 仓库里。
有效 Agent 的四个关键特质
有效的 agent 会展示一种系统化的解题方式:专注的工具使用、对环境的持续感知、反复迭代执行。课程举例:Claude 处理某任务时用了四次工具调用——两次读现有文件、一次更新文件、一次跑测试——其中三次纯粹是在收集信息,才轮到真正动手改,这是一种「先观察、再行动」的方法论。
Claude Code 和 Computer Use 共享这些特征:工具驱动的循环执行、透过工具互动获取环境上下文、专注且定义清楚的工具集、高价值且错误成本可控的任务、持续的反馈循环。
四个关键特质:
- 专注的工具集 + 循环执行:持续执行工具,直到达到迭代上限、遇到错误,或满足成功标准才停
- 上下文就是一切:Claude 对你的具体环境没有天生认知,必须靠工具去了解当下系统状态
- 高价值、低错误成本的任务:最适合复杂、知识密集型的工作,出错也不会造成重大损失的场景
- 持续评测:打造有效 agent 唯一可靠的方式就是严格测试
学完你会
- ✅ 用「先规划再写」或「测试驱动」两套工作流,让 Claude Code 在复杂功能上发挥更大效果
- ✅ 给 Claude Code 接上 MCP server(Sentry、Jira、自定义工具)、用 Git worktrees 让多个实例并行开发
- ✅ 理解 Computer Use 本质上是 tool use 的延伸,能用它做自动化 QA 测试等需要真正操作界面的任务
- ✅ 判断一个任务适不适合交给 agent——专注工具集、够多上下文、错误成本低、有持续评测机制,才是靠谱的组合
Sources
官方文档:
- Claude with Amazon Bedrock(Claude Academy 课程)— https://academy.claude.com/courses/claude-with-amazon-bedrock