2025 年 6 月 25 日,Andrej Karpathy 在 X 上公开为"context engineering"背书,将其定义为"用恰当的信息填满上下文窗口,供下一步使用"(filling the context window with just the right information for the next step),并补充说 LLM 应用还需要"把问题恰当地拆成控制流、把上下文窗口打包得当"。此后 LangChain、Anthropic 等先后发文系统化这一概念,到 2026 年它已取代"提示词工程"成为 Agent 开发的默认话语。
为什么窗口明明越来越大(主流模型 20 万至百万 token),上下文反而更紧张了?三个原因:
所以上下文工程的核心不是"多给",而是在有限的注意力预算内做信息编排:什么该进窗口、什么时候进、什么时候清出去。
拆开一次典型的 AI 编程会话,上下文由六层构成,每层都有专属工具与陷阱:
| 层次 | 装什么 | 代表机制/工具 | 典型陷阱 |
|---|---|---|---|
| 系统层 | 厂商内置的系统提示、工具定义 | 各家 Agent 框架内置 | 不可控,只能适配 |
| 规则层 | 项目约定、技术栈边界、代码风格 | CLAUDE.md、AGENTS.md、Cursor .cursor/rules、Kiro steering | 规则文件越写越长,反而稀释注意力;多工具格式不统一 |
| 检索层 | 与当前任务相关的代码片段 | 语义索引、grep 类工具、仓库地图 | 检索不准时模型"脑补"出不存在 的 API |
| 记忆层 | 跨会话的项目知识、决策历史 | mem0、Letta(原 MemGPT)、Claude Code auto memory、CLAUDE.md 追加式记忆 | 过期记忆比没有记忆更糟,需要淘汰机制 |
| 工具层 | MCP 服务器清单与每轮工具输出 | MCP 生态(见 005 篇) | 工具定义本身占 token;输出无截断会爆炸 |
| 历史层 | 本会话的对话与 diff | 各工具内置;Claude Code /compact | 失败尝试留在历史里,模型反复走上次错路 |
工程上的四个杠杆因此清晰:规则前置(稳定、精炼、命中缓存)、检索按需(少而准胜过多而杂)、记忆外置(跨会话知识进文件或数据库,不靠模型硬记)、历史常压缩(里程碑后主动总结,丢弃失败路径)。这四件事没有一件依赖特定厂商——这是上下文工程作为"方法论"比工具更保值的原因。
规则文件是上下文工程里最平民化的战场。Anthropic 的 CLAUDE.md 开创了"仓库级说明 + 自动加载"的范式;OpenAI 随后为 Codex 推广开放的 AGENTS.md 约定,到 2025 年底已被 Cursor、Gemini CLI 等多家工具采纳。现状是两套标准事实并存:CLAUDE.md 生态成熟(支持自动记忆追加、分层覆盖),AGENTS.md 胜在厂商中立。务实做法是两者都放:AGENTS.md 写正式规范,CLAUDE.md 只写一行"读 AGENTS.md"。
通用记忆方案在 2025-2026 年快速成熟:开源的 mem0(提取-存储-召回的记忆层,可自托管)、Letta(原 MemGPT,把记忆管理做成操作系统式的分页)都有可观的开源采用;Claude Code 则内置了 auto memory——会话中自动把稳定结论写回 CLAUDE.md。共同问题仍是记忆淘汰:项目转向后,旧记忆不清理就会持续污染决策。
任务:给一个约 5 万行的存量 SaaS 项目加"团队计费"功能。策略 A(裸对话):直接开新会话说需求——模型不了解技术栈约定,生成的代码用错 ORM、目录放错位置,三四轮返工后历史塞满失败 diff,进一步拖垮后续质量。策略 B(上下文工程):CLAUDE.md 里写清技术栈与目录约定,先让 Agent 读 auth 与 billing 相邻模块建立"仓库地图",把验收标准写成任务清单,每完成一个里程碑 /compact 一次再继续。社区大量复盘报告的方向性结论一致:B 的轮次与 token 花费通常显著低于 A,且产物更贴近项目既有风格。
启示:差距不是模型差距,是信息编排差距。这也是本系列反复强调"规则文件是资产"的原因——它每换一个工具都能复用。
Cursor 的代码库语义索引(Ask 模式全仓检索)、Claude Code 的子 Agent(把"翻遍仓库找证据"这类脏活派给子 Agent,只回传结论,主上下文保持干净)、Kiro 的 steering 目录、各类 .agents/.cursor/rules 的分层规则,本质都是同一件事:把上下文编排从用户的手工活变成产品能力。选购工具时,考察的重点正在从"接了哪个模型"转向"上下文管理给了哪些旋钮"。
个人开发者:先吃免费的红利。一个下午的投资(写规则文件 + 固定"检索-压缩"节奏)就能让同一份订阅的产出翻倍,是所有 AI 编程技巧里 ROI 最高的一档。别追新工具,先把现有工具的上下文功能用满。
小团队:规则库即工程文化。把 code review 里的重复意见沉淀进 AGENTS.md,等于给每个新人(和每个 Agent)配了一位不知疲倦的导师;规则文件走 git 评审,本身就是技术决策的存档。
差异化切入点:
AGENTS.md:技术栈与版本、目录约定、测试命令、5 条硬性禁忌,全文控制在 100 行以内;CLAUDE.md 写一行引用它。