自定义规则
自定义规则提供了一种强大的方式来定义项目特定的行为和约束,以确保 Kilo Code AI 代理的一致性。通过自定义规则,你可以确保格式一致、限制对敏感文件的访问、强制执行编码标准,并根据你的项目需求自定义 AI 的行为。
概述
自定义规则允许您创建文本指令,所有 AI 模型在与您的项目交互时都将遵循这些指令。这些规则充当护栏和约定,在与您的代码库的所有交互中始终得到遵守。规则可以通过文件系统和内置 UI 界面进行管理。
规则格式
自定义规则可以用纯文本编写,但建议使用 Markdown 格式,以便更好地组织和让 AI 模型理解。Markdown 的结构化特性有助于模型更有效地解析和理解你的规则。
- 使用 Markdown 标题(
#
,##
等)定义规则类别 - 使用列表(
-
,*
)枚举特定项目或约束 - 使用代码块(
规则类型
Kilo Code 支持两种类型的自定义规则:
- 项目规则:仅适用于当前项目工作区
- 全局规则:适用于所有项目和工作区
内置规则管理 UI 仅适用于一般规则。模式特定规则必须通过文件系统进行管理。
规则位置
项目规则
自定义规则主要从 .kilocode/rules/
目录 加载。这是组织项目特定规则的推荐方法。每个规则通常放置在具有描述性名称的 Markdown 文件中:
project/
├── .kilocode/
│ ├── rules/
│ │ ├── formatting.md
│ │ ├── restricted_files.md
│ │ └── naming_conventions.md
├── src/
└── ...
规则加载顺序
通用规则(所有模式)
规则按以下优先级顺序加载:
- 存放在
~/.kilocode/rules/
目录的全局规则 - 存放在
.kilocode/rules/
目录的项目规则 - 旧版回退文件(为了向后兼容):
.roorules
.clinerules
.kilocoderules
(已弃用)
当全局规则和项目规则都存在时,它们将合并,存在冲突时项目规则优先于全局规则。
我们强烈建议将规则保留在 .kilocode/rules/
文件夹中,因为它提供了更好的组织,并且是未来版本的首选方法。基于文件夹的结构允许更细粒度的规则组织和更清晰的关注点分离。基于文件的旧方法为了向后兼容而保留,但可能会在未来的版本中发生变化。
模式特定规则
此外,系统支持模式特定的规则,这些规则会单独加载,并有自己的优先级顺序:
- 首先检查
.kilocode/rules-${mode}/
目录 - 如果该目录不存在或为空,则回退到
.kilocoderules-${mode}
文件(已弃用)
目前,模式特定规则仅在项目级别受支持。 当通用规则和模式特定规则同时存在时,模式特定规则在最终输出中具有优先权。
创建自定义规则
使用 UI 界面

创建和管理规则的最简单方法是通过内置 UI:
- 从 Kilo Code 面板访问规则管理界面
- 选择创建项目特定规则或全局规则
- 使用界面创建、编辑或切换规则
- 规则会自动保存并立即应用
使用文件系统
手动创建规则:
对于项目规则:
- 如果不存在,请创建
.kilocode/rules/
目录 - 在此目录中创建一个具有描述性名称的新 Markdown 文件
- 使用 Markdown 格式编写你的规则
- 保存文件
对于全局规则:
- 如果
~/.kilocode/rules/
目录尚不存在,则创建它 - 在此目录中创建一个新的 Markdown 文件,并带有描述性名称
- 使用 Markdown 格式编写您的规则
- 保存文件
该规则将自动应用于你项目中所有未来的 Kilo Code 交互。任何新更改都会立即生效。
规则示例
示例 1:表格格式化
# 表格
打印表格时,始终在每列标题中添加感叹号
这个简单的规则指示 AI 在生成表格时在所有列标题中添加感叹号。
示例 2:限制文件访问
# 受限文件
列表中包含敏感数据的文件,禁止读取
- supersecrets.txt
- credentials.json
- .env
此规则防止 AI 读取或访问敏感文件,即使明确要求这样做。

使用场景
自定义规则可以应用于各种场景:
- 代码风格:强制执行一致的格式、命名约定和文档风格
- 安全控制:防止访问敏感文件或目录
- 项目结构:定义不同类型文件的创建位置
- 文档要求:指定文档格式和要求
- 测试模式:定义测试的结构方式
- API 使用:指定 API 的使用和文档方式
- 错误处理:定义错误处理约定
自定义规则示例
- "严格遵守代码风格指南 [你的项目特定代码风格指南]"
- "始终使用空格缩进,宽度为 4 个空格"
- "使用 camelCase 命名变量"
- "为所有新函数编写单元测试"
- "在提供代码之前解释你的推理"
- "专注于代码的可读性和可维护性"
- "优先使用社区中最常见的库"
- "当为网站添加新功能时,确保它们是响应式且可访问的"
最佳实践
- 具体明确:明确定义每个规则的范围和意图
- 使用类别:将相关规则组织在共同的标题下
- 分离关注点:为不同类型的规则使用不同的文件
- 使用示例:包含示例以说明预期行为
- 保持简单:规则应简洁易懂
- 定期更新:随着项目需求的变化,定期审查和更新规则
在团队环境中工作时,将 .kilocode/rules/codestyle.md
文件置于版本控制之下,可以让你在整个开发团队中标准化 Kilo 的行为。这确保了项目中的每个人都有一致的代码风格、文档实践和开发工作流程。
限制
- 规则由 AI 模型尽力应用
- 复杂规则可能需要多个示例才能清晰理解
- 项目规则仅适用于定义它们的项目
- 全局规则适用于所有项目
故障排除
如果你的自定义规则未被正确遵循:
- 检查你的规则是否使用清晰的 Markdown 结构正确格式化
- 确保你的规则位于以下支持的位置之一:
- 推荐的
.kilocode/rules/
目录 - 根级规则文件(
.kilocoderules
,.roorules
, 或.clinerules
)
- 推荐的
- 验证规则是否具体且明确
- 重启 VS Code 以确保规则正确加载