AGENTS.md 详解
AGENTS.md 是 Carry Code 的项目级规则配置文件,可以让 AI 按照你项目的规范来工作。
什么是 AGENTS.md?
Section titled “什么是 AGENTS.md?”AGENTS.md(Agent Rules)是一个放置在项目根目录的 Markdown 文件,用于定义:
- 📝 代码规范 — 项目的编码风格
- 🚫 限制规则 — 禁止的操作
- ✅ 最佳实践 — 推荐的做法
- 🛠️ 工具偏好 — 使用的工具和技术栈
为什么使用 AGENTS.md?
Section titled “为什么使用 AGENTS.md?”| 优势 | 说明 |
|---|---|
| 🤖 项目专属 | 每个项目可以有不同规则 |
| 👥 团队共享 | 团队成员自动使用相同规范 |
| 📋 自动生效 | AI 自动读取,无需手动配置 |
| 📁 版本控制 | 规则可以提交到 Git |
创建 AGENTS.md
Section titled “创建 AGENTS.md”在项目根目录创建 AGENTS.md 文件:
your-project/├── AGENTS.md # ← 在这里├── src/├── package.json└── ...AGENTS.md 格式
Section titled “AGENTS.md 格式”# 项目规则
## 代码风格- 使用 2 空格缩进- 使用 TypeScript,避免 any 类型- 函数必须有注释
## 命名规范- 变量使用 camelCase- 常量使用 UPPER_SNAKE_CASE- 类名使用 PascalCase
## 禁止事项- 不要修改 config 目录下的文件- 不要使用 eval()- 不要提交敏感信息
## 最佳实践- 优先使用 const- 错误必须捕获处理- API 接口要有类型定义
## Git 提交规范- 使用 Conventional Commits 格式- 提交前必须运行测试---name: my-project-rulesdescription: 我的项目规则version: 1.0.0---
# 项目规则
...详细配置示例
Section titled “详细配置示例”TypeScript 项目
Section titled “TypeScript 项目”# TypeScript 项目规则
## 代码风格- 使用 2 空格缩进- 启用 strict 模式- 禁止使用 `any` 类型- 必须使用 TypeScript 原生类型
## 文件组织- 组件放在 `src/components/`- 工具函数放在 `src/utils/`- 类型定义放在 `src/types/`
## 命名规范- 组件使用 PascalCase- Hooks 使用 use 前缀- 工具函数使用 camelCase
## 禁止事项- 禁止使用 `any`- 禁止使用 `// @ts-ignore`- 禁止直接操作 DOM- 禁止提交 .env 文件React 项目
Section titled “React 项目”# React 项目规则
## 组件规范- 使用函数组件- 使用 Hooks- 组件文件使用 .tsx 扩展名
## 状态管理- 组件内部状态使用 useState- 全局状态使用 Context 或 Redux
## 样式- 使用 CSS Modules- 避免内联样式Python 项目
Section titled “Python 项目”# Python 项目规则
## 代码风格- 遵循 PEP 8- 使用 Black 格式化- 使用 type hints
## 包管理- 使用 Poetry 或 pipenv- requirements.txt 必须锁定版本
## 测试- 使用 pytest- 测试文件放在 tests/ 目录AI 如何使用 AGENTS.md
Section titled “AI 如何使用 AGENTS.md”当你让 AI 帮你工作时,它会自动:
- 检测文件 — 检查项目根目录是否有 AGENTS.md
- 读取规则 — 解析文件内容
- 应用规则 — 按照规则生成代码
- 遵守限制 — 避免触发禁止事项
假设你设置了以下规则:
## 禁止事项- 不要使用 var 声明变量当你让 AI 写代码时:
你:帮我写一个 JavaScript 函数
AI 会自动使用 const 或 let,而不会使用 var。
AGENTS.md 与 /rule 的区别
Section titled “AGENTS.md 与 /rule 的区别”| 特性 | AGENTS.md | /rule |
|---|---|---|
| 作用范围 | 当前项目 | 全局 |
| 创建位置 | 项目根目录 | ~/.carry/rules/ |
| 版本控制 | 随项目提交 | 本地 |
| 优先级 | 最高 | 次之 |
多个规则文件
Section titled “多个规则文件”Carry Code 会按优先级读取规则:
- AGENTS.md(项目根目录)— 最高优先级
- 项目级规则(
.carry/rules/) - 用户级规则(
~/.carry/rules/)
常用 AGENTS.md 示例
Section titled “常用 AGENTS.md 示例”# 项目规则
## 代码风格- 使用 2 空格缩进# 我的项目规则
## 代码风格- 使用 2 空格缩进- 使用 TypeScript- 函数必须有 JSDoc 注释
## 命名规范- 变量使用 camelCase- 常量使用 UPPER_SNAKE_CASE
## 禁止事项- 不要使用 eval()- 不要提交 .env
## 最佳实践- 错误必须捕获- 代码要写测试Q:AGENTS.md 会影响所有对话吗?
Section titled “Q:AGENTS.md 会影响所有对话吗?”只会影响当前项目的对话。
Q:如何查看当前项目的规则?
Section titled “Q:如何查看当前项目的规则?”AI 会在对话开始时提示已加载的规则。
Q:可以不创建 AGENTS.md 吗?
Section titled “Q:可以不创建 AGENTS.md 吗?”可以。不创建时,AI 会使用默认方式工作。
Q:团队成员需要各自配置吗?
Section titled “Q:团队成员需要各自配置吗?”不需要。只要将 AGENTS.md 提交到 Git,团队成员都会自动使用相同规则。