memory-retrieve · git:20260728.634c4b7 · 2026-07-28 · sha256 4ea1272037199b72
memory-retrieve git:20260728.634c4b7A
Immutable. This exact content never changes and is served at /api/v1/blob/4ea1272037199b72.
--- name: memory-retrieve description: > 被其他 skill 内部调用,从 Workbench/memory/ 中检索与当前任务相关的历史经验。 当 idea-generate 需要查失败方向、experiment-design 需要查有效方法、 或任何 skill 需要历史上下文时调用 argument-hint: "<query> [scope]" user-invocable: false allowed-tools: Read, Glob, Grep --- ## Purpose memory-retrieve 是 MindFlow 记忆系统的检索接口。它被其他 skill 内部调用(如 idea-generate 查失败方向、experiment-design 查有效方法),从 `Workbench/memory/` 的结构化记忆文件中检索与当前任务语义相关的历史经验。 这是 Layer 1 的轻量实现——纯 Markdown 文件读取 + LLM 语义匹配,零外部依赖。未来 Layer 2 可用向量检索替换,接口不变。 ## Steps ### Step 1:确定检索范围 根据 `scope` 参数确定要读取的记忆文件: | scope | 目标文件 | |:------|:---------| | `patterns` | `Workbench/memory/patterns.md` | | `insights` | `Workbench/memory/insights.md` | | `effective-methods` | `Workbench/memory/effective-methods.md` | | `failed-directions` | `Workbench/memory/failed-directions.md` | | `all` | 以上全部 | ### Step 2:读取记忆文件 用 Read 读取 scope 对应的记忆文件。若文件不存在或为空,返回空结果并告知调用方"该记忆类别暂无条目"。 ### Step 3:语义匹配 逐条扫描记忆文件中的条目(每个 `### [YYYY-MM-DD]` 标题为一条),判断其与 `query` 的语义相关性。判断标准: - 条目的 observation/claim/method 是否与 query 描述的任务/问题直接相关 - 条目中引用的论文/实验是否与 query 涉及的领域重叠 - 条目的 lesson/pitfall 是否对 query 的任务有参考价值 ### Step 4:返回结果 返回 top-k 相关条目(默认 k=5),每条包含: - 条目原文(完整保留,不做概括改写) - 来源文件路径(如 `[[Workbench/memory/patterns.md#条目标题]]`) 若相关条目不足 k 条,返回全部匹配条目,不补凑。 ## Guard - **只读**:不修改任何记忆文件,不修改任何 vault 文件 - **原文保真**:返回结果必须包含条目原文和 `[[wikilink]]` 来源引用,不做概括性改写 - **诚实返回**:若无相关条目,返回空结果,不编造记忆内容 ## Verify - [ ] 返回条目 ≤ k 条,每条含原文 + `[[wikilink]]` 来源路径 - [ ] 未对任何文件产生写入(只读) - [ ] 无匹配时返回空结果而非编造/补凑