Browse / General-purpose / agent-memory-project

agent-memory-project

xuezhiguo1007

业界内大模型记忆落地方式,hermess三层记忆落地,langmem记忆落地

Open xuezhiguo1007/agent-memory-project → Does not match the four rules.

Does not say

no agent config and no instruction file at the root.

In its own words

README.mdxuezhiguo1007/agent-memory-project

这个项目现在按 Hermes 官方记忆框架做本地化 MVP,不再使用通用 memories 大仓模型,而是拆成三层:

  • Persistent Memory
  • Skills
  • Session Search

同时新增了基于 LangChain 风格的第四层记忆管理:

实现目标不是完整复刻 Hermes,而是在当前仓库内验证三层存储、检索和接口抽象,并提供 LangChain 风格的记忆管理能力。

三层设计

Layer 1: Persistent Memory
  • 用两个小文件模拟 Hermes 的 MEMORY.md 和 USER.md
  • 存储位置:generated_memories/hermes/memories/
  • MEMORY.md 适合放环境事实、项目约定、长期经验
  • USER.md 适合放用户偏好、沟通风格、长期要求
  • 启动时可渲染为 system prompt snapshot
  • 严格字符上限:
  • MEMORY.md: 2200 chars
  • USER.md: 1375 chars
Layer 2: Skills
  • 用 generated_memories/hermes/skills/ /SKILL.md 模拟程序性记忆
  • 每个 skill 同时落一份 metadata.json
  • 适合沉淀可复用流程、检查清单、操作 SOP
  • 支持按 query 做简单 skill routing
Layer 3: Session Search
  • 用 generated_memories/hermes/state.db 模拟 Hermes 的 SQLite/FTS5 会话搜索层
  • 每条 session event 进 SQLite,并同步到 FTS5 索引
  • 需要历史上下文时,按 session_id + query 检索片段
  • 当前摘要是本地拼接版,不接 LLM
Layer 4: Langmem Memory Service (新增)
  • 用 PostgreSQL 存储基于 LangChain 风格的记忆数据
  • 消息管理:langmem_messages 表存储会话消息,支持全文搜索(TSVECTOR)
  • 实体追踪:langmem_entities 表自动提取和追踪关键实体(人、项目、文件、工具等)
  • 记忆压缩:当消息数量超过阈值时自动压缩,保留摘要
  • 记忆快照:生成包含消息、实体和摘要的完整快照
  • 异步操作:使用 asyncpg 实现高性能异步数据库操作
  • PostgreSQL 特性:
  • JSONB 存储 metadata
  • 全文搜索(FTS)
  • 自动触发器更新搜索向量
  • 连接池管理
  • 配置文件:config/langmem_config.json 可自定义 PostgreSQL 连接、压缩阈值等

Quoting 34% of the README. Read the rest on GitHub ↗

Read from the repository's git tree on 2026-08-17.