用途
Caura(原名 MemClaw)是面向多租户、多智能体 AI 集群(agent fleets)的开源记忆层。其定位是“受治理的共享记忆”:让智能体存储所学内容、检索整个集群已知的信息,并随每次交互变得更聪明——智能体之间相互学习,而不是重复犯错。
官方将其描述为一个循环、三大支柱:写入(write)、召回(recall)、复利(compound),即每次交互都让下一次更聪明。
主要能力
记忆管线
- 单次 LLM 富化:每次写入自动把内容归类到 7 种记忆类型之一(服务器自行写入 outcome、rule、insight),生成标题/摘要、为重要性打分、标记 PII,并抽取实体——全部来自单个 content 字段。
- 混合搜索:pgvector 语义相似度 + 全文关键词匹配 + 知识图谱扩展(最多 2 跳),按相似度、重要性、新鲜度和图加权的复合分数排序。
- 实时知识图谱:每次写入抽取人物、组织、地点和概念为实体与关系。实体消解先做精确名称匹配,再做确定性的规范名匹配,然后做语义相似度(>0.85 余弦)匹配。
- 矛盾检测:通过 RDF 三元组比较 + LLM 语义分析检测冲突记忆并自动取代,带有完整的矛盾链追踪。
自我改进记忆
- 基于结果的学习(Karpathy Loop):智能体在依据召回记忆行动后上报成功/失败,系统强化有效内容,并在失败时自动生成预防性的 rule 类型记忆。
- 结晶(Crystallization):LLM 将近重复记忆合并为带完整来源信息的规范原子事实;8 状态生命周期自动化淘汰过期数据。
- 每智能体检索调优:每个智能体根据反馈优化自身的检索配置(top_k、min_similarity、graph_max_hops、混合权重),使搜索质量随交互累积提升。
治理与多租户
- 租户隔离:按租户的行级数据库分离;每次写入自动检测并标记 PII(在记忆元数据中以 contains_pii / pii_types 呈现)。
- 可见范围:每条记忆在写入时打标——scope_agent(私有)、scope_team(集群内共享,默认)、scope_org(跨集群)。跨集群召回是需授权的,而非开放。
- 智能体信任层级:四个级别控制跨集群的读、写、删除。
- 完整审计日志:每次写入、删除和状态转换都记录租户与范围上下文。
- 智能体活动摘要:面向选择加入的组织,由服务器端按组织设定的节奏生成(agent_digest.enabled 默认关闭;agent_digest.cadence 默认 daily,可选 weekly 或两者);未选择加入的租户零成本。
其他能力
- MCP 服务器:内置 Model Context Protocol,路径为 /mcp(Streamable HTTP),可连接 Claude Desktop、Claude Code、Cursor、Windsurf 等任意 MCP 客户端。客户端可发现 12 个工具(原文在此处中断)。
- 多供应商 LLM:每租户可配置主 + 备用供应商链(OpenAI、Gemini、Anthropic、OpenRouter),零配置租户使用平台默认值。
- 文档存储:与语义记忆并存的 JSONB 结构化集合,用于精确字段查询(客户记录、配置、任务列表)。
使用方式
本地试用(无需 API key、无需注册)
独立模式以单租户运行且绕过认证:启动 Caura、写入一条记忆、再把它找回来。无 key 时无需配置,记忆不生成嵌入,按关键词查找。添加 AI 供应商 key 后可进行语义搜索。无 key 的强写入响应包含 memory_type、title、status、weight,以及 metadata 下的 summary,均由针对单个 content 字段的确定性本地启发式生成;配置 AI 供应商后这些值由模型推断,metadata 还可含 tags。
四条路径
- 托管平台:在 caura.ai 免费注册,从仪表板复制 API key,通过 MCP 或 REST 连接。生产集群建议每个智能体配置一个智能体范围的凭据。
- 自托管(开源):Docker Compose 启动 PostgreSQL + pgvector、Redis、存储服务、REST/MCP API 以及核心运维生命周期调度器(每晚过期、归档、清除和结晶)。文档提供完整自托管指南(供应商、认证、服务拓扑、安全、离线运行与测试)、本地嵌入器(完全本地语义搜索,无云 API 调用)以及不用 Docker 的手动部署。
- OpenClaw 插件:已运行 OpenClaw 集群时,可将 Caura 作为插件安装,指向托管平台或自托管栈。插件占用 OpenClaw 的记忆槽,暴露相同的面向智能体的记忆工具。
- 客户端集成:提供 Python 客户端(从任意托管或自托管 Caura 部署对话)与 TypeScript 客户端(Node 18+,无运行时依赖),另有 Rail——在每次智能体回合前后提供记忆,检索治理规则与当前消息相关事实,把提示就绪的上下文交给调用方,并抽取和存储本回合学到的东西。
MCP 配置:自托管示例使用 http://localhost:8000/mcp 与 X-API-Key: standalone;托管平台使用 caura.ai。Claude Code 不会从 settings.json 读取 MCP 服务器,需用 claude mcp add 注册;Claude Desktop 配置文件位于 macOS 的 ~/Library/Application Support/Claude/claude_desktop_config.json 或 Windows 的 %APPDATA%\Claude\claude_desktop_config.json;Cursor 在 Settings > MCP Servers > Add Server 添加。
凭据范围:团队或生产使用建议用智能体范围凭据替代租户范围 key。托管平台可通过 POST /api/v1/admin/agent-keys/provision 原子化配置(或 /settings/organization/api-credentials 向导),一次往返生成凭据 + Agent 行 + 初始信任 + 集群成员资格。两种 key 均用 mc_ 前缀,范围在凭据生成时设定。使用租户范围凭据时,每次 MCP 工具调用都要显式传 agent_id,网关会拒绝该路径上保留的默认值 mcp-agent。
适用场景
- 单个智能体起步、后续扩展为智能体集群的团队:单智能体设置下无需改动,Caura 从第一次写入起就提供有范围的记忆、跨智能体结果传播和集群级信任层级。
- 需要受治理、可审计的跨智能体/跨团队/跨供应商记忆平面的生产环境(如资料提及的 eToro 案例)。
限制与待验证事项
- 公开的智能体记忆基准(LoCoMo、LongMemEval)衡量的是单智能体、单用户、单长对话——即单聊天机器人形态。集群治理与特定工作负载的延迟仍需在相应环境中验证。
- LoCoMo 准确率:在其记录的 LoCoMo 语义判官协议下,使用 retrieval-augmented agentic-v1 管线,Caura 得分 77.9%(1,199/1,540)。
- LongMemEval 参考判官:在基准的 GPT-4o 参考判官下,Caura 正确回答 500 道 LongMemEval_S 题中的 461 道(92.2%)。
- LongMemEval 次级判官:同样的 500 个冻结答案在次级 Gemini 3.5 Flash-Lite 判官下得分 90.2%(451/500)。
- LongMemEval 令牌效率:在 LongMemEval_S 上,压缩检索上下文中位数为 22,410 tokens,相比 107,706 tokens 的完整 haystack 节省 79.2%(仅上下文);计入所有 reader 调用则为 75.4%。
命名变更说明
MemClaw 现更名为 Caura——同一产品,一个名字。现有 memclaw_* 工具调用和受支持的 MEMCLAW_* 环境别名继续可用;新配置请使用 caura_* 名称和当前 Caura URL。PyPI 名称 memclaw-client 仅作为重定向外壳(0.5.1)保留,用于安装 caura-client,不提供 memclaw_client 导入,也不提供 MemClaw 类。npm 包 @caura/memclaw-client 从未发布。