bash
git clone https://github.com/exp007/agent-long-term-memory.git ~/.codex/skills/agent-memory
Three-tier persistent memory shared at ~/.codex/agent_memory/ across all projects.
三层持久记忆,数据存在 ~/.codex/agent_memory/,所有项目共享。
python
from agent_memory import get_memory
mem = get_memory()
mem.remember("name", "Alice")
mem.recall("name") # -> "Alice"
mem.recall("favorite color") # -> None (not yet stored)
MethodSignatureDescriptionremember``(key, value, evidence="", confidence=1.0)Store a structured fact · 存储结构化事实remember``(content, tags=None, ...)Store a fact in v1 compat moderecall``(key_or_query, limit=10, tags=None)Lookup by key or search by content · 按 key 精确查或按内容搜recall_card``(key)Get the full EntityCard · 获取完整卡片get_profile``()Return all entity cards · 获取全部画像search_entities``(keyword)Fuzzy search across keys and values · 模糊搜索forget_entity``(key)Delete an entity card · 删除clean_stale``(threshold=0.3)Remove low-confidence cards · 清理低置信度entity_countpropertyNumber of entity cards · 卡片数量
MethodSignatureDescriptionarchive``(content, summary="")Store a conversation chunk · 存储对话片段recollect``(query, n_results=5)Semantic search · 语义检索episodic_countpropertyNumber of stored episodes · 片段数量
MethodSignatureDescriptionadd_turn``(user_text, assistant_text)Record a turn · 记录一轮对话get_recent``(n=None)Get recent messages · 获取最近消息clear_short_term``()Clear buffer · 清空缓冲区
MethodSignatureDescriptionbuild_context``(user_query="", episodic_top_k=3)Full MemoryContext · 完整上下文build_system_extension``(user_query="", episodic_top_k=3)Prompt injection string · 系统提示扩展
MethodSignatureDescriptionauto_remember``(conversation_text)Extract entities from text · 从对话中抽取实体。有 OpenAI key 用 LLM,无则用正则兜底。
add_fact, get_fact, get_facts, list_facts, forget, supersede, forget_stale, learn, get_lessons, apply_lesson, track_entity, get_entity, update_entity, list_entities, link_fact_to_entity, stats, export_json, close
text
session start: mem = get_memory(); inject mem.get_profile() into system prompt
every user message: mem.add_turn(user_msg, assistant_msg)
significant facts: mem.remember(key, value, evidence)
mem.auto_remember(conversation_text) # auto-extract · 自动抽取
conversation end: mem.archive(full_conversation, summary)
periodic cleanup: mem.clean_stale(0.3); mem.forget_stale(30)
shutdown: mem.close()
text
pip install chromadb>=0.4.0 openai>=1.0.0
OpenAI key is optional — if unset, entity extraction falls back to regex patterns. OpenAI key 可选——不配也能用正则兜底。