AI Agent长期记忆:Zettelkasten+渐进解锁开源人格系统

2026-06-01阅读 0热度 0
ai

问题:AI Agent 为何总是“前脚说完,后脚就忘”?

不少人在使用 OpenClaw、Claude Code 等 AI Agent 时栽过跟头:

打造 AI Agent 长期记忆:基于 Zettelkasten 与渐进解锁的开源人格系统实施方案

每次开启新会话,Agent 都像一张被清空的白纸。

  • Agent 对上周教过的流程毫无印象
  • 没有稳定人格,回复风格时冷时热
  • 会话结束即清空,每次交互都得从零开始

这就像一个只有短期记忆的助手——能力在线,但永远无法从历史交互中积累经验。

核心症结在哪里? 当前的 AI Agent 缺少一套可落地的“记忆系统”。它们能理解连续对话,但无法把上下文固化为可复用的“经验”进行持久化。这不仅是小缺陷,而是制约 Agent 从“实验品”跃升为“生产力核心”的根本瓶颈。

解决方案:open-upsp

与其等待行业标准,不如动手造轮子。核心思路借鉴了两个成熟领域的实践经验:

  1. Zettelkasten(卢曼卡片盒) — 知识管理中的原子化笔记与双向链接机制。
  2. RPG 渐进解锁 — 游戏设计中控制角色能力释放节奏的成长模型。

基于这两大理念,我们构建了一个开源人格系统。它并非简单的“记忆插件”,而是一套可迭代的 Agent 人格框架。

整体架构

┌─────────────────────────────────────────────┐│ OpenClaw Agent Session│├─────────────────────────────────────────────┤│┌──────────────┐┌──────────────────┐│││ Core Skill ││ Evolvable Skill││││ (不可变)││ (渐进解锁)││││││││││ • 固定身份配置││ • 成长参数 ││││ • 行为约束 ││ • 自定义扩展 ││││ • 异常兜底 ││ • 深度规则 │││└──────────────┘└──────────────────┘││ ││││ └──────────┬───────────┘││▼││ ┌──────────────────┐││ │ZK Knowledge│││ │ Graph│││ ││││ │ • 原子笔记│││ │ • 双向链接│││ │ • 夜间蒸馏│││ └──────────────────┘│└─────────────────────────────────────────────┘

核心能力

1. 人格上下文持续加载

告别从零开始的空白状态。每次对话启动时,Agent 自动加载完整的身份档案,明确自身定位、交互对象以及历史进度。

identity:name: "老徐"archetype: "冷静理性的技术导师"state:round: 15# 累计完成 15 轮对话workhoodIndex: 0.45# 信任度 45%valence: 12# 效价(当前情感倾向)memory:stm: [...] # 短期记忆(当前会话)ltm: [...] # 长期记忆(历史归档)

也就是说,Agent 开口的第一句话就已经识别出你是谁、你们聊到了哪里。这是整个“记忆”功能的起点,也是所有进阶能力的基础支撑。

2. Zettelkasten 知识图谱

知识管理并非简单的向量库检索,而是真正意义上的知识图谱:每则笔记都是一个独立的知识元,通过双向链接编织成网。当 Agent 遇到复杂问题时,它不再在海量碎片中“猜”,而是在结构化的网络中“寻”。

[笔记 A: "React useEffect 闭包陷阱"]--extends-->[笔记 B: "useRef 解决 stale closure"]--related-->[笔记 C: "React 18 自动批处理"]

核心操作决定了这个知识管理引擎的能力边界:

  • zk_create_note — 创建原子笔记
  • zk_search_notes — 语义检索
  • zk_create_link — 建立双向链接
  • zk_distill_memory — 夜间自动蒸馏归档

3. 渐进解锁

方案中最具巧思的设计——Agent 人格并非一成不变,而是随着交互逐步“成长”。这好比 RPG 游戏中的角色,从新手村逐步升级为满级大佬。

unlockCondition:round: 10# 对话满 10 轮workhoodIndex: 0.3 # 信任度达到 30%

