你可以通过制定规则来规范 AI 在 TRAE 内的行为,包括代码风格、语言与框架、交互方式等,使 AI 的输出更符合你的个人偏好和项目要求。
规则的主要应用场景如下:
你可以配置两类规则:全局规则、项目规则。
|
规则类型 |
描述 |
|---|---|
|
全局规则 |
全局规则是基于个人使用习惯和需求为 AI 定制的规则,旨在让 AI 的输出更符合用户的个性化要求。全局规则在所有项目中生效。
|
|
项目规则 |
项目规则是针对当前项目 AI 需要遵循的规则,仅在所配置的项目中生效。
|
根据个人习惯,创建一条或多条全局规则。AI 会在所有项目中遵守你创建的全局规则。
项目规则使用 Markdown 语法编写,仅在其被创建的项目中生效。
在创建项目规则时,你可以指定规则的生效方式。根据生效方式的不同,系统会自动修改规则的 alwaysApply 属性,你还需要根据生效方式为规则配置 description 或 globs 属性。
创建项目规则的步骤如下:
打开一个项目。
在 IDE 模式界面中,点击界面右上角的 设置 图标,进入设置中心。
或
在 SOLO 模式界面中,点击对话面板右上角的 设置 图标,进入设置中心。
在左侧导航栏中,选择 规则。
你将进入规则管理面板。
在 规则 部分,点击 + 创建 按钮,然后选择 项目。
在 创建规则 弹窗中,输入规则名称,然后点击 确认 按钮。
系统自动在该项目中创建 .trae/rules 文件夹,在该文件夹内创建你所命名的规则文件,并在编辑器中打开该规则文件的编辑窗口。
设置规则的 生效方式。
|
生效方式 |
描述 |
|---|---|
|
始终生效 |
该规则在当前项目下的所有 AI 对话中生效。 |
|
指定文件生效 |
该规则仅在匹配到 |
|
智能生效 |
根据你在 |
|
手动触发生效 |
仅当在对话中使用 #Rule 提及某个规则时,该规则才生效。 |
根据规则的生效方式,在表单中设置相关属性。
|
生效方式 |
属性设置 |
|---|---|
|
始终生效 |
下方的 |
|
指定文件生效 |
|
|
智能生效 |
|
|
手动触发生效 |
下方的 |
在 --- 下方,使用 Markdown 语法添加规则的内容。
点击 保存 按钮。
当项目根目录的规则较多时,各类规则全部平铺在 .trae/rules/ 根目录下会导致查找和维护困难。
你可以在 .trae/rules/ 目录下创建子文件夹,将同类别的规则文件放置在相应的子文件夹中进行归类。系统会自动递归读取这些目录下的规则。目前至多支持 3 层嵌套。
结构如下:
.trae/rules/
├── global-rules.md
├── module-a/ # 第 1 层
│ ├── rules-a.md
│ ├── submodule-a1/ # 第 2 层
│ │ └── rules-a1.md
│ └── submodule-a2/ # 第 2 层
│ └── submodule-a2-b1/ # 第 3 层
│ ├── rules-a2-b1.md ← 最深可识别的层
│ └── submodule-a2-b1-c1/ # 第 4 层(无法识别)
│ └── rule-a2-b1-c1.md ← 超出限制(无法识别)
└── module-b/ # 第 1 层
└── rules-b.md
在一个大型项目中,通常包含多个文件夹,不同文件夹代表着不同的业务模块或技术栈。如果将所有规则(包括 AGENTS.md)都配置在项目根目录下,不仅难以维护,还有可能导致某个模块的专属规则对其他模块产生干扰。
TRAE 支持读取项目中任意子目录下的 .trae/rules/ 文件夹。如你只想为某个特定模块配置规则,可以直接将规则文件放到该模块文件夹下。当你在对话中提及该目录下的文件,或者 AI 在执行任务时读取了该目录下的文件时,系统就会自动携带并应用该目录下的专属规则。
示例结构:
my-project/
├── .trae/
│ └── rules/ # 项目根目录
│ └── global-style.md
├── frontend-module/ # 某个前端模块
│ ├── AGENTS.md # 仅在 frontend-module 相关文件被读取/提及时生效
│ └── .trae/
│ └── rules/ # 仅在 frontend-module 相关文件被读取/提及时生效
│ └── react-best-practices.md
└── backend-module/ # 某个后端模块
└── .trae/
└── rules/ # 仅在 backend-module 相关文件被读取/提及时生效
└── api-design.md
对于 “手动触发生效” 类型的规则,需在对话输入框中通过 #Rule 来引用。
提示
规则引用方式中,#Rule 的优先级最高。对于生效方式为 “指定文件生效” 或 ”智能生效“ 的项目规则,若你在对话中通过 #Rule 提及这些规则,AI 也会在本次对话中使用它们。
若要使 AGENTS.md、CLAUDE.md 和 CLAUDE.local.md 在 TRAE 中生效,使用以下步骤:
TRAE 支持为 AI 生成的提交内容设置规则,以确保其符合项目要求。你只需在规则文件中使用 scene: git_message 字段即可进行配置。
scene: git_message 字段与 alwaysApply、description 和 globs 等现有字段兼容。只要规则文件中包含该字段,AI 在生成提交内容时都会遵循其中定义的规则,而不受其他字段配置的影响。
如果项目中的多个规则文件均包含 scene: git_message,AI 会同时遵循这些文件中的规则。
scene 字段,并将其设置为 git_message。--- 分隔符下方添加具体的规则内容。---
scene: git_message
---
正文:生成提交内容时应遵守的规范
.trae/rules 目录下生成 git-commit-message.md 文件。提示
若你已在某个已有规则文件中配置了 scene: git_message 及对应规则,系统将直接打开该文件,而不会新建 git-commit-message.md。
git-commit-message.md 文件中,添加具体的规则内容。i)。假设你的项目有很多前端设计和开发相关的规则,可以这样组织:
.trae/rules/
├── general-rules.md # 通用规则
├── frontend/
│ ├── react-best-practices.md # React 规范
│ ├── css-naming.md # CSS 命名规范
│ └── testing/
│ └── unit-test-rules.md # 前端单测规范
├── backend/
│ ├── api-design.md # API 设计规范
│ └── error-handling.md # 错误处理规范
└── devops/
└── ci-rules.md # CI/CD 相关规范