SuperAPI AI 工具集

agent-memory-system

智能体与模型

查看项目

更新于 10-15 10:53

技能介绍

用途

agent-memory-system 提供持久化记忆架构,使 AI 智能体能够跨会话记住信息、从经验中学习并构建长期知识。其目标是让智能体实现真正的持续改进。该技能采用基于能力的模式,包含四种记忆类型,每种类型拥有独立操作。

主要能力

记忆类型一:情景记忆(Episodic Memory)

用于记住过去的具体事件、决策及其结果。当需要回忆“上次我们尝试 X 时发生了什么”时使用。存储方式为向量数据库(相似度搜索)或带时间戳的 JSON 文件。结构包含 episode_id、timestamp、event_type、description、context(目标、方法、决策、结果、经验教训)、tags 以及用于相似度搜索的 embedding。

操作包括:存储情景、召回相似情景(向量相似度)、按标签查询、从结果中学习。示例查询命令:

# Find similar past implementations
recall-episode --similar "implementing OAuth" --top 5

# Find all authentication-related episodes
recall-episode --tag authentication

# Learn from failures
recall-episode --filter "quality_score < 80" --analyze

收益:避免重复犯错、应用成功模式、提高估算准确性、加快决策。存储位置:简单方案为 .memory/episodic/YYYY-MM-DD/ 下的 JSON 文件;高级方案为向量数据库。

记忆类型二:程序记忆(Procedural Memory)

用于记录学到的技能、成功模式与自动化规则。当需要回答“我们通常怎么做 X”或“Y 的标准方法是什么”时使用。存储为结构化文件或代码模式。结构包含 skill_id、skill_name、learned_from、pattern(方法、步骤、陷阱、成功标准)、usage_count、success_rate、avg_quality_score、avg_time_hours、last_used。

操作包括:提取模式、存储技能、应用技能、改进技能。示例查询命令:

# Get learned pattern for authentication
get-skill "authentication implementation"

# Find most successful patterns
list-skills --sort-by success_rate --top 10

# Update skill with new learning
update-skill "authentication" --episode ep_20250125_1400

收益:将成功模式固化、随时间改进模式、跨团队共享知识、加快实现速度。存储位置:.memory/procedural/skills/。

记忆类型三:语义记忆(Semantic Memory)

用于存储事实、关系与概念知识图谱。当需要回答“X 与 Y 之间是什么关系”或“关于 Z 我们知道什么”时使用。存储为图数据库(Neo4j)或带关系的 JSON。结构包含 concepts(id、type、description、properties、relationships)与 facts(subject、predicate、object、confidence、source)。

操作包括:存储事实、查询知识、查找关系、推断知识。示例查询命令:

# What do we know about OAuth?
query-knowledge "oauth"

# What are alternatives to password auth?
query-knowledge "password_auth" --relationship alternative_to

# Find all authentication methods
query-knowledge --type authentication_method

收益:构建机构知识、理解概念关系、做出知情决策、避免知识流失。存储位置:简单方案为 .memory/semantic/ 下的 JSON 文件;高级方案为 Neo4j 图数据库。

记忆类型四:短期记忆(Short-Term Memory)

用于保存当前活跃的工作上下文与会话状态。当需要在当前对话中记住信息时使用。存储于 RAM 或 Redis(快速访问)。结构包含 session_id、started_at、current_task、context(已读文件、已做决策、后续步骤)、temporary_data。

操作包括:设置上下文、获取上下文、更新上下文、清除上下文。收益:快速访问当前状态、避免污染上下文窗口、高效会话管理。存储位置:.memory/short-term/current-session.json。

使用方式

核心操作

  1. 存储记忆:将信息保存到合适的记忆类型,输出为持久化、已索引、带时间戳的记忆。
  2. 召回记忆:为当前任务检索相关记忆,输出按相关性/新近度排序的记忆。
  3. 从经验学习:分析情景、提取模式并更新程序记忆。
  4. 个性化:追踪用户偏好与使用模式,应用个性化推荐,减少重复提问。

