OpenAI 一统天下,联手谷歌和Cursor,开源AGENTS.md 标准,或将成为行业规范

1、多个 AI 工具上下文管理老大难

现在 AI 编程工具是越来越多,掰着手指头数一下,claude codecursorkiroQwen code、Gemini clitraecode buddy等等真的太多了。有的时候在开发过程中需要几个工具切换着来回使用,但是这就带来了一个问题,怎么样去管理上下文?

这些 AI 编程工具都有自己的规则文件,Claude 要 CLAUDE.md,Cursor 要 .cursor

下面这张图很清晰的展现了各种 AI 工具之间上下文管理的分裂情况

明明一套规则就能搞定,但是只要你换开发工具,就必须维护多份内容高度相似但格式各异的配置文件。当项目规范有变动,就需要在所有这些文件中同步更新,简直是开发者的噩梦。

此后,每出现一个新的 AI 编码工具,开发者就需要在项目中新增一套对应的配置文件。【gzh:和平本记】

2、OpenAI 推出新标准

终于 AI 界的秦始皇来了,OpenAI 最近提出了一个新标准------AGENTS.md,一句话概括:

它是一个专门给 AI 编码代理(Coding Agents)看的 README 文件,让所有工具共用一份配置。

现在已经有一些知名的 AI 编程工具在逐步接受这套标准了,比如 Cursor 和 Gemini CLI

目前 OpenAI 正在推动这套标准,希望 agents.md 能够成为各个 AI 编程工具的默认上下文文件,但是目前 Claude Code 还没有表态,作为目前最好用的 AI 编程工具,如果 Claude Code 也开始遵循这个标准,那估计很快就能在业内推广开来。

3、如何使用 AGENTS.md

开发者只需在项目根目录创建一个名为 AGENTS.md 的文件。在这个文件中,你可以清晰地定义:

  • 项目概述:项目目标、核心功能等。
  • 开发环境与指令:如何安装依赖、启动服务、运行测试。
  • 代码风格指南:例如,使用 TypeScript 严格模式、单引号等。
  • 提交流程:Commit 信息的格式、Pull Request 的规范等。

案例:

markdown 复制代码
# AGENTS.md

## 项目简介
这是一个基于 Next.js + TypeScript 的 Web 应用。

## 开发规范
- 代码风格:Prettier + ESLint
- 命名规范:驼峰命名
- 提交信息:遵循 Conventional Commits

## 常用命令
- 启动开发环境:npm run dev
- 运行测试:npm test
- 构建:npm run build

## 注意事项
- 不要直接修改 dist 文件夹
- 新功能开发请写单元测试

定义好以后,任何支持 AGENTS.md 标准的 AI 编程工具在开始工作时,都会自动读取并理解这个文件的内容。

这意味着,你只需要维护这一份通用说明书,就能指导所有兼容的 AI 工具高效、一致地在你的项目上工作。【gzh:和平本记】

4、Cursor 和 Gemini CLI 中怎么使用?

上面我们已经说了 Cursor 和 Gemini CLI 已经率先支持了这套标准,但是现在我们还不能简单地把 AGENTS.md 文件丢进项目里就期望所有工具都能自动识别它。

虽然这个标准的目标是自动化,但目前大多数工具仍然需要一个一次性的简单配置,才能被识别。

1、Cursor 中配置

1)在你的项目根目录中找到或创建一个 .cursor 文件夹

这个文件夹通常是隐藏的,你可能需要在文件管理器中开启「显示隐藏文件」的选项才能看到它。如果不存在,手动创建一个即可。

2)在 .cursor 文件夹内,找到或创建一个名为 settings.json 的文件

  1. 这个 JSON 文件就是用来存放 Cursor 在该项目中的特定配置的。

3)在 settings.json 文件中,添加 userContext 配置,并指向 AGENTS.md 文件。

json 复制代码
{
  "userContext": {
    "retrievers": [
      {
        "id": "file",
        "path": "AGENTS.md"
      }
    ]
  }
}

如果你的 settings.json 文件是空的,可以直接将上面整个代码块粘贴进去。

如果你的 settings.json 文件已有其他配置,请确保将 "userContext": { ... } 作为一个新的顶级键值对添加进去,注意不要破坏了原有的 JSON 格式(确保逗号使用正确)。

例如,如果你的文件原本是这样:

json 复制代码
{
  "autoSave": "onFocusChange"
}

添加后应该变成这样:

json 复制代码
{
  "autoSave": "onFocusChange",
  "userContext": {
    "retrievers": [
      {
        "id": "file",
        "path": "AGENTS.md"
      }
    ]
  }
}

4)测试结果

为了方便我就写一个简单规则

Cursor 已经应用了规则

2、Gemini CLI 中配置

1)在你的项目根目录中,找到或创建一个 .gemini 文件夹。

2)在该文件夹内,找到或创建一个名为 settings.json 的文件。

3)打开 settings.json 文件,将下面的代码片段复制进去。

json 复制代码
{
  "contextFileName": "AGENTS.md"
}

4)测试结果

Gemini CLI ****已经应用了规则

5、常见问题

1、AGENTS.md 是否有必填字段?

没有。AGENTS.md 只是标准的 Markdown 格式。你可以添加任何你需要的规则

2、项目中如果存在多个 AGENTS.md 加载顺序是怎么样的?

原则:离你正在编辑的文件最近的那个 AGENTS.md 文件说了算

最近如何定义?

「最近」指的是在文件目录结构上的物理距离。当 AI 代理需要为一个文件(比如 component.jsx)工作时,它是这么去做的:

1)先在当前文件所在的文件夹里找有没有 AGENTS.md

2)如果没找到,就去上一级父文件夹里找。

3)再没找到,就继续往上找,直到项目的根目录。

4)它会使用它最先找到的 那个 AGENTS.md 文件。

3、可以随时更改 AGENTS.md 文件吗?

当然可以,你可以把AGENTS.md 当成一个动态文档。【gzh:和平本记】

6、最后

AGENTS.md 不只是一个新文件,它可能成为未来 AI 开发的统一标准。意味着以后你换工具,不需要再花时间写一堆重复配置。越来越多的 AI 工具会兼容它,就像当年的 README.md 一样成为标配。

相关推荐
Cisyam4 分钟前
使用Bright Data API轻松构建LinkedIn职位数据采集系统
后端
float_六七4 分钟前
Spring Boot 3为何强制要求Java 17?
java·spring boot·后端
bobz96518 分钟前
ovs arp
后端
_風箏30 分钟前
SpringBoot【集成ElasticSearch 01】2种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码
后端
用户214118326360236 分钟前
dify案例分享-零基础上手 Dify TTS 插件!从开发到部署免费文本转语音,测试 + 打包教程全有
后端
架构师沉默1 小时前
Java 开发者别忽略 return!这 11 种写法你写对了吗?
java·后端·架构
EndingCoder1 小时前
React 19 与 Next.js:利用最新 React 功能
前端·javascript·后端·react.js·前端框架·全栈·next.js
RainbowJie11 小时前
Gemini CLI 与 MCP 服务器:释放本地工具的强大潜力
java·服务器·spring boot·后端·python·单元测试·maven
ITMan彪叔1 小时前
Nodejs打包 Webpack 中 __dirname 的正确配置与行为解析
javascript·后端
用户89535603282201 小时前
告别重复,用Go泛型精简Gin代码
后端·gin