跳到主要内容
规则为 代理模式聊天编辑 请求提供指令。
规则不包含在 自动完成应用 中。

规则在 Continue 中如何工作

您可以通过点击主工具栏上方的笔图标来查看当前规则: rules input toolbar section 为了形成系统消息,规则按其在工具栏中出现的顺序通过新行连接。这包括基本聊天系统消息(见下文)。

理解 Hub 规则与本地规则的集成

重要提示:在不同位置创建的规则行为不同,并且具有不同的同步模式。
Continue 支持两种具有不同行为的规则

本地规则

  • 位置:工作区中的 .continue/rules 文件夹
  • 可见性:使用 Hub 配置时自动可见
  • 创建:在 VSCode 中添加规则按钮或手动创建文件
  • 文件管理:创建您可以直接编辑的实际 .md 文件

Hub 规则

  • 位置:存储在 Continue Mission Control 上,并在 config.yaml 中引用
  • 可见性:仅在助手配置中引用时才显示
  • 创建:直接在 Hub 上创建或从本地规则复制
  • 文件管理:不创建本地文件,通过 Hub 界面管理

规则如何应用

使用 Continue 时,规则按此顺序加载
  1. Hub 助手规则(如果使用基于 Hub 的助手)
  2. 引用 Hub 规则(通过 config.yaml 中的 uses:
  3. 本地工作区规则(来自 .continue/rules 文件夹)
  4. 全局规则(来自 ~/.continue/rules 文件夹)
总结:使用 Hub 配置时,本地规则自动显示。在配置中引用 Hub 规则时,它们会自动显示。

快速开始:如何创建您的第一个规则文件

下面是设置新规则文件的快速示例
  1. 在工作区的顶层创建一个名为 .continue/rules 的文件夹
  2. 将一个名为 pirates-rule.md 的文件添加到此文件夹。
  3. 将以下内容写入 pirates-rule.md 并保存。
.continue/rules/pirates-rule.md
---
name: Pirate rule
---

- Talk like a pirate.
现在通过在聊天中提问有关文件的问题来测试您的规则。 pirate rule test

如何创建规则

创建本地规则

可以使用“添加规则”按钮在本地添加规则。 add local rules button
自动创建本地规则:在代理模式下,如果启用了 create_rule_block 工具,您可以提示代理为您创建规则。例如,您可以说“为此创建一个规则”,然后将在 .continue/rules 中根据您的对话为您创建一个规则。

创建 Hub 规则

规则也可以在 Continue Mission Control 上创建和管理
  1. 浏览现有规则探索可用规则
  2. 创建新规则:在 Hub 中创建您自己的
  3. 从本地规则复制:复制/粘贴 .continue/rules 文件中的内容以创建 Hub 规则

在 Hub 规则和本地规则之间工作

要在本地设置中使用 Hub 规则
  1. 在您的 config.yaml 中引用它们
    rules:
      - uses: username/my-hub-rule
    
  2. 该规则将自动出现在您的规则工具栏中
  3. 注意:不创建本地文件 - 规则仅存在于 Hub 上

如何配置规则属性和语法

规则最初以 YAML 格式定义(如下所示),但我们引入了 Markdown 以便于编辑。虽然两者都仍受支持,但我们建议使用 Markdown。
规则可以是简单的文本,以 YAML 配置文件或 Markdown (.md) 文件的形式编写。它们可以具有以下属性
  • name(YAML 必需):规则的显示名称/标题
  • globs(可选):当作为上下文提供的文件匹配此 glob 模式时,规则将被包含。这可以是一个模式(例如,"**/*.{ts,tsx}")或一个模式数组(例如,["src/**/*.ts", "tests/**/*.ts"])。
  • regex(可选):当作为上下文提供的文件其内容匹配此正则表达式模式时,规则将被包含。这可以是一个模式(例如,"^import .* from '.*';$")或一个模式数组(例如,["^import .* from '.*';$", "^export .* from '.*';$"])。
  • description(可选):规则的描述。当 alwaysApply 为 false 时,代理可能会阅读此描述以确定是否应将规则拉入上下文。
  • alwaysApply:确定规则是否始终包含。行为描述如下
    • true:始终包含,无论文件上下文如何
    • false:如果 globs 存在且匹配文件上下文,或者代理根据其描述决定将规则拉入上下文,则包含
    • undefined(默认行为):如果不存在 globs 或者 globs 存在且匹配,则包含
doc-standards.md
---
name: Documentation Standards
globs: docs/**/*.{md,mdx}
alwaysApply: false
description: Standards for writing and maintaining Continue Docs
---

# Continue Docs Standards

- Follow Mintlify documentation standards
- Include YAML frontmatter with title, description, and keywords
- Use consistent heading hierarchy starting with h2 (##)
- Include relevant Admonition components for tips, warnings, and info
- Use descriptive alt text for images
- Include cross-references to related documentation
- Reference other docs with relative paths
- Keep paragraphs concise and scannable
- Use code blocks with appropriate language tags

如何设置项目特定规则

您可以通过在项目根目录中添加 .continue/rules 文件夹并添加新的规则文件来创建项目特定规则。 规则文件按字典顺序加载,因此您可以通过为它们添加数字前缀来控制它们的应用顺序。例如:01-general.md02-frontend.md03-backend.md

示例:如何创建 TypeScript 特定规则

.continue/rules/typescript.md
---
name: TypeScript Best Practices
globs: ["**/*.ts", "**/*.tsx"]
---

# TypeScript Rules

- Always use TypeScript interfaces for object shapes
- Use type aliases sparingly, prefer interfaces
- Include proper JSDoc comments for public APIs
- Use strict null checks
- Prefer readonly arrays and properties where possible
- modularize components into smaller, reusable pieces

规则故障排除

问题:在不同位置创建的规则不同步

问题:您在 Hub 中创建了规则,但在 VSCode 中看不到它们,反之亦然。 解决方案
  • Hub 规则仅在使用 uses: 语法在 config.yaml 中引用时才会出现
  • 使用 Hub 配置时,本地规则会自动出现
  • 目前没有自动双向同步
问题:当您在 VSCode 中点击规则上的“编辑”时,它会尝试打开 Hub,即使规则是本地的,或者显示不正确的 URL。 根本原因:当您混合使用本地规则和 Hub 规则时,并且 Continue 无法正确确定每个规则的来源时,就会发生这种情况。 解决方法
  1. 对于本地规则:直接导航到 .continue/rules/ 文件夹并编辑 .md 文件
  2. 对于 Hub 规则:直接转到 Continue Mission Control 上的助手页面并从那里编辑
  3. 跟踪哪些规则是本地规则还是基于 Hub 的规则以避免混淆
已知问题:此链接准确性问题已在 Linear issue CON-3084 中跟踪,并将在未来的更新中修复。

问题:规则未出现在助手侧栏中

问题:您的规则存在,但未显示在规则工具栏中。 检查以下项
  1. 文件位置:确保本地规则位于 .continue/rules/ 中(而不是 .continue/rule/
  2. 文件格式:规则应为带有正确 YAML frontmatter 的 .md 文件
  3. 配置引用:Hub 规则必须在 config.yaml 中引用
  4. 助手类型:确保您使用的是正确的助手(本地 vs Hub)

如何自定义聊天系统消息

Continue 包含一个简单的默认系统消息,用于 代理模式聊天 请求,以帮助模型在其输出中提供可靠的代码块格式。 这可以在工具栏的规则部分(见上文)或源代码 此处 查看。 高级用户如果需要,可以使用 chatOptions.baseSystemMessage 覆盖特定模型的此系统消息。请参阅 config.yaml 参考