OpenMem

io.github.bcmyguest由 GitHub 帳號 bcmyguest 發布v0.6.3更新於 Oct 29, 2026

Memory interface for coding agents — stable memory_* tools over Hindsight, mem0, or Cognee.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

OpenMem 為編碼代理提供持久記憶層,透過穩定的 memory_* 工具存取可切換的後端(Hindsight、mem0 或 Cognee)。

可以做什麼
  • 在啟用的後端中保留、回想、搜尋與反思記憶
  • 建立與管理記憶頁面,並匯出、匯入可攜式記憶
  • 將 Git 儲存庫、Obsidian 儲存庫、筆記、論文、書籤與訂閱來源索引為記憶
  • 透過同一組工具查看後端與索引狀態
  • 安裝工作階段鉤子,讓代理在工作階段開始時回想、結束時保留
適用情境
適合希望 Claude Code、Codex、Cursor、OpenCode 等編碼代理跨工作階段保留記憶,並能直接查詢自己的文件與程式碼儲存庫、不必每次重新閱讀的情境。
執行需求
透過 npx 以 stdio 在本機執行,需先執行安裝精靈。需要 Docker Compose v2、Node 24 或更新版本,以及預設 Hindsight 後端所需的 LLM 路由;必須有一個正在運作的後端。環境變數 MEMORY_PROVIDER 選擇後端,PM_STACK_ROOT 指定堆疊目錄。
安裝前請注意
精靈會寫入設定並啟動 Docker Compose 服務,install-coding-agent 會修改編碼代理的設定。切換後端本身不會移轉資料,需先匯出或重新索引。此儲存庫中的上下文管理功能已棄用並移至其他專案。LLM 路由與後端服務可能產生模型呼叫費用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 OpenMem,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

OpenMem

[npm version] [License] [openmem-mcp] [GitHub]

[openmem-mcp]

[!CAUTION] Context management is leaving OpenMem. Smart compaction, the LiteLLM context proxy, and the OpenCode trim plugin in this repo are deprecated here and moving to Smarter Compact (docs, npm install -g smarter-compact). Use OpenMem for memory (providers, indexer, memory_* MCP). Existing OpenMem stacks can still enable the compose context-proxy profile; new context work belongs in Smarter Compact.

OpenMem. Pluggable memory providers (Hindsight, mem0, Cognee) and one setup wizard for coding-agent memory — retain, recall, and index your sources.

A. Memory: your sources become memory any agent can query.

[A, memory: sources (Git repos, Obsidian vaults, notes, papers, bookmarks, feeds), OpenMem indexer, one active provider (Hindsight default, mem0, Cognee), OpenMem MCP tools, coding agents with session hooks]

B. Context management (deprecated in OpenMem — use Smarter Compact instead): long sessions stay under the limit; nothing is summarized away.

[B, context management: coding agent, context proxy trimming at 125k tokens (Haiku 95k) with no LLM call, model API, SQLite session store read back with smart_compact_search and smart_compact_sql; OpenCode 2 uses a native plugin]

Benchmarks (context — deprecated here): In seed-matched ContextBench log tasks on Haiku 5.5, smart compaction scored 0.469 higher than keep-everything (95% bootstrap interval 0.339–0.578; eight pairs). Methods and charts still live in this repo (redirect · evidence plan); ongoing product docs and install are on Smarter Compact.

[ContextBench log-triage on Haiku 5.5: OpenMem scores 1.00 at L12800 overall vs 0.35 for native and keep-everything; lookup and count question panels]

Docs: bcmyguest.github.io/openmem/

MCP: npx -y -p @bcmyguest/openmem openmem-mcp (after the wizard — it needs a running provider)

Start here: Concepts · Quickstart · Compatibility · Development (clone, tests, prek)

Quickstart

StepCommand
1. Wizardnpx @bcmyguest/openmem setup
2. Checknpx @bcmyguest/openmem doctor
3. Coding agentsnpx @bcmyguest/openmem install-coding-agent --yes

From a git clone: Development guide (npm install, npm run setup, tests, prek).

Needs (wizard): Docker Compose v2, Node ≥ 24, and an LLM route for Hindsight — see Quickstart.

Later: npx @bcmyguest/openmem up / down / switch <provider> --yes / doctor.

Wizard dry-run (what first setup plans — no writes):

[Terminal recording of the setup wizard dry run: preflight checks, memory provider, model backend, secrets, sources and stack steps, each planned write printed as a [dry-run] line]

Full guide: Quickstart · Concepts · Architecture

Architecture

The two diagrams at the top show memory (A) and context management (B; deprecated in OpenMem, see Smarter Compact).