跨会话集成

通过 SessionStart 钩子在会话开始时加载记忆(读取上次会话的短期记忆、最近 7 天的情景记忆、已学技能数量),通过 SessionEnd 钩子在会话结束时保存记忆(将当前会话复制到情景记忆目录)。示例脚本:

#!/bin/bash
# .claude/hooks/load-memory.sh (SessionStart)

echo "📚 Loading agent memory..."

# Load short-term memory from last session
if [ -f ".memory/short-term/last-session.json" ]; then
  echo "  └─ Previous session context available"
fi

# Load recent episodic memories (last 7 days)
RECENT_EPISODES=$(find .memory/episodic/ -name "*.json" -mtime -7 | wc -l)
echo "  └─ Recent episodes: $RECENT_EPISODES"

# Load active skills
LEARNED_SKILLS=$(ls .memory/procedural/skills/ | wc -l)
echo "  └─ Learned skills: $LEARNED_SKILLS"

echo "✅ Memory loaded"
#!/bin/bash
# .claude/hooks/save-memory.sh (SessionEnd)

echo "💾 Saving agent memory..."

# Save current session to episodic memory
if [ -f ".memory/short-term/current-session.json" ]; then
  TIMESTAMP=$(date +%Y%m%d_%H%M%S)
  cp .memory/short-term/current-session.json \
     .memory/episodic/$(date +%Y-%m-%d)/session_$TIMESTAMP.json

  echo "  └─ Episode saved"
fi

echo "✅ Memory saved"

记忆架构

基于文件的简单方案目录结构:

.memory/
├── episodic/              # Past events
│   ├── 2025-01-15/
│   │   ├── session_153000.json
│   │   └── decision_153045.json
│   └── 2025-01-16/
│       └── session_090000.json
├── procedural/            # Learned skills
│   └── skills/
│       ├── authentication_impl.json
│       ├── testing_pattern.json
│       └── verification_approach.json
├── semantic/              # Knowledge graph
│   ├── concepts.json
│   └── relationships.json
└── short-term/            # Active session
    ├── current-session.json
    └── last-session.json (backup)

基于文件的优点:无需数据库、可版本控制、人类可读、易于备份。局限:无语义搜索、需手动索引、大数据集较慢。

基于数据库的高级方案:情景记忆可用 Pinecone(托管、快速、昂贵)、Weaviate(自托管、灵活)、Chroma(轻量、适合原型);语义记忆可用 Neo4j(行业标准)、AgensGraph(基于 PostgreSQL)、NetworkX(Python 库);短期记忆可用 Redis(快速、临时)、Memcached(简单缓存)。优点:语义搜索、大规模快速查询、高级能力。局限:基础设施复杂、成本、部署开销。

与多 AI 技能集成

可与 multi-ai-implementation 集成:实现前召回相似情景与已学模式,实现后将情景存入记忆并提取更新模式。可与 multi-ai-planning 集成:规划前召回相似计划并查看历史质量,规划后保存计划到记忆。可与 multi-ai-verification 集成:验证前召回此类代码的常见问题。

适用场景

  • 构建能从经验中学习的智能体
  • 跨多个会话保留上下文
  • 实现个性化(记住用户偏好)
  • 创建随时间改进的自适应系统
  • 长期项目(记住数周前做出的决策)
  • 技能改进追踪(哪些有效、哪些无效)

前提条件与限制

必需:文件系统访问(用于基于文件的记忆)、JSON 支持(用于结构化记忆存储)。

可选:向量数据库(Pinecone、Weaviate、Chroma)用于情景记忆;图数据库(Neo4j)用于语义记忆;Redis 用于快速短期记忆。

使用前需理解各记忆类型的适用时机,以及基于文件与基于数据库方案之间的权衡。基于文件的方案不支持语义搜索且大数据集下较慢;基于数据库的方案存在基础设施复杂度、成本与部署开销。

暂未提供的信息

关于该技能的具体安装命令、收费与价格、平台支持范围、实际效果数据等,资料中暂未提供。