资讯动态

ruflo-rag-memory 记忆命令实战:基于 HNSW 向量检索的跨会话 RAG 记忆 CRUD 全解析

发布时间:2026/9/11 21:21:57 来源:尧图企业网站定制
ruflo-rag-memory 记忆命令实战基于 HNSW 向量检索的跨会话 RAG 记忆 CRUD 全解析【免费下载链接】ruflo The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated项目地址: https://gitcode.com/GitHub_Trending/cl/ruflo本指南围绕 ruflo-rag-memory 插件的ruflo-memory命令展开系统讲解 store / search / retrieve / list / delete / consolidate / bridge 七类记忆操作覆盖默认dense、混合hybrid、Graph RAG 三种检索策略以及 HNSW 索引性能、命名空间约定、Claude Code 记忆桥与 AgentDB 底层实现。读完你将掌握在 ruflo 生态中完成跨会话语义记忆的存取、检索、治理与验证的完整实战方案。命令定位ruflo-memory是什么ruflo-memory是 ruflo-rag-memory 插件提供的核心命令命令定义文件其 frontmatter 声明为name: ruflo-memory description: SOTA memory CRUD — store, search (hybrid/graph-rag/dense), retrieve, list, consolidate它对外暴露的是一整套记忆生命周期管理能力写入store、语义检索search、精确取回retrieve、枚举list、删除delete、治理consolidate与外部记忆导入bridge。底层由 AgentDBSQLite vector_indexes持久化并依赖 HNSW 索引做近似最近邻ANN检索。从命令的$ARGUMENTS解析逻辑看ruflo-memory是一个无子命令模式的操作分发器——通过解析传入的第一个操作动词如store、search来决定执行路径若未提供任何参数则回落到memory list。这与同一插件提供的recall命令recall.md面向快速跨命名空间语义召回形成互补前者是完整 CRUD 控制台后者是开箱即用的快速检索入口。七类操作逐项详解store写入一条记忆npx claude-flow/clilatest memory store --key KEY --value VALUE --namespace NAMESPACE--key记忆条目的唯一键同命名空间内不可重复写入同键会覆盖。--value要持久化的正文内容建议直接写入可复用的知识片段。--namespace可选归属命名空间省略时落入默认命名空间default。配合 MCP 调用时等价于mcp__plugin_ruflo-core_ruflo__memory_store({ key, value, namespace })——这正是 ruflo-core 提供的 MCP server 所暴露的memory_*系列工具之一。写入时插件会为value生成 384 维 ONNX 嵌入向量模型为 all-MiniLM-L6-v2连同原文一起落入 AgentDB。search语义检索的三种形态search是ruflo-memory的核心操作根据检索策略分为三档1. 默认 dense 检索单跳语义匹配npx claude-flow/clilatest memory search --query QUERY --namespace NAMESPACE --limit 5查询文本同样经 ONNX 嵌入为 384 维向量在 HNSW 索引上做近似最近邻搜索返回 top-K 语义最接近的条目。2. hybrid 混合检索稀疏 稠密RRF 融合npx ruvector search QUERY --hybrid --limit 5当ruflo-ruvector插件被加载时混合检索会委托给 ruvector 后端同时执行 BM25 稀疏检索与向量稠密检索再用 Reciprocal Rank Fusion 融合排序。适合关键词 语义混合型查询。3. Graph RAG 多跳检索npx ruvector search QUERY --graph-rag --limit 5针对需要跨多条记忆进行多跳推理的查询沿记忆条目之间的实体关系链检索。适合我们上周关于 X 的结论是否影响 Y 的设计这类推理型问题。三个策略的选择依据在 memory-search skill 中有明确指引事实型查证用 dense关键词 语义用 hybrid多跳推理用 Graph RAG。retrieve按键精确取回npx claude-flow/clilatest memory retrieve --key KEY --namespace NAMESPACE与 search 的语义近似不同retrieve 是按 key 的主键精确读取返回该条目的完整原文适合在已知键名时取回权威内容。list枚举与审计npx claude-flow/clilatest memory list --namespace NAMESPACE --limit 10分页列出命名空间内的条目常用于记忆审计memory-specialist 代理做 consolidate 前先 list 全量核对。delete删除条目npx claude-flow/clilatest memory delete --key KEY --namespace NAMESPACE按 key 删除指定条目同时清理其向量索引记录。consolidate记忆治理npx claude-flow/clilatest hooks worker dispatch --trigger consolidateconsolidate 是记忆质量治理的聚合操作命令定义中明确其三步语义去重合并余弦相似度 0.92 的近似重复条目剪枝清理超过 30 天未触碰且检索命中为零的陈旧条目重建索引治理完成后重建 HNSW 索引以维持图质量。在 memory-specialist 代理 中治理工作流被扩展为五步Audit → Deduplicate → Prune → Compress压缩冗长条目→ Re-index即上述三要素的细化版本。bridge导入 Claude Code 自动记忆# 当前项目导入经 /memory-bridge skill /memory-bridge # 全项目导入 /memory-bridge --all-projectsbridge 操作将 Claude Code 原生存放在~/.claude/projects/*/memory/*.md的自动记忆导入 AgentDB。细节见 memory-bridge skill其底层调用链为Claude Code SessionStart hook → memory_import_claude (MCP) → claude-memories namespace保留命名空间由 ruflo-agentdb 拥有 → 本插件 memory-bridge skill memory_search_unified 消费导入结果带来源标注claude-code、auto-memory或agentdb。注意claude-memories是保留命名空间由 ruflo-agentdb 按 ADR-0001 的命名空间约定拥有本插件只是其规范消费方不得遮蔽保留命名空间。命名空间约定ruflo-memory命令定义给出的默认命名空间为default常用业务命名空间如下完整说明见 README 的 Memory Namespaces 一节命名空间用途示例 Keypatterns成功的代码/设计模式pattern-auth-jwttasks任务上下文与结论task-refactor-apisolutionsBug 修复与解决方案fix-race-conditionfeedback用户反馈与纠偏feedback-test-stylesecurity漏洞模式vuln-sql-injectionclaude-memories桥接导入的 Claude Code 记忆auto-imported在 memory-specialist 代理 中各命名空间还带有保留期策略tasks保留 90 天patterns/solutions/feedback/security永久保留claude-memories随会话启动同步。HNSW 性能从文档测量到索引切换决策命令定义中标注了 HNSW 索引向量检索的实测表现数据源自仓库内的 intelligence-system-audit 评审文档 与 benchmark-intelligence.mjs数据规模相对暴力搜索备注N5k快约 3.2x–4.7xruvector NAPIrecall10 ≈ 0.99N20k快约 1.9xANN 在索引规模交叉点以上占优交叉点以下持平/略慢小规模 N 时暴力搜索更优结论是ANN 在交叉点之上胜出。README 同时特别澄清此前流传的 150x–12,500x 数字是暴力搜索回退路径的测量假象在审计基准下无法复现——这提醒使用者在自己的数据规模上复测再决定是否启用 HNSW 索引。检索管线与重排序原理ruflo-memory的 dense 检索并非简单的向量 top-K在 memory-specialist 代理 中描述了一条完整的 SOTA 检索管线Query → [Embedding (ONNX 384d)] → [HNSW ANN search] ↓ [Optional: BM25 sparse search] ↓ [RRF Fusion (k60)] ↓ [MMR Reranking (λ0.7)] ↓ [Recency Boost (decay0.95/day)] ↓ Top-K ResultsRRF 融合hybrid 模式下以 k60 的 Reciprocal Rank Fusion 合并稀疏/稠密两路排序MMR 重排λ0.7 的最大边际相关重排在相关性与多样性之间取平衡过滤余弦 0.92 的近重复条目Recency 加权按时间戳做指数衰减加权每天 0.95近期记忆获得更高权重。当查询需要跨会话、带时间语义如上周我们决定什么或要求结果多样化时可使用--smart走五阶段管线查询扩展 → 多查询扇出 RRF → 新鲜度提升 → MMR 多样性 → 会话轮转实现位于 README 的 SmartRetrieval 一节对应 ADR-090npx claude-flow/clilatest memory search --query auth patterns --smart --limit 10跨命名空间的统一检索则由memory_search_unifiedMCP 工具承载对应 v3/claude-flow/cli/src/mcp-tools/memory-tools.ts 中的memory_*工具族# CLI不带 --namespace 即跨全部命名空间检索 npx claude-flow/clilatest memory search --query auth security --limit 5 # MCP显式统一检索 mcp__plugin_ruflo-core_ruflo__memory_search_unified({ query: auth security, limit: 5 })底层存储与安全AgentDB 与加密记忆落盘于.swarm/memory.dbSQLite vector_indexes 表。自 ruflo 3.6.25 起对应 ADR-096该库支持可选的 AES-256-GCM 静态加密启用条件CLAUDE_FLOW_ENCRYPT_AT_REST1且设置CLAUDE_FLOW_ENCRYPTION_KEY每次写库使用全新的 12 字节 IVwriteFileRestricted({encrypt:true})读库时通过魔数嗅探RFE1自动兼容旧的明文 memory.db迁移窗口内旧文件照常可读嵌入向量随 SQLite 整体加密无需列级加密任一字节被篡改会触发 GCM 认证失败并报解密错误而非静默损坏。用ruflo doctor -c encryption可核验加密开关状态。默认关闭开启无需迁移步骤首次写库即自动重写为加密格式。与 ruvector 的深度集成当ruflo-ruvector插件同时加载时rag-memory 会将高级检索能力委托给 ruvector 后端见 README 集成说明FlashAttention-3O(N) 内存复杂度的注意力实现Graph RAG多跳知识检索Hybrid search稀疏 稠密 RRF 融合DiskANN大规模持久化索引。这也解释了ruflo-memory命令中 hybrid / graph-rag 形态为何使用npx ruvector search ...而非 CLI 的 memory 子命令——两条命令路径分别对应不同后端实现。可验证性smoke 即契约该插件的契约验证由 scripts/smoke.sh 承载ADR-0001 定义为 smoke as contractbash plugins/ruflo-rag-memory/scripts/smoke.sh # Expected: 10 passed, 0 failed10 项结构化检查覆盖plugin.json 版本与mcp/claude-memories/bridged-memory关键词memory-bridge、memory-search 两个 skill 与 memory-specialist 代理及两个命令的 frontmatter 完整性README 对claude-flow/cliv3.6 的版本锁定claude-memories 保留命名空间消费方文档memory_import_claude、memory_search_unified、SessionStart引用ADR-096 加密块ADR-0001 状态为 Accepted并回归检查不得出现19 AgentDB controllers的过期表述、skills 中不得有通配符工具授权。安装该插件的前提是已加载 ruflo-core提供 MCP serverclaude --plugin-dir plugins/ruflo-rag-memory实战示例跨会话记忆闭环结合 EXAMPLES.md 的完整工作流一个典型闭环如下会话 1写入知识npx ruflo memory store \ --key fix-race-async-cleanup \ --value Race condition in cleanup: use AbortController to signal cleanup before task dispatch \ --namespace solutions \ --tags async,cleanup,race会话 2次日、不同项目语义召回npx ruflo recall race condition async # 返回 AbortController 修复方案 —— 跨会话、跨项目复用代理内编程式检索// 在 Claude Code 代理中memory_search_unified MCP 工具 const findings await memory_search_unified({ query: OAuth2 PKCE refresh token security, limit: 5 }); // findings[0] 可能来自三周前的会话定期治理# 去重余弦 0.92 剪枝30 天未触碰零命中 重建 HNSW 索引 npx claude-flow/clilatest hooks worker dispatch --trigger consolidate这套写入命名空间化 检索策略分级 治理自动化 smoke 契约化的组合正是ruflo-memory命令在 ruflo 生态中承担跨会话记忆基础设施的完整形态。【免费下载链接】ruflo The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated项目地址: https://gitcode.com/GitHub_Trending/cl/ruflo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价