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