CtrlK
BlogDocsLog inGet started
Tessl Logo

memory-search-best-practices

记忆系统多刀检索 + recall coverage 策略(8 类题型 recipe)。 Use when: 任务是 "哪些地方提过 X" / "X 的来源 / source map" / "有没有提过 Y / absence check" / "上次到现在变了什么 / delta" / 冷启动 onboard 复杂主题 / 任何召回任务搜了一刀觉得不够。 Not for: 只是选哪个入口走第一刀(用 memory-navigation)/ 已知精确 anchor 单 Read(直接 Read)/ 代码符号查(Grep/LSP)/ 新功能开发(不是 recall 任务)。 Output: 多 query 多 scope 召回 union 结果 + coverage matrix(item/source/谁提到/直接 vs 间接)+ "何时停下来"判据。 GOTCHA: 和 memory-navigation 互补不重叠 — memory-navigation 决定**第一刀走哪个工具**(search vs graph vs list_recent),本 skill 决定**要不要补刀 + 题型对应几刀几路 + 何时停**。Ragdoll家族必加载:opus 系治"我能猜出来 / 碎片够了"停太早病,fable 系治"再确认一轮"停太晚病(双向校准见正文)。

61

Quality

72%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./cat-cafe-skills/memory-search-best-practices/SKILL.md
SKILL.md
Quality
Evals
Security

Memory Search Best Practices(多刀检索 + 全集召回)

单刀 top-k 不是全集;recall 任务需要 multi-query union + Read 原文 + 知道何时停。

核心命题

Query expansion 由 agent 做,不是系统做(KD-8 同源:dumb system + smart agent):

  • 系统不知道 "AUDHD" 在我们家关联 sensory gating / 2e / RSD / PDA — 那是领域知识
  • Agent(LLM)有领域知识,但经常觉得"够了"就停(Ragdoll家族尤甚——2026-05-17 dogfood 实证:三猫搜同题各拿 10 条,全集需三猫合)
  • 解法:教 agent 题型对应 recipe + 何时停下来判据,不在系统层加黑盒 expansion

8 类题型 → recipe

题型例 queryRecipe(≥几刀几路)关键
是什么"F200 是什么"1 刀:search_evidence(query, hybrid, scope=docs) + Read top doc单刀够用
周边关系"F200 关联什么"1 刀:graph_resolve(anchor, depth=1, relations=[feature_ref,related_to])配 relations filter 防 hub 爆炸
决策考古"为什么当时选 X 而不是 Y"graph_resolve(anchor) → Read ADR/spec → 抽 thread anchor → get_thread_context 看原话必 Read ADR 原文 + thread 原话
冷启动 onboard"新猫接手 F200 要知道什么"docs(hybrid) + graph + trajectories + Read spec三入口全用
coverage 全集"哪些地方提过 X"≥3 刀:docs/hybrid + threads/semantic + agent expand 同义/缩写/中英二轮 + graph_resolve 命中 anchor 后追 source threads + union dedup不是单 top-k;agent 自己 expand
source-map / provenance"X 这个想法的源头是哪个 thread"canonical doc 命中后从文档抽 source thread ids → get_thread_context Read 原文canonical doc 自带 provenance link,跟着走
absence check"我们提过 Y 没有"正反两路:search(Y) + search(Y 相关概念/反义) 都 0 命中才算 absent单刀 0 命中不等于不存在
delta"上次到现在 X 变了什么"list_recent(scope=threads, since=N天) + 对比 graph 邻居增减 + Read 关键 diff。压缩恢复子场景起手:先看 TodoWrite + session digest 拿到"上次已知状态" → 再 list_recent 补增量(46 review P3 补)时间窗口 + 增量视角

AUDHD coverage 案例 5 步 recipe(operator真实任务)

1. search_evidence("audhd adhd asd", hybrid, scope=docs, limit=10)
   → 命中 user_audhd_crossdomain + audhd-self-observation/ 三件套 + F085/F195/F196/F169
2. search_evidence("audhd adhd asd", semantic, scope=threads, limit=10)
   → 命中 5 个直接 thread
3. Agent 用领域知识 expand(不让系统猜):
     audhd → sensory gating / 2e / RSD / PDA / hyperfocus / 倦怠 / 梦境 / 自闭 / 多动 / 神经多样性
   对每个二轮搜(中文一遍 + 英文/缩写一遍)
4. Read top canonical doc (landy-audhd-operating-manual.md)
   → 从文档抽 source thread ids → 二轮 get_thread_context Read 原文
5. 输出 coverage matrix(item / source / 谁提到 / 直接 vs 间接 / 置信度)

接系统递的铲子(F256 Related directions)

F256 Phase B/C 起,search_evidence topk 结果末尾默认渲染 📎 Related directions 块——系统把三路 expansion provenance 投影给你。接法:

  • Hint 是种子不是结论:指方向、不证明相关;不相关就忽略——hints 是每刀的顺手加菜,不替代 coverage 多刀(照旧 ≥3 刀多路)
  • 按 provenance 桶定信任convention-edge(静态代码/文档关系)> source-thread(doc↔讨论溯源)> frontmatter-alias(关键词启发式——2026-07-08 三刀实测全为 backlog/architecture/lessons 类 super-hub 泛词,低信任,别当 anchor 用)
  • Follow 必 Read:F200 记 followup rate,Read / graph_resolve 命中 hint anchor 才算 consumption

