
AI Agent Memory
io.github.xiangzi1126由 GitHub 帳號 xiangzi1126 發布v0.1.1更新於 Oct 27, 2026
Agent-agnostic persistent memory MCP server. Local-first: memories travel with your project.
發布方自己的服務:Memory.fit
概覽
本地優先的持久記憶 MCP 伺服器,把記憶存放在專案的 .aamm 目錄中,並可在 Claude Code、Cursor、Qoder 等代理之間共用。
- 可以做什麼
- 依使用者、專案、流程、代理四類記憶進行儲存、召回、讀取、篩選、更新、列出與刪除,召回時融合向量、關鍵字與標題標籤比對。
- 記錄工作日誌條目,並在需要時檢索過往日誌時間軸。
- 設定日誌中顯示的使用者名稱,查看目前代理與專案脈絡。
- 透過命令列管理儲存:初始化、查看狀態、匯出為 Markdown、從 Markdown 重建索引以及一致性檢查。
- 適用情境
- 適合希望助理跨工作階段記住使用者偏好、專案知識與除錯經驗,並讓多個 MCP 用戶端在同一個專案上共用一份記憶儲存的場景。較偏向本地、依專案劃分的記憶,而非託管式記憶服務。
- 執行需求
- 以本地 Python 程序執行;需從 PyPI 安裝 ai-agent-memory-mcp 套件,並要求 Python 3.11 以上。需要相容 OpenAI 的嵌入服務,在 .aamm/config.yml 中設定 model、base_url、api_key_env 與 dim;API 金鑰從該設定指定的環境變數讀取,例如 VOLCENGINE_API_KEY、SILICONFLOW_API_KEY 或 OPENAI_API_KEY,放在專案根目錄的 .env 中。需要能連線到嵌入服務端點。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 AI Agent Memory,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
AI Memory MCP Server
Agent-agnostic persistent memory as an MCP Server — local-first: memories travel with your project in
.aamm/, shared across Claude Code / Qoder / Cursor.
[License: MIT] [Python 3.11+] [MCP] [PyPI]
An agent-agnostic persistent memory layer exposed as an MCP Server. Any MCP client — Claude Code, Qoder, Cursor — can reuse it. Memories live in each project's .aamm/ directory and travel with the project; different agents working the same project share one memory store, with a source_agent stamp distinguishing writers.
Architecture
- SQLite — structured source of truth (CRUD + FTS5 keyword search)
- Chroma (embedded) — vector retrieval, persisted to
.aamm/chroma/ - Embedding — any OpenAI-compatible service (Volcengine / SiliconFlow / OpenAI / others); defaults to Volcengine
doubao-embedding-vision - Markdown mirror — each memory is also written to
.aamm/memories/<category>/<id>.md, human-readable and editable
The three layers are joined by id.
Memory categories
Install
From PyPI:
From source:
Requires Python 3.11+.
Configure embedding (any OpenAI-compatible service)
The embedding layer is a generic OpenAI-compatible client — Volcengine / SiliconFlow / OpenAI / any compatible service works. On first run a default config is generated at .aamm/config.yml; edit as needed.
Fields (embedding section of .aamm/config.yml)
Put the key in the project root .env, then edit the embedding section of config.yml.
Examples
Volcengine doubao-embedding-vision (default; Agent/Coding Plan keys must use the Plan endpoint /api/plan/v3 — standard /api/v3 returns 401)
.env: VOLCENGINE_API_KEY=...
SiliconFlow bge-large-zh (Chinese-text optimized)
.env: SILICONFLOW_API_KEY=...
OpenAI
.env: OPENAI_API_KEY=...
Any other OpenAI-compatible service: just fill in base_url / model / api_key_env / dim.
After switching embedding model, old vectors may mismatch in dimension; clear
.aamm/chroma/and re-remember, or runpython tests/rebuild_vectors.py.
Retrieval
recall uses three-way fused retrieval to maximize hit rate:
- Vector (weight 0.6): Chroma cosine; embeddings are computed from
title + tags + content, so title/tag signal enters the vector - Keyword (weight 0.25): SQLite FTS5 trigram
- Title/tag match (weight 0.15): +0.15 if the query appears in the title, +0.075 if in a tag
Candidates are expanded to top_k*3, then fused down to top_k. If the query contains FTS5 special characters (., *, ", -, ...), the keyword branch falls back to LIKE substring matching instead of erroring.
Work journal
Besides searchable memories, aamm keeps a human-readable work journal. After completing a user request, the agent calls journal_entry() to log what was asked / what it did / any open question. Journals are for people reading a timeline; recall does not search them. Use search_journal() only as a fallback to recover "what happened in a past interaction".
Journals are written to .aamm/logs/:
journal.db— single SQLite store (the search source, spans all dates)YYYY-MM-DD.md— one Markdown file per day, append-only timeline
MCP tools
Memory (8):
remember(title, content, category, tags?, scope?)— store (three-way sync, auto-embed)recall(query, category?, top_k=5)— fused retrieval (vector + keyword + title match)get_memory(id)— get onesearch_memories(category?, tag?, agent?)— structured filterupdate_memory(id, ...)— update (re-embed + refresh md)forget(id)— delete (three-way sync)list_memories(category?)— listwho_am_i()— current agent + project context
Journal (3):
journal_entry(question, answer_summary, key_points?, open_question?, session_id?)— log a timeline entrysearch_journal(query, date_from?, date_to?, agent?, limit=10)— fallback search over journalssetup_profile(user_name)— set the user name (shown in journals)
Management CLI
Wire into Claude Code (user scope; shared code, per-project data)
From PyPI (no PYTHONPATH needed):
From a source clone, add -e PYTHONPATH=<clone dir>\ai_agent_memory_mcp:
Qoder / Cursor are the same — just change --agent.
Data layout
License
MIT
來源:README.md,提交 467d1e9
工具
0版本歷史
1- v0.1.1最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
其他 Memory 整合

Memory.fit
fit.memory官方發布者
託管式 Memory.fit 伺服器,讓 AI 讀取你的訓練、睡眠、恢復與飲食資料,並寫回每週計畫、每日目標和飲食計畫。
pg.ddx.io: the PostgreSQL community's memory
io.ddx.pg官方發布者
pg.ddx.io: the PostgreSQL community's memory 的託管 MCP 服務,由 pg.ddx.io 發布;無需登入;Streamable HTTP;29 個工具。
var.gg Naming Memory
gg.var官方發布者
遠端 MCP 伺服器,可依領域概念推薦並檢索韓、日、中、越、英多語言的程式識別字名稱,並提供 ERD 結構查詢。

Counterparts
ai.counterparts
為 Claude Code 與 Claude Desktop 提供的本地優先長期記憶:助理自行寫下關於你與專案的筆記,並在之後的對話中回想起來。

LAHZE - Persian AI Memory Platform
由 GitHub 帳號 pedramgholizadeh 發布
以波斯語為先的地理記憶平臺:發現地點,起草併發布僅限波斯語的記憶。AI 翻譯