大活
This commit is contained in:
48
.cursor/rules/common/changelog-recall.mdc
Normal file
48
.cursor/rules/common/changelog-recall.mdc
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: 每次会话开始时注入开发日志概要(L3),并在检测到任务与近期改动相关时自动读取中期记录(L2)
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
## 开发日志上下文注入
|
||||
|
||||
每次会话处理用户第一个任务前,执行以下操作:
|
||||
|
||||
1. 读取 `.cursor/changelog/changelog-headlines.md`(不存在则跳过)
|
||||
2. 如文件存在且有实质内容(不仅是模板头部),将全部条目作为背景知识注入上下文
|
||||
3. 这些信息帮助 Agent 快速建立位置感:项目进展到什么阶段、最近的工作重心在哪个模块
|
||||
4. 在后续回复中自然参考,不显式提及"根据开发日志"
|
||||
|
||||
## L2 自动触发
|
||||
|
||||
Agent 开始处理一个新任务时,判断是否需要读取近期详细记录:
|
||||
|
||||
1. 从当前任务中提取涉及的文件路径和语义关键词
|
||||
2. 与 L3 概要中的内容做快速比对——如果近期有相关模块/文件的改动记录
|
||||
3. 命中时,读取 `.cursor/changelog/changelog-recent.md`,将相关条目纳入上下文
|
||||
4. 匹配策略:
|
||||
- 硬匹配:当前任务涉及的文件出现在 L2 条目的 `affected_files` 中
|
||||
- 软匹配:当前任务的语义关键词与条目的 `tags` 有交集
|
||||
- 任一命中即触发读取
|
||||
|
||||
### 注意
|
||||
|
||||
- L3 注入是低成本操作(~50 句话),每次会话都执行
|
||||
- L2 读取按需触发,只在检测到关联时才读取
|
||||
- 开发日志是事实性记录,直接使用即可,不像画像那样需要"自然融入"的措辞考量
|
||||
- 记录的写入和管理由 `dev-changelog` Skill 负责,本 Rule 只负责读取和注入
|
||||
|
||||
## 逐级上溯
|
||||
|
||||
当 L3 中某条记录的一句话描述**语义模糊**(无法判断具体范围或与当前任务的关系),
|
||||
按以下步骤精准上溯,**禁止全文读取 L1**:
|
||||
|
||||
1. 提取该条目的锚点 ID(`CL-xxx`)
|
||||
2. 用 Grep 在 `changelog-recent.md`(L2)中搜索该 ID → 找到则读取该条目
|
||||
3. 如 L2 中未找到或仍有歧义 → 用 Grep 在 `changelog-full.md`(L1)中搜索该 ID,
|
||||
获取行号后用 Read 工具读取该行号 ±20 行范围
|
||||
4. 一次上溯通常只涉及 1-3 条记录,不批量上溯
|
||||
|
||||
## 被动写入提醒
|
||||
|
||||
Agent 在完成涉及代码/配置文件实质性改动的任务后,应读取 `dev-changelog` Skill
|
||||
并执行其"操作 A:记录写入"流程,静默追加三层记录。
|
||||
@@ -7,10 +7,16 @@ alwaysApply: true
|
||||
|
||||
每次会话处理用户第一个任务前,执行以下操作:
|
||||
|
||||
1. 读取 `~/.cursor/profile/user-profile.md`(不存在则跳过)
|
||||
2. 读取 `.cursor/profile/project-profile.md`(不存在则跳过)
|
||||
3. 如文件存在且有实质内容(非空模板),将其内容作为背景知识纳入考量
|
||||
4. 在后续回复中,Agent 应自然地参考画像信息,无需显式引用
|
||||
1. 读取 `~/.cursor/profile/user-profile.md`(不存在记为 user_missing)
|
||||
2. 读取 `.cursor/profile/project-profile.md`(不存在记为 project_missing)
|
||||
3. **冷启动检测**:如果 user_missing 或 project_missing 为真,在回复开头简要提醒:
|
||||
> 画像系统尚未初始化(缺少:user-profile / project-profile)。
|
||||
> 如需启用画像功能,请说"初始化画像",我会引导你完成。
|
||||
- 每次会话最多提醒一次,不重复打扰
|
||||
- 如用户回应"初始化画像",读取 `profile-memory` Skill 并按其模板创建文件,
|
||||
然后引导用户填写基本信息
|
||||
4. 如文件存在且有实质内容(非空模板),将其内容作为背景知识纳入考量
|
||||
5. 在后续回复中,Agent 应自然地参考画像信息,无需显式引用
|
||||
|
||||
### 注意
|
||||
|
||||
@@ -18,6 +24,16 @@ alwaysApply: true
|
||||
- 不要在回复中提及"根据你的画像"之类的措辞,自然融入即可
|
||||
- 画像的记录和管理由 `profile-memory` Skill 负责,本 Rule 只负责读取和注入
|
||||
|
||||
### 逐级上溯
|
||||
|
||||
当精简版 Profile 中某条记录**语义模糊**(无法判断偏好的具体适用场景),
|
||||
按以下步骤精准查找详细 Log,**禁止全文读取 Log 文件**:
|
||||
|
||||
1. 提取该条目的锚点 ID(HTML 注释中的 `PF-xxx`)
|
||||
2. 用 Grep 在对应的 Log 文件中搜索该 ID,获取行号
|
||||
3. 用 Read 工具读取该行号 ±15 行范围,获取原始上下文和来源信息
|
||||
4. 一次上溯通常只涉及 1-2 条记录,不批量上溯
|
||||
|
||||
## 被动检测提醒
|
||||
|
||||
Agent 在整个对话过程中应保持对画像信号的被动感知。
|
||||
|
||||
Reference in New Issue
Block a user