Ragdoll家族停止判据校准(双向)

同一张停止判据表两种读法:opus 系读下限(≥3 路才准停),fable 系读上限(无新 anchor 即必停)——校准随 F256 Phase D per-family telemetry 迭代。

Opus 系(46/47/48/4.5/sonnet):停太早——magic words 是油门

operator experience:"Ragdoll太聪明太自信,搜到足够推理就不搜了"(2026-05-17 AUDHD dogfood 实证)。

  • "我能猜出来" → 停,Read 源文件。摘要是索引不是答案
  • "碎片够了" → 停,至少再搜一轮不同角度,doc anchor 全部 Read 原文
  • "应该是 X" / "大概知道" → 不算搜过,必须 ≥3 路真搜 + Read

Fable 系:停太晚——magic words 是刹车

档案:"不给停止条件,会把假设空间收敛到唯一解才停"(2026-07-08 档案预测 + 行为层自述,待 AC-D1 per-family 分桶验证)。

  • "再确认一轮" → 停,自问:上一刀有新 anchor 吗?没有 = 判据已满足,立刻收手写结论
  • "万一还有呢" → absence 判据是正反两路 + 相关概念 0 命中,满足即断言,不遍历宇宙

coverage 类召回铁律(仅 coverage / source-map / absence 三题型;精确题按上表 recipe 停——"是什么"1 刀命中 Read 完即止)(2026-07-15 修订:旧版"任何召回任务 ≥3 路"与 recipe 表自相矛盾,对 opus 系治停太早、对 fable 系反向助推停太晚):

  • ≥3 路命中无新 anchor 才停(不是"找到第一个 high confidence 就停",也不是"永不停")
  • 高置信命中 → 必 Read 原文(不止步摘要——此条全题型通用
  • 跨语言至少两遍(中文一遍 + 英文/缩写一遍)

何时停下来判据

题型停止条件
是什么 / 周边关系1 刀命中高置信 doc + Read 完即停
决策考古ADR + ≥1 个 thread 原话 Read 完即停
冷启动三入口 + spec Read 完 + 列 question 清单即停
coverage 全集≥3 路 + agent expand 二轮 + Read canonical → 无新 anchor 出现 才停
source-mapcanonical doc 列出的 source thread 全部 Read 完即停
absence正反两路 + ≥1 个相关概念都 0 命中即可断言 absent
delta时间窗口扫完 + 邻居增减列出即停

Common Mistakes

错误后果修复
单刀 search → 拿摘要推理 → 直接答漏全集(AUDHD 实证:每猫拿 10 条但全集需三猫合)coverage 题型 ≥3 路 + 必 Read 原文
觉得 "我能猜出来" 不搜了Ragdoll家族病,输 dogfood 比赛当 magic word 拉刹车,强制 ≥3 路
让系统 expand "AUDHD→10 个词"黑盒推理,污染(KD-8 违例)Agent 自己 expand(用 LLM 领域知识 + 可解释)
跨语言只搜英文中文文档漏中英各搜一遍
canonical doc 命中后不追 source threadsource-map / provenance 残缺doc 内的 thread id / wikilink 全 Read
单刀 0 命中就断 absent假阴性(可能用别的措辞写了)正反两路 + 相关概念都搜
list_recent(scope=docs) 当全集用DF-1 已知 docs scope timestamp 失真 / 被 global:memory 淹coverage 任务别只靠 list_recent,配 search+graph
把 memory-navigation 和本 skill 混淆重复或漏memory-navigation 选第一刀;本 skill 决定补刀策略
盲 follow 全部 Related directions hintsfrontmatter-alias 泛词把你带去 super-hub 总目录(backlog/lessons)按 provenance 桶定信任;不相关就忽略

和其他 Skill 的区别(防误触发)

Skill干什么何时用
memory-search-best-practices(本 skill)多刀检索 + 题型 recipe + 何时停召回任务、coverage、source-map、delta、absence
memory-navigation第一刀走哪个工具 + 噪音控制 + 入口决策树不知道用哪个入口
debuggingbug 根因调查遇到 bug 而非 recall
cross-cat-handoff找别的猫问自己搜不到求助队友

关系:memory-navigation 决定第一刀走哪个工具;本 skill 决定要不要补刀 + 题型对应几刀几路 + 何时停。先用 memory-navigation 选入口,再用本 skill 决定后续。

链入下一步

  • 找到决策后想立项 → feat-lifecycle
  • 找到 bug 线索 → debugging
  • 找到 thread 后想看原文 → cat_cafe_get_thread_context
  • 找到一个有意思的方向想跨猫讨论 → collaborative-thinking

相关

  • Spec: docs/features/F200-memory-recall-eval.md v1.2 SW-1 / docs/features/F256-memory-search-strategy-evolution.md(Phase A 链入 session hook;Phase B/C 上线 Related directions)
  • Related: memory-navigation(前置入口决策) / ../.cat-cafe-shared-refs/memory-routing-partial.md
  • 触发案例: operator AUDHD recall 任务(2026-05-17)暴露三猫搜出不同子集,催生本 skill;2026-07-08 operator触发 Lint → 补 F256 接法 + 双向校准
Repository
zts212653/clowder-ai
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.