SuperAPI AI 工具集

search-memory

通用与其它

查看项目

更新于 10-15 14:57

技能介绍

用途

search-memory 用于在个人知识库中检索过去的决策、流程与上下文,底层依赖 Nowledge Mem。它适合在任务涉及既往工作、先前修复或早前决策时使用,也适合恢复某个具名功能、缺陷、重构、事故或子系统的任务,以及评审、回归、发布、文档对齐或连接器行为类问题。当调试模式与之前解决过的问题相似,或用户询问理由、偏好、流程、重复性工作流细节,或使用“那个方案”“像之前那样”“我们用的那个模式”等隐含回忆措辞时,也属于强信号。

在复杂调试、可能与过去决策交叉的架构讨论、用户已建立的领域约定,或当前结果含糊而历史上下文能让答案更精确时,可作为上下文信号考虑检索。

主要能力

检索路由方面,优先使用宿主暴露的 Nowledge Mem MCP 工具:memory_search 用于持久知识,thread_search 用于过往对话,thread_fetch_messages 用于查看匹配的对话。否则先用 nmem --json m search "query" -n 5 检索持久知识,用 nmem --json t search "query" --limit 5 检索先前对话或精确会话历史。若结果包含 source_thread,可用 nmem --json t show <thread_id> --limit 8 --offset 0 --content-limit 1200 查看所需的具体消息。整体原则是优先选择能回答问题的、最小的检索面。对于延续性强的工程工作,应在任务开始附近就检索,而不是等用户明确要求记忆检索。

检索模式

Normal(默认):使用 memory_search 且 mode="normal",或 nmem --json m search "query" --mode normal -n 5,适用于具体事实和有界回忆。

Deep:使用 mode="deep" 或 --mode deep,适用于概念性问题、理由、历史或跨主题关系。当 Normal 的证据为空、含糊、冲突或不足时升级到 Deep。不要自行编造服务器未返回的分数阈值。

渐进式图检索:当用户要求相关节点、谱系或逐步探索时,从精确的 Memory ID 开始。没有种子时,先运行有界的 Normal 或 Deep 检索,并使用其返回的精确 ID。遵循 explore-graph 技能的单跳协议与停止边界;展示聚焦图不会自动启动图爬取。

展示检索结果

每次成功的 memory_search 或等价的 CLI/KFS Memory 检索只要返回至少一个 Memory,就自动展示聚焦图。保持排名顺序和所有返回的 Memory ID,绝不推断或替换 ID。对于能内联渲染 MCP App 的宿主,优先使用 MCP explore_graph,传入逗号分隔的 ID、depth=1 和 limit=15。独立浏览器或链接回退以及有界渐进扩展使用 explore-graph 技能;若该技能未安装,应说明回退不可用,并建议与 search-memory 一同安装。内联渲染成功时不要打开重复的独立图。不要对空结果集或仅线程检索绘图。渲染时保持相同的所有者/成员权限、身份与空间。精确结果 ID 不强制执行访问控制:对于受 Space 或 Team 限制的检索,仅在该界面确认执行相同限制时才绘图。返回浏览器 URL 前遵循 explore-graph 的身份与范围检查。图失败不得把成功的检索变成错误:简要报告原因并继续使用已检索到的证据。若未找到匹配证据,应如实说明。

当 Memory 结果影响答案时,简要报告查询、模式、范围以及最强匹配的 Memory ID 与标题。仅在服务器返回分数时使用该分数;不要编造缺失的元数据或隐藏推理。

使用方式与限制

这些技能通过 CLI 或宿主已有的 MCP 连接工作;聚焦图查看不需要原生连接器。若需要自动回忆、转录捕获和宿主生命周期钩子,优先使用智能体专用的连接器。已安装时运行 check-integration,或参阅集成指南。

有界线程读取:先检索记忆或线程,再选择所需的具体对话与消息范围。每个问题最多调用一次 thread_fetch_messages、宿主线程获取工具或 nmem --json t show,使用较小的消息上限(例如 8)以及受支持时 1200 的内容上限。已知目标范围可使用一次非零 offset。绝不循环遍历 offset 来重建对话。不要为提高 --content-limit 来补偿缓慢或不完整的读取。小输出上限并不保证每个已部署后端上的服务端工作都廉价。若读取缓慢、不完整、失败或超时,应停止、报告证据缺口并细化检索,而不是重试分页。用户后续明确要求另一范围属于新的有界读取;常规的“继续”不构成清空线程的许可。

保持配置的端点、所有者、智能体身份与活动空间。若运行时已知活动通道,通过支持的 MCP 参数传递该范围,或在 CLI 命令中添加 --space "<space name>"。绝不从当前文件夹推断空间,也不为找到更多结果而切换所有者或空间。