Files
2026-07-13 10:45:37 +00:00

9.1 KiB
Raw Permalink Blame History

Note

本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
English · 原始项目 · 上游 README
原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。

Context Engineering 模板

这是一份用于入门 Context Engineering(上下文工程)的综合模板——这门学科致力于为大模型编程助手构建上下文,使其掌握端到端完成任务所需的信息。

Context Engineering 比 prompt engineering(提示工程)好 10 倍,比 vibe coding(凭感觉写代码)好 100 倍。

🚀 快速开始

# 1. Clone this template
git clone https://github.com/coleam00/Context-Engineering-Intro.git
cd Context-Engineering-Intro

# 2. Set up your project rules (optional - template provided)
# Edit CLAUDE.md to add your project-specific guidelines

# 3. Add examples (highly recommended)
# Place relevant code examples in the examples/ folder

# 4. Create your initial feature request
# Edit INITIAL.md with your feature requirements

# 5. Generate a comprehensive PRP (Product Requirements Prompt)
# In Claude Code, run:
/generate-prp INITIAL.md

# 6. Execute the PRP to implement your feature
# In Claude Code, run:
/execute-prp PRPs/your-feature-name.md

📚 目录

什么是 Context Engineering

Context Engineering 代表了相对传统 prompt engineering 的范式转变:

Prompt Engineering 与 Context Engineering 对比

Prompt Engineering

  • 侧重于巧妙的措辞与具体表述
  • 仅限于你如何描述一项任务
  • 就像给别人一张便利贴

Context Engineering

  • 一套用于提供全面上下文的完整系统
  • 包含文档、示例、规则、模式和验证
  • 就像撰写一份细节齐全的完整剧本

为什么 Context Engineering 很重要

  1. 减少 AI 失败:大多数 agent 失败并非模型能力不足,而是上下文不足
  2. 确保一致性AI 会遵循你的项目模式与约定
  3. 支持复杂功能:在充足上下文下,AI 可以处理多步骤实现
  4. 自我纠正:验证循环让 AI 能够自行修复错误

模板结构

context-engineering-intro/
├── .claude/
│   ├── commands/
│   │   ├── generate-prp.md    # Generates comprehensive PRPs
│   │   └── execute-prp.md     # Executes PRPs to implement features
│   └── settings.local.json    # Claude Code permissions
├── PRPs/
│   ├── templates/
│   │   └── prp_base.md       # Base template for PRPs
│   └── EXAMPLE_multi_agent_prp.md  # Example of a complete PRP
├── examples/                  # Your code examples (critical!)
├── CLAUDE.md                 # Global rules for AI assistant
├── INITIAL.md               # Template for feature requests
├── INITIAL_EXAMPLE.md       # Example feature request
└── README.md                # This file

本模板暂不聚焦将 RAG 与工具纳入 context engineering,因为这方面我还有更多内容即将推出。;)

分步指南

1. 设置全局规则(CLAUDE.md

CLAUDE.md 文件包含 AI 助手在每次对话中都会遵循的项目级规则。模板包括:

  • 项目感知:阅读规划文档、检查任务
  • 代码结构:文件大小限制、模块组织
  • 测试要求:单元测试模式、覆盖率期望
  • 风格约定:语言偏好、格式化规则
  • 文档标准Docstring 格式、注释实践

你可以直接使用提供的模板,也可以按项目自行定制。

2. 创建初始功能需求

编辑 INITIAL.md,描述你想构建的内容:

## FEATURE:
[Describe what you want to build - be specific about functionality and requirements]

## EXAMPLES:
[List any example files in the examples/ folder and explain how they should be used]

## DOCUMENTATION:
[Include links to relevant documentation, APIs, or MCP server resources]

## OTHER CONSIDERATIONS:
[Mention any gotchas, specific requirements, or things AI assistants commonly miss]

完整示例见 INITIAL_EXAMPLE.md

3. 生成 PRP

PRPProduct Requirements Prompts,产品需求提示)是包含以下内容的综合实现蓝图:

  • 完整上下文与文档
  • 带验证的实现步骤
  • 错误处理模式
  • 测试要求

它们与 PRDProduct Requirements Documents,产品需求文档)类似,但更为专门地用于指导 AI 编程助手。

在 Claude Code 中运行:

/generate-prp INITIAL.md

