Skip to content

AGENTS.md:Agent 的上下文策略层

Published:
• 7 min read

Prompt Engineering 关注指令如何表达;Context Engineering 关注模型在每次推理时应该获得哪些信息,以及这些信息如何被选择、组织和维护。模型只能依据当前上下文决策;上下文容量和注意力有限,因此关键不是堆积信息,而是在正确时机提供与决策相关的内容。

Agent Harness 将这种上下文设计落实为运行机制,负责组织规则、工具、任务状态和运行时反馈。AGENTS.md 是其中一种可版本化的规则载体:通过文件位置承载不同作用域的约束、决策规则和验收标准。

AGENTS.md 官网将其称为 README for agents,一种使用 Markdown 语法编写、供 Agent 获取上下文和指令的开放格式。各层都应优先记录 Agent 无法从环境中稳定、低成本获得的判断依据,例如架构约束、方案取舍和验收标准;package.json、formatter 等已经明确表达的事实无需重复。

值得注意的是,AGENTS.md 通过自然语言影响模型的决策,但无法替代项目工程的确定性机制:类型检查、自动化测试、CI 检查和权限控制。

Progressive disclosure

把架构、测试、安全和发布规则全部写进仓库级 AGENTS.md,会让每次任务都加载无关信息。这时可采用 渐进式披露(progressive disclosure)上下文编排策略:把所有任务都需要的通用规则注入前置上下文,而特定任务需要的细节留到触发后再加载。它包含两个维度:作用域轴和检索轴。

作用域轴决定规则的覆盖范围:

用户全局规则
└── 仓库级规则
    └── 子目录局部规则

全局规则适用于保存跨仓库的通用约定,例如沟通语言、变更流程和破坏性操作的授权边界。仓库级规则约束当前仓库的通用工作方式。子目录规则补充模块特有的架构、风险和验证方式。

具体的发现、合并和刷新机制由 Agent Harness 决定。在设计目录层级之前,应先确认目标 Harness 的 context discovery 语义。

检索轴用于安排任务特有细节的加载。认证、数据库迁移和发布各自需要不同的约束;如果把它们全部放进默认上下文,每次任务都会加载无关信息,关键规则也更容易被稀释。

因此,自动加载的规则只保留适用多数任务的通用约定;特定任务的细节通过带触发条件的入口按需读取。任务命中条件后,Agent 再读取对应内容。这样的入口引用就是上下文指针(context pointer),需要同时说明读取条件和目标资料。

- 修改认证流程前,读取 `docs/security.md`,并遵循其中的授权边界和验收标准。

高频、跨任务且遗漏代价高的规则进入最小有效作用域的 Automatic Context;任务特有的细节则通过 context pointer、Skill 或参考文档按需加载。

维护策略层

随着项目、模型和 Agent Harness 演进,模型依赖的上下文发生变化,而原有规则编排可能失效,影响 Agent 的判断和行为。因此,维护需要持续校准规则对模型决策的影响,以及它在上下文中的位置和进入时机。

writing-for-agents 提供了适用于 Agent 文档的维护视角:用行为增益、触发可靠性和完成强度判断规则的效果,用 Context Load、Cognitive Load 和维护成本衡量代价。这些判断可以延续前文的作用域轴和检索轴,而不必把维护方法复制进项目规则。

这套权衡可以压缩为一个启发式关系(归纳无实际依据,仅用于表示维护决策):

agent

公式中的分子衡量上下文策略对 Agent 行为的影响:规则是否改变默认选择,是否在需要时提供决策所需的信息,以及是否用明确的完成标准推动任务完成。分母衡量这种影响带来的代价:自动加载的内容产生 Context Load,按需资料增加 Cognitive Load,重复事实、失效指针和过期规则则增加维护成本。Context Engineering 要在行为收益和这些成本之间取舍,而不是单纯增加规则或压缩文本。

因此,维护时需要重新判断内容应当保留、移动还是删除。高频且遗漏代价高的规则放入最小有效作用域,任务特有的细节通过 context pointer 或 Skill 按需加载;不能改变 Agent 行为,或已经由环境表达的内容则应删除。

writing-for-agents 将这套维护方法封装在独立 Skill 中,相关任务触发时再加载详细内容,避免把完整方法写入项目级 AGENTS.md。

小结

AGENTS.md 的本质不是知识库,而是面向模型决策的上下文策略层:用自然语言规定哪些判断需要被保留、何时进入上下文,以及如何以较低成本影响 Agent 的行为。它的价值不在于让 Agent 知道更多,而在于让关键信息在正确时机发挥作用。

Follow along for new posts, project notes, and updates from chenmi.

No newsletter setup yet. RSS and social links are the current best way to keep up.