Claude Code: 实战:Chrome 扩展与并行任务

最后更新:2026-08-31

学了这么多,是时候真刀真枪地干了。本章通过两个实战场景——Chrome 扩展开发和并行任务管理——展示 Claude Code 的真实战斗力。

💡 提示:实战中 Claude Code 的价值不在于单次输出,而在于"理解需求 → 拆解任务 → 执行 → 验证 → 迭代"的完整闭环。

📋 前置知识:第二十章 检查点与回滚

1. 你将学到


2. 实战一:Chrome 扩展开发

(1) 项目概述

Alice 需要开发一个 Chrome 扩展——"网页高亮标注工具":

(2) 让 Claude Code 完成开发

TEXT 📖 仅展示
> 创建一个 Chrome 扩展:网页高亮标注工具

功能要求:
1. 选中文字后右键菜单"高亮标注"
2. 支持 4 种颜色:黄/绿/蓝/红
3. 标注持久化(Chrome storage API)
4. Popup 面板管理标注列表
5. 一键导出为 Markdown

技术要求:
- Manifest V3
- TypeScript
- 无框架(原生 DOM)
- 遵循 Chrome 扩展最佳实践

Claude Code:
  → Creating project structure...
  → Creating manifest.json (Manifest V3)
  → Creating src/background.ts (service worker)
  → Creating src/content.ts (content script)
  → Creating src/popup/ (popup UI)
  → Creating src/storage.ts (标注持久化)
  → Creating src/export.ts (Markdown 导出)
  → Creating tsconfig.json & package.json
  → Running: npm run build ✓

  项目创建完成!7 个源文件,功能完整。

▶ 示例 1: 迭代增强功能

TEXT 📖 仅展示
# 第一轮:基础功能完成,开始迭代

> 添加功能:点击已有高亮可以取消标注

Claude Code:
  → Reading src/content.ts
  → Adding click-to-remove handler
  → Adding remove-highlight animation
  → Running: npm run build ✓

> 添加功能:标注列表支持搜索

Claude Code:
  → Reading src/popup/popup.ts
  → Adding search input with filter
  → Running: npm run build ✓

> 添加功能:支持在 PDF 页面中标注

Claude Code:
  → PDF 使用 embed/object,无法直接注入 content script
  → 替代方案:使用 PDF.js 渲染 PDF,然后注入标注功能
  → This is a significant change. /checkpoint "PDF support"
  → Adding PDF.js integration
  → Creating src/pdf-viewer.ts
  → Modifying manifest.json for PDF handling
  → Running: npm run build ✓

(3) 项目结构

TEXT 📖 仅展示
chrome-highlighter/
├── manifest.json
├── src/
│   ├── background.ts      # Service Worker
│   ├── content.ts          # Content Script
│   ├── popup/
│   │   ├── popup.html
│   │   ├── popup.ts
│   │   └── popup.css
│   ├── storage.ts          # 标注持久化
│   ├── export.ts           # Markdown 导出
│   └── pdf-viewer.ts       # PDF 支持
├── icons/
├── dist/                   # 构建输出
├── package.json
└── tsconfig.json

3. 实战二:并行任务管理

(1) 场景描述

Bob 需要同时处理一个后端项目的 4 个独立任务:

  1. 添加用户头像上传功能
  2. 实现数据导出 API
  3. 重构日志系统
  4. 补充缺失的测试

(2) 串行 vs 并行

TEXT 📖 仅展示
# 串行方式(一个接一个)
> 添加用户头像上传功能
[8 min]
> 实现数据导出 API
[6 min]
> 重构日志系统
[10 min]
> 补充缺失的测试
[5 min]
总计: 29 min

# 并行方式(同时执行)
> 同时处理以下4个任务:
> 1. src/api/avatar.ts - 添加头像上传
> 2. src/api/export.ts - 数据导出 API
> 3. src/utils/logger.ts - 重构日志
> 4. tests/ - 补充测试

Claude Code 启动 4 个子代理并行执行:
  子代理1 [avatar]  → ✅ 8min
  子代理2 [export]  → ✅ 6min
  子代理3 [logger]  → ✅ 10min
  子代理4 [tests]   → ✅ 5min
总计: 10 min(最慢子代理的时间)

▶ 示例 2: 并行任务注意事项

TEXT 📖 仅展示
# 问题:并行修改同一文件会冲突

> 并行修改 src/routes/index.ts 中的路由注册

❌ 冲突!多个子代理同时修改同一文件

