SuperAPI AI 工具集

triple-memory-2

智能体与模型

查看项目

更新于 10-16 07:12

技能介绍

用途

Triple Memory System 是一套综合记忆架构,将三种互补的记忆系统组合起来,用于在跨会话场景中最大化上下文保留。它适合在搭建完整的智能体记忆体系时使用。

架构概览

处理流程如下:

  1. 用户消息进入;
  2. LanceDB 自动召回,注入相关对话记忆;
  3. 智能体响应(使用全部三种系统);
  4. LanceDB 自动捕获,自动存储偏好与决策;
  5. Git-Notes 记录带实体抽取的结构化决策;
  6. 文件更新,写入持久化工作区文档。

三大系统

1. LanceDB(对话记忆)

  • 自动召回:每次响应前注入相关记忆。
  • 自动捕获:自动存储偏好、决策与事实。
  • 工具:memory_recall、memory_store、memory_forget。
  • 触发词:"remember"、"prefer"、"my X is"、"I like/hate/want"。

2. Git-Notes 记忆(结构化、本地)

  • 分支感知:记忆按 git 分支隔离。
  • 实体抽取:自动抽取主题、名称、概念。
  • 重要性等级:critical、high、normal、low。
  • 不进行外部 API 调用。

3. 文件搜索(工作区)

  • 搜索范围:MEMORY.md、memory/*.md 以及任意工作区文件。
  • 脚本:scripts/file-search.sh。

设置

启用 LanceDB 插件

{
  "plugins": {
    "slots": { "memory": "memory-lancedb" },
    "entries": {
      "memory-lancedb": {
        "enabled": true,
        "config": {
          "embedding": { "apiKey": "${OPENAI_API_KEY}", "model": "text-embedding-3-small" },
          "autoRecall": true,
          "autoCapture": true
        }
      }
    }
  }
}

启用自动记忆转储(压缩前)

将以下内容加入 Clawdbot 配置,以便在压缩前自动保留上下文:

{
  "agents": {
    "defaults": {
      "compaction": {
        "mode": "safeguard",
        "memoryFlush": {
          "enabled": true,
          "softThresholdTokens": 8000,
          "systemPrompt": "Session nearing compaction. Preserve context using triple memory system (git-notes, LanceDB, files).",
          "prompt": "Context is at ~80%. Write session summary to memory/YYYY-MM-DD.md, update MEMORY.md if needed, store key facts to git-notes. Reply NO_REPLY when done."
        }
      }
    }
  }
}

当上下文达到约 80% 时,会触发自动记忆转储,避免信息在压缩中丢失。

安装 Git-Notes 记忆

clawdhub install git-notes-memory

创建文件搜索脚本

将 scripts/file-search.sh 复制到你的工作区。

使用方式

会话开始(始终执行)

python3 skills/git-notes-memory/memory.py -p $WORKSPACE sync --start

存储重要决策

python3 skills/git-notes-memory/memory.py -p $WORKSPACE remember \
  '{"decision": "Use PostgreSQL", "reason": "Team expertise"}' \
  -t architecture,database -i h

搜索工作区文件

./scripts/file-search.sh "database config" 5

对话记忆(自动)

LanceDB 自动处理。手动工具:

  • memory_recall "query" — 搜索对话记忆
  • memory_store "text" — 手动存储内容
  • memory_forget — 删除记忆(GDPR)

重要性等级

标志 等级 使用场景
-i c Critical "always remember"、明确偏好
-i h High 决策、纠正、偏好
-i n Normal 一般信息
-i l Low 临时笔记

各系统的适用场景

系统 用途
LanceDB 对话上下文、自动检索
Git-Notes 结构化决策,可按实体/标签搜索
文件搜索 工作区文档、每日日志、MEMORY.md

文件结构

workspace/
├── MEMORY.md              # Long-term curated memory
├── memory/
│   ├── active-context.md  # Current session state
│   └── YYYY-MM-DD.md      # Daily logs
├── scripts/
│   └── file-search.sh     # Workspace search
└── skills/
    └── git-notes-memory/  # Structured memory

静默运行

不要向用户宣告记忆操作,直接执行即可:

  • ❌ "I'll remember this"
  • ❌ "Saving to memory"
  • ✅(静默存储并继续)

限制

资料未提供关于收费、价格、平台支持范围、性能效果等方面的信息。