Skip to main content
Memories 是用于在多次对话间共享并持久化上下文的系统。 在 Windsurf 中有两种机制:Memories (由 Cascade 自动生成) 和 Rules (由用户在全局、工作区或系统级手动定义) 。

Memories、Rules、Workflows,还是 Skills?

Windsurf 提供了多种自定义 Cascade 的方式。使用下表选择最适合的一种:
建议: 对于你希望 Cascade 稳定复用的知识,请将其写成 Rule,或添加到仓库中的 AGENTS.md,而不是依赖自动生成的 Memories。Rules 可以纳入版本控制、与团队共享,并让你明确控制其激活方式。

如何管理 Memories

您可以随时通过点击 Cascade 右上角滑动菜单中的 Customizations 图标,或通过右下角的“Windsurf - Settings”进入,以访问并配置 Memories 和 Rules。要编辑现有的 Memory,只需打开该项,然后点击 Edit 按钮。

Memories

在对话过程中,Cascade 遇到它认为值得记住的有用上下文时,会自动生成并存储 Memories。 此外,你可以随时让 Cascade 创建一条 Memory。只需向 Cascade 提示:“create a memory of …”。 Cascade 自动生成的 Memories 会与其创建时所在的工作区关联,并存储在本地的 ~/.codeium/windsurf/memories/ 中。Cascade 会在认为相关时检索它们。在一个工作区中生成的 Memories 不会在其他工作区中可用,并且它们不会提交到你的仓库。
创建和使用自动生成的 Memories 不会消耗额度。
自动生成的 Memories 仅保存在你的设备上。如果你希望 Cascade 持久记住某些内容——并与团队共享——请让 Cascade 将其写入 .windsurf/rules/ 中的某条 Rule 或你的仓库中的 AGENTS.md

Rules

用户可以明确为 Cascade 定义它应遵循的 Rules。 Rules 可以在全局、工作区或系统级定义,也可以从 AGENTS.md 文件中推断得出。

规则发现

Windsurf 会自动从多个位置发现规则,便于灵活组织:
  • 当前工作区和子目录:当前工作区及其子目录中的所有 .windsurf/rules 目录
  • Git 仓库结构:对于 Git 仓库,Windsurf 还会向上搜索至 Git 根目录,在父级目录中查找规则
  • 多工作区支持:当同一工作区中打开多个文件夹时,规则会去重,并以最短的相对路径显示

Rules Storage Locations

Rules 可以存放在以下任一位置:
  • 当前工作区目录中的 .windsurf/rules
  • 工作区任意子目录中的 .windsurf/rules
  • 沿父级目录向上直至 git 根目录 (适用于 git 仓库) 中的 .windsurf/rules
当你创建新的 Rule 时,它会保存到当前工作区的 .windsurf/rules 目录中,不一定位于 git 根目录。 要开始使用 Rules,请在 Cascade 右上角的滑动菜单中点击 Customizations 图标,然后进入 Rules 面板。在这里,你可以点击 + Global+ Workspace 按钮,分别在全局或工作区级别创建新的 Rules。
你可以在 https://windsurf.com/editor/directory 找到由 Windsurf 团队整理的示例 Rule 模板,帮助你上手。
每个工作区 Rule 文件的长度限制为 12,000 个字符。全局 Rules 文件的长度限制为 6,000 个字符。

Activation Modes

每条工作区 Rule 都会通过 frontmatter 中的 trigger 字段声明一种激活模式。这决定了该 Rule 的内容会在何时提供给 Cascade,以及会占用多少上下文窗口
全局 Rules 文件 (global_rules.md) 和根级别的 AGENTS.md 文件不使用 frontmatter——它们始终启用。
带有 frontmatter 的工作区 Rule 示例:

最佳实践

为帮助 Cascade 更好地遵循你的规则,请参考以下最佳实践:
  • 保持规则简单、精炼且具体。过长或含糊的规则可能会让 Cascade 产生困惑。
  • 无需添加泛泛的规则 (例如 “write good code”) ,这些内容已包含在 Cascade 的训练数据中。
  • 使用项目符号、编号列表和 Markdown 来编写规则。相较于大段文字,这些格式更便于 Cascade 理解和执行。例如:
  • 使用 XML 标签是传达信息并将相似规则归类在一起的有效方式。例如:

系统级规则 (Enterprise)

Enterprise 组织可以部署系统级规则,这些规则在所有工作区中全局生效,终端用户若无管理员权限则无法修改。此方式非常适合用于强制执行全组织范围内的编码规范、安全策略以及合规性要求。 系统级规则会从特定于操作系统的目录中加载: macOS:
Linux/WSL:
Windows:
将规则文件 (.md 格式) 放在对应操作系统的指定目录中。系统会自动从这些目录中加载所有 .md 文件。

系统级规则的工作原理

系统级规则会与工作区规则和全局规则合并,为 Cascade 提供更多上下文信息,同时不会覆盖用户自定义规则。这样既能让组织建立基础标准,又能允许各团队添加与项目相关的自定义设置。 在 Windsurf 的 UI 中,系统级规则会显示为“System”标签,终端用户无法删除。
重要:系统级规则应由贵公司的 IT 或安全团队进行管理。请确保内部团队根据组织的政策来处理部署、更新和合规性要求。你可以使用诸如移动设备管理 (MDM) 或配置管理等标准工具和工作流程来完成这些工作。