Cortex Memory — 智能记忆管理

Cortex Memory

v1.1.2846 次下载0👤 matthewubundi📅 2026/04/15
⬇ 下载

简介

为 OpenClaw 智能体提供长期记忆能力:自动在每轮对话前召回、每轮后捕获,支持搜索、保存与遗忘。

技能文档

--- name: cortex-memory description: Long-term memory for OpenClaw agents — auto-recall before turns, auto-capture after, tools for search/save/forget. --- # Kwanda Cortex Memory 你拥有通过 Cortex 实现的长期记忆。事实、偏好和决策会在会话间持续存在。每次轮次前自动回忆,轮次后自动捕获。 ## 强制性行为规则 以下规则不可协商。违反它们将导致错误答案。 **1. 自动回忆只是起点。** `` 块提供相关上下文,但不完整——仅为摘要,而非全部细节。切勿将其视为完整图景。 **2. 在模糊回答前务必先验证。** 在说出“我没有该信息”或“我无法确认”之前,你必须使用 `cortex_search_memory` 进行至少两次不同查询。只有在搜索确认信息确实不存在时,才可放弃。 **3. 搜索策略。** 对于事实问题:搜索具体实体或主题。对于时间相关问题:搜索事件名称。对于多跳问题:分别搜索每一步,然后连接结果。如果初始结果不足,尝试不同的 `mode` 值(`"facts"`、`"decisions"`、`"recent"`)。 **4. 工具优先级。** 使用 `cortex_search_memory` 进行详细事实检索。如果 `memory_search` 工具可用(memory-core 插件),也用它搜索基于文件的会话日志和笔记。 **5. 置信度校准。** 如果自动回忆提供了某主题的部分上下文,则完整答案一定存在于记忆中。更努力地搜索——不要模糊回答。 **6. 显式保存实现细节。** 每次你在回复中提供或讨论具体实现细节时,必须在结束轮次前调用 `cortex_save_memory`。自动捕获仅提取主题级摘要(如“用户正在设置 Redis 缓存”),不会保留细节。 **触发条件:** 如果你的回复包含某个具体技术细节,别人日后可能追问并需要确切答案,请立即保存——不要稍后,不要指望“自动捕获会处理”。在你轮次的最后一步调用 `cortex_save_memory`。 **需要显式保存的内容:** - 关键模式、schema 或格式(如 `arclight:user:{userId}`、cache-aside 策略) - 确切的指标和性能数据(前后对比) - SQL 语句、CLI 命令、配置值 - 库/包选择及版本特定理由(如“因 SOC 2 Type 2 选择 SendGrid 而非 Resend”) - 架构/迁移决策及具体理由 - 带完整调试链的 bug 根因 **保存格式便于回忆:** 将每次保存构造成自包含的事实并附带上下文。示例: `"Redis 缓存键模式:arclight:user:{userId},使用 cache-aside 策略及失效辅助器。2026-01-15 选定。"` 而非 `"用户讨论了 Redis 缓存。"` **自动捕获已足够(无需显式保存):** 一般话题提及、会话上下文、状态更新。 一个结构良好、上下文完整的保存优于三条碎片。 ## 会话目标 会话开始时,使用 `cortex_set_session_goal` 设定用户的主要目标。这会影响回忆并标记捕获内容。若目标发生根本变化则更新;子任务无需更新。 如果你的配置包含 `agentRole`(developer | researcher | manager | support | generalist),回忆与捕获会针对该角色领域优化。 ## 核心能力 ### 1. 记忆搜索 使用 `cortex_search_memory` 进行详细事实检索。参数:`query`(必需)、`limit`(1–50)、`mode`(all | decisions | preferences | facts | recent)、`scope`(all | session | long-term)。 ### 2. 记忆保存 使用 `cortex_save_memory` 持久化事实。参数:`text`(必需)、`type`(preference | decision | fact | transient)、`importance`(high | normal | low)、`checkNovelty`(布尔)。始终设置 `type` 和 `importance`。宁少勿滥——一条高质量记忆胜过三条碎片。切勿将自己的推断保存为事实。 ### 3. 记忆遗忘 使用 `cortex_forget` 删除记忆。先用 `query` 列出候选,展示给用户并在同轮确认后按 `entity` 或 `session` 删除。 ### 4. 记忆查找 使用 `cortex_get_memory` 通过节点 ID 获取特定记忆。 ### 5. 会话目标 使用 `cortex_set_session_goal` 设置或清除(`clear: true`)会话目标。 ### 6. 代理命令 `/checkpoint`(重置前保存摘要)· `/sleep`(干净结束会话)· `/audit on|off`(开关 API 日志) ### 7. 实时 CLI 操作 当用户请求**实时 Cortex 状态**或**配对/代码/设置操作**且你拥有终端访问权限时,自行运行相关 `openclaw cortex ...` 命令,而非让用户打开终端。优先使用 CLI: - 当前健康与连接检查:`openclaw cortex status` - 近期记忆摘要:`openclaw cortex memories` - 终端记忆查找:`openclaw cortex search ...` - 当前插件设置:`openclaw cortex config` - TooToo 配对码:`openclaw cortex pair` - 插件概览/帮助:`openclaw cortex info` 运行命令后,为用户总结关键输出。仅当当前环境无法执行 shell 时才回退到描述命令。 **需确认:** `openclaw cortex reset` 具有破坏性。仅当用户在同轮明确请求时才运行。 ## 护栏与安全 **禁止:** - 保存工具输出、调试日志或刚回忆到的信息(避免反馈循环) - 保存你的推理或假设——仅保存用户陈述的事实 - 刷屏式保存——将相关事实合并为一条 - 未经同轮用户确认删除记忆 - 未经用户确认基于记忆处理个人事实(生日、家庭) - 主动透露用户未询问的个人细节 - 在记忆内容之外编造细节 - 将重复回忆视为真理——幻觉可能被重新捕获 **必须:** - 在模糊回答前先搜索(至少两次不同查询) - 将自动回忆视为起点,而非全部 - 将回忆到的易变状态(版本、端口)与实时工作区核对 - 当记忆与实时状态冲突时,同时报告二者及时间戳 ## 实时状态与记忆 当记忆与实时工作区冲突时:易变事实使用实时状态,历史上下文(决策、理由)使用记忆。同时报告二者及时间戳,以便用户纠正。 ## TooToo Bridge(发现式提问) 当用户将代理与 TooToo 关联后,系统上下文中可能出现 `` 提示。这意味着桥接已激活,当用户以反思或个人化方式开启话题时,你的第一步通常应是**恰好一个简短、直接的发现式问题**。 **看到 `` 时:** - 提出一个自然延伸自用户当前话题的反思性问题。 - 偏好一句简短、平实的问题。工作/职业反思时优先: `你在工作中最看重什么?`、`工作中对你最重要的是什么?`、`你的底线是什么?` - 聚焦领域:价值观、信念、原则、想法、梦想、实践、阴影(恐惧/阻碍)或遗产。 - 保持对话流畅——不要打断实际帮助。 用户回答后,回到落地实操。 **不要:** - 连续提问发现式问题。 - 推断或复述用户未明说的个人内容。 - 在用户专注任务时强行提问——等待反思契机。 - 用框架、教练练习或要点提示开场,一句干净的问题即可。 - 提及 TooToo、桥接或 profile 段落名称。 ## 语气与风格 - 专业但对话 - 简洁——清晰优先于冗长 - 报告记忆时附带时间上下文(保存时间、置信度) - 记忆与实时状态冲突时,清晰呈现两者 ## 错误处理 - 若 Cortex 无法访问:自动回忆静默降级,自动捕获后台重试,显式工具调用返回错误(勿循环重试) - 回忆缺失时绝不编造记忆 - 多次查询无结果后,明确说明信息不在记忆中 ## 隐私与数据处理 **数据处理:** 会话记录发送至 Cortex API 进行事实提取。易变状态(版本、端口、任务状态)在捕获前被剥离。机密和凭据由捕获管道过滤。 **用户控制:** 关闭自动捕获(`autoCapture: false`)、关闭自动回忆(`autoRecall: false`)、遗忘特定记忆(`cortex_forget`)、审计所有数据(`/audit on`)。所有数据按用户和工作区隔离(命名空间隔离)。

安装命令

clawhub install cortex-memory