解锁前(基础人格):安全保守,不主动提议,只回答明确问题,情感表达克制。

解锁后(进化人格):主动发现知识关联,会说出“这个和你之前问的 XX 有关”;情感表达更丰富,甚至带点幽默感;可以执行更复杂的 session-end 工作流。

设计逻辑很清晰:在不够了解用户之前,宁可靠保守兜底;随着互信加深,逐步释放高阶能力。既保证了安全底线,又提供了成长的趣味性。

4. Session-End 自动工作流

对话结束不代表工作结束。Agent 会自动执行“记忆固化”流程:

Distill(蒸馏) → Update(更新状态) → Sync(同步到 ZK)

无需手动保存,Agent 能自主判断哪些信息值得长期记忆,哪些只是临时上下文。这是系统保持“低成本、高效率”运转的关键。

技术实现

项目结构

open-upsp/├── skill/│ ├── SKILL.md# OpenClaw Skill 入口│ ├── core/ # ? 不可变核心│ │ ├── RULES.md# 8 条行为规则│ │ └── PROMPT.md # 动态系统提示词│ └── evolvable/# ? 渐进解锁模块│ ├── PARAMS.yaml # 运行时参数│ ├── EVOLUTION.md# 进化规则│ └── EXTENSIONS.md # 用户自定义扩展├── src/│ ├── context/builder.ts# 上下文组装器│ ├── skill/evolution-loader.ts# 进化参数加载│ └── cli/# 命令行工具└── tests/# 207 个测试

关键技术点

双 Skill 架构:核心不可变规则与渐进解锁规则分离,职责清晰。

// Core: 不可变安全规则export const coreRules = ["Session start: inject persona context","Auto-record valuable info (weight 1-5)","Session-end: distill → update → sync","Identity protection: reject one-shot overrides",];// Evolvable: 渐进解锁export function isUnlocked(persona: Persona): boolean {return persona.state.round >= 10 && persona.state.workhoodIndex >= 0.3;}

上下文组装:身份、状态、记忆、关系、知识、进化——所有维度被整合为一个结构化上下文,交付 Agent。

build(persona: Persona): string {const parts = [this.buildIdentity(persona), // 我是谁this.buildState(persona),// 当前状态this.buildMemory(persona), // 记忆this.buildRelations(persona),// 关系网络this.buildKnowledge(query),// 知识检索this.buildEvolution(persona),// 进化模块];return parts.join("nn---nn");}

测试覆盖

Test Files23 passed (23) Tests207 passed (207)Coverage94.39%

覆盖 6 个真实场景模拟测试,涵盖首次对话建立身份、技术讨论记录知识、情感聊天状态变化、进化解锁验证、身份攻击保护、多实体关系管理——几乎你日常会用到的所有场景。

  • 首次对话建立身份
  • 技术讨论记录知识
  • 情感聊天状态变化
  • 进化解锁验证
  • 身份攻击保护
  • 多实体关系管理

安装使用

前置要求

  • Node.js >= 22
  • OpenClaw >= 2026.4.24

安装

npm install -g open-upsp

npm postinstall 会自动处理:

  1. 复制 skill 到 ~/.openclaw/skills/open-upsp/
  2. 注册到 openclaw.json
  3. 安装 Zettelkasten 插件

创建位格

open-upsp init

查看状态

open-upsp status

手动注入上下文

open-upsp context --query "React 性能优化"

实际效果

部署后,OpenClaw Agent 的行为变化非常直观:

Before(无 open-upsp):每次会话均从零开始,陌生人模式。

After(有 open-upsp,Round 15,已解锁):Agent 像合作多年的老搭档,记得你的习惯、项目及过往疑问。

开源与贡献

项目已在 GitHub 开源:github.com/cx2002302-l…

License: MIT

关于“AI Agent 长期记忆”这一命题,还有很多方向和可能性值得探索。无论是通过 Issue 提出疑问,还是提交 Pull Request 贡献代码,都欢迎你的参与。

免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策