# 解决:每个任务修改不同文件

> 头像上传只涉及 src/api/avatar.ts 和 src/routes/avatar.ts
> 数据导出只涉及 src/api/export.ts 和 src/routes/export.ts
> 不要修改 src/routes/index.ts(我手动注册路由)

Claude Code:
  子代理1 [avatar files]  → ✅
  子代理2 [export files]  → ✅
  主代理: 汇总结果,生成路由注册代码
  → "请在 src/routes/index.ts 中添加以下两行:
     import avatarRoutes from './avatar';
     import exportRoutes from './export';"

4. 大型任务拆解策略

(1) 拆解原则

原则 说明
独立性 子任务间无文件依赖
原子性 每个子任务有明确完成标准
可验证 每个子任务可独立测试
可回滚 每个子任务可单独回滚

(2) 拆解步骤

TEXT 📖 仅展示
# Alice 的电商项目重构

原始任务:"将项目从 REST 迁移到 GraphQL"

拆解:
1. 定义 GraphQL Schema(独立)
2. 创建 User Resolver(独立,依赖 Schema 定义完成)
3. 创建 Order Resolver(独立,依赖 Schema 定义完成)
4. 创建 Payment Resolver(独立,依赖 Schema 定义完成)
5. 添加 DataLoader 优化 N+1(独立)
6. 迁移路由层(依赖所有 Resolver 完成)
7. 删除旧 REST 路由(最后一步)

执行顺序:
  Step 1: Schema → 完成后
  Step 2-5: 4个 Resolver 并行 → 完成后
  Step 6: 迁移路由 → 完成后
  Step 7: 清理

▶ 示例 3: 分阶段执行

TEXT 📖 仅展示
# Phase 1: Schema
> 只创建 GraphQL Schema 定义文件

/checkpoint "schema-complete"

# Phase 2: 并行创建 Resolver
> 基于已创建的 Schema,并行创建所有 Resolver

/checkpoint "resolvers-complete"

# Phase 3: 路由迁移
> 将路由从 REST 迁移到 GraphQL,删除旧路由

/checkpoint "migration-complete"

# 验证
> 运行全量测试
✅ All 134 tests passed

5. 实战成本控制

(1) 成本监控

TEXT 📖 仅展示
# 每个阶段检查成本

> /cost

Phase 1 (Schema):    $0.45, 15K tokens
Phase 2 (Resolvers): $2.30, 78K tokens (4子代理)
Phase 3 (Migration): $1.80, 60K tokens
─────────────────────────────
Total:               $4.55, 153K tokens

# 对比人工时间:
# 串行开发约 4 小时,Claude Code 约 30 分钟
# 成本 $4.55 vs 工时成本 $200+($50/h × 4h)

(2) 优化策略

策略 节省 方法
精确指令 30-50% 明确文件和约束
分阶段 20-30% 避免一次性大任务
复用上下文 10-20% 短会话 + resume
Sonnet 优先 50-70% 非关键任务用 Sonnet

❓ 常见问题

Q Claude Code 能开发完整的应用吗?
A 能,但需要迭代。首次生成通常能完成 80%,剩余 20% 需要多次迭代完善。
Q 并行任务的最大数量有限制吗?
A 没有硬性限制,但建议不超过 5-6 个。太多子代理会增加冲突概率和 Token 消耗。
Q Chrome 扩展开发有什么特殊注意?
A Manifest V3 的限制、content script 的 CSP 问题、异步消息传递。在 CLAUDE.md 中写明使用 Manifest V3。
Q 如何确保并行任务不冲突?
A 确保每个子任务操作不同的文件。有共享文件时,让主代理处理共享部分,子代理只处理独立部分。
Q 实战中最重要的技巧是什么?
A 拆解任务 + 检查点。大任务拆成小任务,每个检查点验证,出错可精确回滚。
Q 成本太高怎么办?
A 用精确指令减少 Token,非关键任务用 Sonnet/DeepSeek,分阶段执行避免重做。

📖 小节


📝 作业

  1. 基础题(难度⭐):用 Claude Code 创建一个简单的 Chrome 扩展(如页面计时器),验证功能可用。
  2. 进阶题(难度⭐⭐):开发一个 Chrome 扩展并迭代增强 2 个功能,使用检查点管理每次迭代。
  3. 挑战题(难度⭐⭐⭐):设计一个 4 任务并行方案,对比串行和并行的实际执行时间和 Token 消耗差异。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