TronCode Tron CLI 规则设置

概述

规则文件让你可以告诉 Tron 关于你的项目约定、编码规范和禁止操作。通过预先定义这些规则,Tron 在每次会话中都会自动遵循你的团队标准,无需每次重复说明。

规则以 Markdown 格式编写,存储在 AGENTS.md 文件中,Tron 会在启动时自动读取并应用这些规则。

AGENTS.md

AGENTS.md 是放置在项目根目录的主规则文件。运行 /init 命令可以自动生成一个基于项目分析的初始规则文件:

终端
/init
✓ 分析项目结构...
✓ 检测到 TypeScript / React 项目
✓ 已生成 AGENTS.md

生成后可以根据团队需求手动编辑。AGENTS.md 包含以下类型的内容:

  • 代码风格:缩进方式、命名规范、注释要求
  • 测试要求:是否必须为新功能编写测试、使用哪个测试框架
  • 禁止操作:哪些文件或目录不应该被修改
  • 项目约定:特定的文件组织结构、模块划分原则
💡
最佳实践

建议将 AGENTS.md 提交到 Git 版本控制,让整个团队共享同一套 AI 行为规范,确保一致性。

全局规则

除了项目级别的 AGENTS.md,你还可以设置全局规则,对所有项目生效:

终端
# 全局规则文件路径
~/.config/tron/AGENTS.md

全局规则适合设置个人偏好,例如:始终使用中文回复、代码注释要用英文、不要生成过于冗长的回复等。

规则语法

规则文件使用标准 Markdown 格式编写,Tron 会将其作为系统上下文读取:

  • 使用 # 项目概述 作为文件级标题,描述项目基本信息
  • 使用 ## 规则 作为规则章节标题
  • 使用无序列表(- 开头)列举具体规则
  • 使用代码块展示代码示例或文件路径

规则示例

以下是一个完整的 TypeScript 项目 AGENTS.md 示例:

markdown
# 项目概述

这是一个 TypeScript + React 前端项目,使用 Vite 构建,Vitest 测试框架。

## 代码规范

- 使用 TypeScript 严格模式,所有变量和函数必须有类型注解
- 缩进使用 2 个空格,不使用 Tab
- 使用单引号,不使用双引号
- 组件文件名使用 PascalCase,工具函数使用 camelCase
- CSS 类名使用 BEM 命名规范

## 测试要求

- 所有新功能必须附带单元测试
- 测试文件放置在 `__tests__` 目录或与源文件同目录的 `.test.ts` 文件
- 测试覆盖率不低于 80%
- 使用 Vitest 和 @testing-library/react

## 禁止操作

- 不要直接修改 `src/generated/` 目录下的文件(自动生成)
- 不要修改 `package-lock.json`,依赖变更请使用 `pnpm`
- 不要在组件中直接调用 API,必须通过 `src/api/` 层

## 项目约定

- 状态管理使用 Zustand,store 文件放在 `src/stores/`
- API 请求封装在 `src/api/` 目录,按模块划分文件
- 全局类型定义放在 `src/types/` 目录

优先级

当存在多个规则文件时,Tron 按以下优先级应用规则:

  1. 子目录规则(最高优先级):src/AGENTS.md 的规则覆盖根目录规则
  2. 项目根目录规则./AGENTS.md 中的规则
  3. 全局规则(最低优先级):~/.config/tron/AGENTS.md 中的规则

子目录可以拥有自己的 AGENTS.md,用于为特定模块设置独立的规则。例如,packages/api/AGENTS.md 可以专门定义 API 层的编码规范。

💡
规则冲突处理

当规则存在冲突时,更具体的(路径更深的)规则会覆盖更通用的规则。如有歧义,Tron 会优先遵循最近的规则文件中的约定。