Same diagrams as Mermaid
mermaid
flowchart LR  S["<b>Sources</b><br/>Git repos: docs, code outlines<br/>Obsidian vaults · notes · papers · bookmarks<br/>RSS · OpenAlex feeds"] -->|index| I["<b>OpenMem indexer</b><br/>polls repos, watches folders"]  I -->|retain| P[("<b>Memory provider</b><br/>one active, swappable<br/>Hindsight (default) · mem0 · Cognee · …")]  P <--> M["<b>OpenMem MCP</b><br/>memory_recall · memory_add<br/>memory_search · memory_reflect<br/>memory_pages_* + export/import, status…"]  M <-->|tools| A["<b>Coding agents</b><br/>Claude Code · Codex · Cursor · OpenCode"]  A -.->|"session hooks: recall at start · retain at stop"| M  classDef om fill:#e8eaf9,stroke:#4651a6,color:#1b1d2a  class I,M om
mermaid
flowchart LR  A["<b>Coding agent</b><br/>Claude Code · Codex · OpenCode 1"] -->|requests| X["<b>Context proxy</b><br/>LiteLLM pre-call hook<br/>trims at 125k tokens (Haiku 95k) · no LLM call"]  X -->|trimmed request| API["<b>Model API</b><br/>Anthropic · ChatGPT (Codex)"]  X -->|every turn| S[("<b>Session store</b><br/>SQLite · every turn, verbatim")]  S -->|"MCP: smart_compact_search · smart_compact_sql"| A  O["<b>OpenCode 2</b><br/>native plugin, no proxy"] -.->|same store| S  classDef om fill:#e8eaf9,stroke:#4651a6,color:#1b1d2a  class X,S om

Native compaction replaces history with an LLM summary, so exact values can be lost; smart compaction keeps every turn verbatim and searchable. Context trimming in OpenMem is deprecated — use Smarter Compact (smarter-compact enable). Legacy stack path: context proxy redirect. See architecture for memory runtime paths and provider-specific behavior.

Providers and portability

  • Providers — Provider status lists every provider and its support level from the manifests. Contributor details: adding a provider.
  • MCP — unified memory_* plus optional native/NotebookLM servers: MCP setup.
  • Context management (deprecated in OpenMem) — moved to Smarter Compact; OpenMem page is a redirect.
  • Portable memory — memory_export / memory_import speak PMM: Portable memory.
  • Switch — npx @bcmyguest/openmem switch <provider> does not migrate data by itself; export/import (or re-index) moves content.

Compose runs the shared indexer and the services required by the selected provider. Hindsight uses litellm and hindsight (127.0.0.1:8888); mem0 and Cognee use their own APIs and do not include LiteLLM by default. LiteLLM can also be added for memory_reflect synthesis on mem0/Cognee, or to host the optional context proxy's pre-call hook. See Architecture for runtime paths.

Inspiration and related

OpenMem is not affiliated with these projects; they shape the problem or the pattern.

OpenFeatureInspiration for a vendor-agnostic interface + pluggable providers (there: feature flags; here: coding-agent memory).
mise / asdfOne CLI over many backends; declarative config and tasks without replacing each tool’s own settings.
LiteLLMModel proxy used on Hindsight stacks; its pre-call hook hosts the context proxy.
Hindsight coding agentsReference implementation for knowledge pages, initiative capture and ingest status; OpenMem's hooks replace it in openmem mode.
MainplaneInspiration for smart compaction: continue in a fresh context with a pointer to the saved transcript and retrieve as you go, instead of an LLM summary.
Letta / MemGPTInspiration for smart compaction: evicted turns kept verbatim in searchable recall storage the agent pages back with tools, and file-style search over the transcript (74.0% on LoCoMo). OpenMem does this in a proxy and an MCP server, so no Letta server is needed.
rtkCompresses shell command output before the agent sees it; install-coding-agent runs rtk init when it is installed. Inspired the context proxy's compression of large tool results (reimplemented, not bundled).
opencode-clmOpenCode plugin for Context Language Models: the model edits a file mirror of its own context. Same goal as smart compaction, with the model doing the trimming (comparison).
MeridianBridges a Claude subscription to an Anthropic-compatible API; optional Hindsight model backend (guide).
OpenCode / Claude Code hooks / Codex hooksThe agent hook and plugin APIs OpenMem translates between (compatibility).

Research notes and benchmark results for the context proxy: Context research.

More setup analogues: Pluggable memory providers.

Formerly personal-memory. Use the openmem CLI and MCP server name; installers drop the old personal-memory MCP entry.

References

Papers and preprints cited in our context-management work (full list):

ReferenceLink
MemGPT (Packer et al., 2023)arXiv:2310.08560
LoCoMo (An et al., 2024)arXiv:2402.17753
LongMemEval (Wu et al., 2024)arXiv:2410.10813
MemoryAgentBench (2025)arXiv:2507.05257
The Complexity Trap (Lindenbauer et al., 2025)arXiv:2508.21433
Context Language Models / ContextBench (Shao et al., 2025)arXiv:2609.37725
Compact-Bench (2026)arXiv:2610.31710

Reports and blogs (Context Rot, Letta LoCoMo, Anthropic context engineering): references.md.

License

Apache License 2.0 — see LICENSE (Copyright 2026 B Guest).

Contributing

Contributions are welcome. See CONTRIBUTING.md and the development guide for tests and CI.

來源:README.md,提交 ad8f5d3

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.6.3最新Oct 29, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分