注意: 这些斜杠命令是在 .claude/commands/ 中定义的自定义命令。你可以查看其实现:

  • .claude/commands/generate-prp.md —— 了解其如何调研并创建 PRP
  • .claude/commands/execute-prp.md —— 了解其如何根据 PRP 实现功能

这些命令中的 $ARGUMENTS 变量会接收你在命令名之后传入的参数(例如 INITIAL.mdPRPs/your-feature.md)。

该命令将:

  1. 读取你的功能需求
  2. 调研代码库中的模式
  3. 搜索相关文档
  4. PRPs/your-feature-name.md 中创建完整的 PRP

4. 执行 PRP

生成后,执行 PRP 以实现你的功能:

/execute-prp PRPs/your-feature-name.md

AI 编程助手将:

  1. 读取 PRP 中的全部上下文
  2. 制定详细的实现计划
  3. 逐步执行并验证
  4. 运行测试并修复问题
  5. 确保满足所有成功标准

编写高效的 INITIAL.md 文件

关键章节说明

FEATURE:具体且全面

  • "构建一个网页爬虫"
  • "构建一个使用 BeautifulSoup 的异步网页爬虫,从电商网站提取产品数据,处理速率限制,并将结果存入 PostgreSQL"

EXAMPLES:善用 examples/ 文件夹

  • 将相关代码模式放入 examples/
  • 引用应遵循的具体文件与模式
  • 说明应模仿哪些方面

DOCUMENTATION:包含所有相关资源

  • API 文档 URL
  • 库使用指南
  • MCP 服务器文档
  • 数据库 schema

OTHER CONSIDERATIONS:记录重要细节

  • 身份认证要求
  • 速率限制或配额
  • 常见陷阱
  • 性能要求

PRP 工作流

/generate-prp 如何工作

该命令遵循以下流程:

  1. 调研阶段

    • 分析代码库中的模式
    • 搜索类似实现
    • 识别应遵循的约定
  2. 文档收集

    • 获取相关 API 文档
    • 纳入库文档
    • 补充陷阱与注意事项
  3. 蓝图创建

    • 创建分步实现计划
    • 包含验证关卡
    • 添加测试要求
  4. 质量检查

    • 评估置信度(1-10
    • 确保包含全部上下文

/execute-prp 如何工作

  1. 加载上下文:读取完整 PRP
  2. 规划:使用 TodoWrite 创建详细任务列表
  3. 执行:实现各个组件
  4. 验证:运行测试与 lint
  5. 迭代:修复发现的问题
  6. 完成:确保满足所有要求

生成内容的完整示例见 PRPs/EXAMPLE_multi_agent_prp.md

有效使用示例

examples/ 文件夹对成功至关重要。当 AI 编程助手能看到可遵循的模式时,表现会好得多。

示例中应包含什么

  1. 代码结构模式

    • 模块组织方式
    • import 约定
    • 类/函数模式
  2. 测试模式

    • 测试文件结构
    • Mock 方法
    • 断言风格
  3. 集成模式

    • API 客户端实现
    • 数据库连接
    • 身份认证流程
  4. CLI 模式

    • 参数解析
    • 输出格式化
    • 错误处理

示例结构

examples/
├── README.md           # Explains what each example demonstrates
├── cli.py             # CLI implementation pattern
├── agent/             # Agent architecture patterns
│   ├── agent.py      # Agent creation pattern
│   ├── tools.py      # Tool implementation pattern
│   └── providers.py  # Multi-provider pattern
└── tests/            # Testing patterns
    ├── test_agent.py # Unit test patterns
    └── conftest.py   # Pytest configuration

最佳实践

1. 在 INITIAL.md 中明确说明

  • 不要假设 AI 了解你的偏好
  • 包含具体的要求和约束
  • 大量引用示例

2. 提供全面的示例

  • 示例越多 = 实现越好
  • 同时展示该做什么和不该做什么
  • 包含错误处理模式

3. 使用验证关卡

  • PRP 包含必须通过测试命令
  • AI 会迭代直到所有验证通过
  • 这确保第一次就能得到可运行的代码

4. 利用文档

  • 包含官方 API 文档
  • 添加 MCP 服务器资源
  • 引用具体的文档章节

5. 自定义 CLAUDE.md

  • 添加你的约定
  • 包含项目特定规则
  • 定义编码标准

资源