💡 比 Prompt 强 10 倍,比 Vibe Coding 强 100 倍
**难度: ** ⭐⭐⭐ 进阶 | **阅读时间: ** 8 分钟
前言
**一个颠覆认知的事实: **
大多数 AI 编程失败,不是模型不行,而是上下文不行。
你还在:
-
❌ 绞尽脑汁写"完美提示词"
-
❌ 反复调整措辞和语气
-
❌ 每次都要重新解释项目结构
高手已经:
-
✅ 构建完整的上下文系统
-
✅ 让 AI 自动遵循项目规范
-
✅ 一次设置,重复使用
**这就是 Context Engineering(上下文工程)的力量。 **
什么是 Context Engineering?
Prompt Engineering vs Context Engineering
| 维度 | Prompt Engineering | Context Engineering |
|------|-------------------|---------------------|
| 核心 | 巧妙的措辞 | 完整的上下文系统 |
| 范围 | 单次任务描述 | 文档 + 示例 + 规则 + 验证 |
| 比喻 | 给别人一张便利贴 | 写一部完整的剧本 |
| 效果 | 临时解决 | 系统性解决 |
**简单理解: **
Prompt Engineering = 如何说
Context Engineering = 说什么 + 怎么说 + 为什么这么说
为什么 Context Engineering 很重要
-
减少 AI 失败:80% 的 AI 失败是上下文缺失导致的
-
确保一致性:AI 自动遵循你的项目规范
-
实现复杂功能:AI 可以处理多步骤、跨文件的实现
-
自我纠正:验证循环让 AI 能修复自己的错误
核心框架:CLAP 模型
我总结了 Context Engineering 的四大支柱:
┌──────────────────────────────────────────┐
│ Context Engineering │
├──────────────────────────────────────────┤
│ C - Context(上下文) │
│ ├─ 项目结构文档 │
│ ├─ 技术栈说明 │
│ └─ 业务逻辑说明 │
├──────────────────────────────────────────┤
│ L - Libraries(库与工具) │
│ ├─ 使用的框架和库 │
│ ├─ 版本约束 │
│ └─ API 文档链接 │
├──────────────────────────────────────────┤
│ A - Architecture(架构) │
│ ├─ 代码组织模式 │
│ ├─ 文件命名规范 │
│ └─ 模块依赖关系 │
├──────────────────────────────────────────┤
│ P - Patterns(模式与示例) │
│ ├─ 代码示例 │
│ ├─ 常见陷阱 │
│ └─ 最佳实践 │
└──────────────────────────────────────────┘
5 分钟快速开始
1. 创建项目规则文件(CLAUDE.md)
在项目根目录创建 CLAUDE.md:
# 项目全局规则
## 项目结构
- src/ - 源代码
- tests/ - 单元测试
- docs/ - 文档
## 代码规范
- 使用 TypeScript
- 函数不超过 50 行
- 每个文件必须有文档字符串
## 测试要求
- 单元测试覆盖率 > 80%
- 使用 Jest 测试框架
2. 创建示例文件夹(examples/)
examples/
├── api-calls/ # API 调用示例
├── error-handling/ # 错误处理示例
├── database/ # 数据库操作示例
└── ui-components/ # UI 组件示例
**示例的力量: ** AI 从具体代码中学习最好。
3. 编写功能请求(INITIAL.md)
## FEATURE:
使用 BeautifulSoup 构建异步网络爬虫,从电商网站提取产品数据,
处理速率限制,并将结果存储在 PostgreSQL 中
## EXAMPLES:
- examples/api-calls/async-fetch.ts - 异步请求模式
- examples/error-handling/retry.ts - 重试机制
## DOCUMENTATION:
- https://www.beautifulsoup.com/docs/
- https://www.postgresql.org/docs/
## OTHER CONSIDERATIONS:
- 需要处理速率限制(每秒最多 5 请求)
- 需要处理反爬虫机制
- 数据需要去重
4. 生成 PRP(产品需求提示)
在 Claude Code 中运行:
/generate-prp INITIAL.md
PRP 会包含:
-
完整的上下文和文档
-
带验证的实现步骤
-
错误处理模式
-
测试要求
5. 执行 PRP
/execute-prp PRPs/your-feature-name.md
AI 将:
-
读取所有上下文
-
创建详细实现计划
-
逐步执行并验证
-
运行测试并修复问题
实战演示
示例 1:API 集成
**WITHOUT Context Engineering: **
帮我写一个 API 调用
→ AI 不知道用什么库、什么认证方式、什么错误处理
**WITH Context Engineering: **
按照 examples/api-calls/ 中的模式,
调用 GitHub API 获取用户信息
参考 CLAUDE.md 中的错误处理规范
→ AI 知道用什么库、什么认证、什么错误处理
示例 2:数据库操作
**WITHOUT: **
帮我写个数据库查询
→ AI 不知道用什么 ORM、什么表结构
**WITH: **
按照 examples/database/ 中的 Repository 模式,
查询用户表,参考 docs/schema.md 中的表结构
使用 CLAUDE.md 中指定的 TypeORM
→ AI 知道用什么模式、什么表、什么 ORM
高级技巧
1. 创建领域特定模板
templates/
├── api-integration/ # API 集成模板
├── database-migration/ # 数据库迁移模板
├── ui-component/ # UI 组件模板
└── test-suite/ # 测试套件模板
2. 使用多个 PRP
对于复杂功能,拆分为多个 PRP:
/generate-prp INITIAL_part1.md # 后端 API
/generate-prp INITIAL_part2.md # 前端界面
/generate-prp INITIAL_part3.md # 测试用例
3. 建立验证循环
在 PRP 中包含自动验证:
## 验证步骤
1. 运行 `npm test` - 所有测试必须通过
2. 运行 `npm run lint` - 无错误
3. 手动测试:[具体步骤]
4. 性能检查:[指标要求]
最佳实践
✅ 应该做的
| 实践 | 说明 |
|------|------|
| 从 INITIAL.md 开始 | 始终先写下你的想法 |
| 使用示例 | 提供代码示例供 AI 模仿 |
| 迭代改进 | 根据结果改进上下文 |
| 记录决策 | 在 CLAUDE.md 中记录项目决策 |
| 运行验证 | 始终验证 AI 的输出 |
❌ 不应该做的
| 错误 | 后果 |
|------|------|
| 假设上下文 | AI 会误解需求 |
| 跳过示例 | AI 无法学习模式 |
| 一次性全部完成 | 容易出错,难调试 |
| 不更新上下文 | 项目演进后上下文失效 |
常见问题
Q1: Context Engineering 适合什么规模的项目?
**A: ** 从小型项目(100 行代码)到大型项目(10 万 + 行代码)都适用。关键是上下文的组织方式。
Q2: 我需要为每个功能创建 INITIAL.md 吗?
**A: ** 是的,每个功能都应该有自己的 INITIAL.md。这确保 AI 有清晰的上下文。
Q3: 如果 AI 没有遵循我的示例怎么办?
**A: ** 在 CLAUDE.md 中更明确地说明。例如:"始终遵循 examples/ 中的错误处理模式"。
Q4: 可以将此用于其他 AI 助手吗?
**A: ** 可以!虽然这是为 Claude Code 设计的,但原则适用于任何 AI 编码助手(Cursor、Cline 等)。
学习资源
-
GitHub 项目:github.com/toyball8607…
-
英文原版:coleam00/context-engineering-intro (12,963⭐)
-
Claude Code 文档:docs.anthropic.com/claude-code
总结
本文介绍了 Context Engineering 的核心概念:
-
是什么:提供完整上下文的系统,而非单次提示
-
为什么重要:减少 80% 的 AI 失败,确保一致性
-
CLAP 模型:Context + Libraries + Architecture + Patterns
-
如何开始:CLAUDE.md + examples/ + INITIAL.md + PRP 工作流
**记住: ** 好的上下文 = 好的 AI 输出
关于系列
这是《AI 开发者效率手册》系列的第 3 篇,共 17 篇。
**上一篇: ** 别写 Selenium 了!让 AI 直接控制浏览器
**后续文章预告: **
-
#004 GitMCP:让 AI 读懂你的代码仓库
-
#005 LangGraph 入门:构建多 Agent 工作流
-
#006 DeerFlow:智能工作流引擎实战
-
...(共 17 篇)
**关注我,不错过后续更新。 **
**作者: ** toyball
**GitHub: ** github.com/toyball8607…
已发布 17+ 开源项目 | 专注 AI 工具本地化
*本文遵守 CC BY-NC-SA 4.0 许可协议,转载请注明出处。 *