--- name: remember-as-rule-or-skill description: 当用户要求「记住」某事时,根据内容类型自动添加为项目规则(.cursor/rules)或 Skill(.cursor/skills)。Use when user says 记住、记一下、以后要、保存这个规则、加到规范里、写进 skill、记录下来、按这个来. --- # 记住 → 自动添加规则或 Skill ## 一、何时触发 当用户表达**希望持久化当前约定/偏好**时,必须走本流程,将内容写入 `.cursor/rules/` 或 `.cursor/skills/`。 ### 触发表述(示例) - 记住 / 记一下 / 以后要 / 保存 / 记录下来 - 加到规范里 / 写进规则 / 写进 skill - 按这个来 / 以后都按这个做 - 类似的自然语言表达 触发后:**先判断类型(Rule vs Skill),再执行添加或更新**。 --- ## 二、Rule 还是 Skill?判断标准 | 类型 | 适合内容 | 存放位置 | 特点 | |------|----------|----------|------| | **Rule** | 简短约束、禁止项、风格约定、回复格式等「每次都要遵守」的规范 | `.cursor/rules/*.mdc` | 可 alwaysApply 或按文件 glob 生效;单条规则建议 ≤50 行 | | **Skill** | 有步骤的流程、按场景触发的知识、需要 description 匹配的专项能力 | `.cursor/skills//SKILL.md` | 通过 description 在相关场景被引用;可含多节、示例 | ### 选择 Rule 的情况 - 禁止或必须做的**一句话/短条款**(如:禁止用 Guid、GET 用 data 传参) - **编码/格式约定**(缩进、命名、注释要求) - **回复或交互约定**(如:回复前缀「大哥」) - **仅在某类文件生效**的规范(如仅 `**/*.vue`)→ 用 `globs`,`alwaysApply: false` ### 选择 Skill 的情况 - **多步骤流程**(如:接口测试流程、查库验证流程) - **按场景触发**的专项知识(如:弃用表、API 注释格式、MCP 查库) - 需要**示例、模板、清单**的说明 - 内容较长或需要**分节、可检索**的文档 ### 与现有内容的关系 - 若与**现有 rule/skill 主题一致**(如同属「接口规范」)→ **优先更新已有文件**,避免碎片化 - 若是**全新主题** → 新建 rule 或 skill --- ## 三、执行步骤 ### Step 1:确认要记的内容 - 从对话中提炼出用户要持久化的**具体条文或流程** - 若含糊,可追问一句再落笔 ### Step 2:决定 Rule 还是 Skill,以及目标文件 - 按上表判断:Rule 还是 Skill - 若为 Rule:决定是**新增一个 .mdc** 还是**追加到现有 rule**(如 `project_rules.mdc` 的某节) - 若为 Skill:决定是**新建 skill 目录**还是**更新现有 skill**(如 `api-xml-comments`) ### Step 3:写入或更新 **Rule(.cursor/rules/xxx.mdc)** - 格式:YAML frontmatter + Markdown 正文 - 必填:`description`;若全局生效则 `alwaysApply: true`;若按文件则 `globs: "**/*.xx"`、`alwaysApply: false` - 正文简洁、可执行,单条规则尽量控制在约 50 行内 ```markdown --- description: 简短说明这条规则做什么 alwaysApply: true --- # 规则标题 内容... ``` **Skill(.cursor/skills//SKILL.md)** - 格式:YAML frontmatter(`name`、`description`)+ Markdown 正文 - `description` 要包含**触发场景/关键词**,便于 AI 在相关任务时引用 - 正文可含:何时用、步骤、示例、注意事项 ```markdown --- name: skill-name description: 做什么;在什么场景下使用(含触发词) --- # 标题 ## 何时使用 ... ## 步骤/规范 ... ``` ### Step 4:确认 - 写完后**简短说明**:写到了哪(规则还是 skill、文件名),以及**以后如何生效**(例如「全局规则每次都会应用」或「在提到接口测试时会用对应 skill」) --- ## 四、本项目约定 - **规则与 skill 的路径**:项目内统一用 **项目级** 配置: - 规则:`.cursor/rules/` - Skill:`.cursor/skills/` - **与「不随意生成 md」的关系**:用户**明确要求记住/保存规则或写进 skill** 时,属于「要求生成或修改配置文档」的例外,可以且应当新增或修改 `.cursor/rules/`、`.cursor/skills/` 下的文件。 - **风格**:与现有 `project_rules.mdc`、`orchestrator-first.mdc` 以及各 skill 的写法保持一致(中文说明、清单式条款、必要时代码块示例)。 --- ## 五、小结 | 用户说 | 你要做的 | |--------|-----------| | 记住 / 记一下 / 以后要 / 保存规则 / 加到规范 / 写进 skill | 触发本 skill | | 内容像「禁止/必须/约定」的短条款 | 写入或合并到 **Rule**(.mdc) | | 内容像「流程/步骤/场景知识」 | 写入或合并到 **Skill**(SKILL.md) | | 与现有某 rule/skill 同主题 | 优先**更新**该文件 | | 写完后 | 说明写到了哪、以后如何生效 |