Skip to content

rohitg00/agentmemory

v0.9.23 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

agentmemory agents ai claude claudecode codex
+7 more
copilot cursor genai harness hermes memory openclaw

Affected surfaces

auth rbac

Summary

AI summary

Broad release touches Infrastructure, https://github.com/rohitg00/agentmemory/pull/698, https://github.com/rohitg00/agentmemory/issues/666, and https://github.com/rohitg00/agentmemory/pull/534.

Changes in this release

Feature Medium

Auto‑enables consolidation when any LLM provider API key or AGENTMEMORY_PROVIDER is set.

Auto‑enables consolidation when any LLM provider API key or AGENTMEMORY_PROVIDER is set.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Feature Medium

Adds separate `OPENAI_EMBEDDING_BASE_URL` and `OPENAI_EMBEDDING_API_KEY` for routing embeddings independently from LLM calls.

Adds separate `OPENAI_EMBEDDING_BASE_URL` and `OPENAI_EMBEDDING_API_KEY` for routing embeddings independently from LLM calls.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Feature Low

Adds GitHub Copilot CLI full first-class support with manifest, hooks, and MCP path.

Adds GitHub Copilot CLI full first-class support with manifest, hooks, and MCP path.

Source: llm_adapter@2026-05-29

Confidence: high

Feature Low

Adds five new MCP adapters: Warp, Cline, Continue, Zed, and Droid.

Adds five new MCP adapters: Warp, Cline, Continue, Zed, and Droid.

Source: llm_adapter@2026-05-29

Confidence: high

Feature Low

Adds `/agentmemory/graph/build` endpoint to backfill knowledge graph from observations.

Adds `/agentmemory/graph/build` endpoint to backfill knowledge graph from observations.

Source: llm_adapter@2026-05-29

Confidence: high

Feature Low

Adds `npx skills add` hint after successful `agentmemory connect <agent>`.

Adds `npx skills add` hint after successful `agentmemory connect <agent>`.

Source: llm_adapter@2026-05-29

Confidence: high

Feature Low

Adds 11 README translations (zh-CN, zh-TW, ja-JP, ko-KR, es-ES, pt-BR, fr-FR, de-DE, ru-RU, tr-TR, hi-IN) with language picker.

Adds 11 README translations (zh-CN, zh-TW, ja-JP, ko-KR, es-ES, pt-BR, fr-FR, de-DE, ru-RU, tr-TR, hi-IN) with language picker.

Source: llm_adapter@2026-05-29

Confidence: high

Performance Low

Makes nine telemetry hooks fire‑and‑forget to avoid blocking Claude Code's prompt boundary.

Makes nine telemetry hooks fire‑and‑forget to avoid blocking Claude Code's prompt boundary.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Bugfix Medium

Fixes graph extraction to fire automatically when a session ends.

Fixes graph extraction to fire automatically when a session ends.

Source: llm_adapter@2026-05-29

Confidence: high

Bugfix Medium

Fixes `agentmemory status` to correctly report Memories and Observations counts.

Fixes `agentmemory status` to correctly report Memories and Observations counts.

Source: llm_adapter@2026-05-29

Confidence: high

Bugfix Medium

Fixes hooks sending full filesystem path instead of repo basename as `project`.

Fixes hooks sending full filesystem path instead of repo basename as `project`.

Source: llm_adapter@2026-05-29

Confidence: high

Bugfix Medium

Fixes cross‑project memory leakage by scoping memories to their project.

Fixes cross‑project memory leakage by scoping memories to their project.

Source: llm_adapter@2026-05-29

Confidence: high

Bugfix Medium

Fixes slots HTTP triggers to return 503 instead of 500 when disabled.

Fixes slots HTTP triggers to return 503 instead of 500 when disabled.

Source: llm_adapter@2026-05-29

Confidence: high

Bugfix Low

Tolerates reordered XML attributes in graph parser.

Tolerates reordered XML attributes in graph parser.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Bugfix Low

Adds defensive null guards on `Memory.sessionIds` during import.

Adds defensive null guards on `Memory.sessionIds` during import.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Bugfix Low

Preserves vector index Buffer slice metadata during round‑trip encoding/decoding.

Preserves vector index Buffer slice metadata during round‑trip encoding/decoding.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Bugfix Low

Sorts Memories tab in viewer to show newest entries first.

Sorts Memories tab in viewer to show newest entries first.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Refactor Low

Changes `iii-config.yaml` defaults: sampling_ratio 0.1, logs_console_output false; reverses config precedence.

Changes `iii-config.yaml` defaults: sampling_ratio 0.1, logs_console_output false; reverses config precedence.

Source: granite4.1:30b@2026-05-29-audit

Confidence: low

Full changelog

0.9.23 — 2026-05-28

Bug-fix + integration wave. GitHub Copilot CLI joins the supported agent matrix with plugin + hooks + MCP coverage. Three silent DX bugs fixed end-to-end: graph extraction never fired on session end, agentmemory status reported zero memories, consolidation defaulted off even with an LLM provider configured. Five additional adapters and a clearer local-LLM story for Ollama / LM Studio users. agentmemory connect now points users at npx skills add for the native-skills install path (50+ agents).

Added

  • GitHub Copilot CLI (PR #534). Full first-class support: plugin/plugin.json manifest, hooks.copilot.json lifecycle hooks for all 11 Copilot events with camelCase payload normalization, agentmemory connect copilot-cli MCP path, first-run onboarding default-select via COPILOT_CLI / COPILOT_AGENT_SESSION_ID env detection, Windows-safe cmd.exe /d /s /c npx wrapper. Standalone MCP transport now speaks LSP-style Content-Length framed JSON-RPC alongside the existing newline-delimited form so Copilot's stdio init handshake works.
  • Five new MCP adapters (PR #677). Warp, Cline, Continue, Zed, and Droid. createJsonMcpAdapter extended with wrapperKey (Zed uses context_servers instead of mcpServers) and extraEntryFields (Droid requires type: "stdio"). ADAPTERS count: 11 → 17.
  • /agentmemory/graph/build endpoint (PR #698). Backfills the knowledge graph from existing compressed observations across every session in configurable batches. Wires up the viewer's "Build Graph" button that previously returned 404.
  • 11 README translations + language picker (PR #675). zh-CN, zh-TW, ja-JP, ko-KR, es-ES, pt-BR, fr-FR, de-DE, ru-RU, tr-TR, hi-IN.
  • npx skills add hint in connect output (PR #709). After a successful agentmemory connect <agent>, the CLI now prints the matching npx skills add rohitg00/agentmemory -y command so users get the native-skills install alongside MCP wiring. The skills CLI covers 50+ agents including the 5 added in PR #677. README "Other agents" section gains a dedicated subsection explaining the two-step pattern (connect writes MCP config, skills add installs the 8 SKILL.md files into the agent's native skill directory).

Changed

  • Consolidation auto-enables when an LLM provider is configured (PR #696, closes #612). CONSOLIDATION_ENABLED defaulted to false, so users with a working provider got compression + summarization but zero graph nodes / crystals / lessons. Now defaults true whenever any of ANTHROPIC_API_KEY / OPENAI_API_KEY / OPENROUTER_API_KEY / GEMINI_API_KEY / GOOGLE_API_KEY / MINIMAX_API_KEY / OPENAI_BASE_URL is set, or AGENTMEMORY_PROVIDER=agent-sdk. Explicit =false / AGENTMEMORY_PROVIDER=noop still opt out. OPENAI_API_KEY_FOR_LLM=false honored (key scoped to embeddings).
  • Fire-and-forget telemetry hooks (PR #688, closes #573). Nine telemetry-only hooks (notification, post-tool-failure, post-tool-use, prompt-submit, stop, session-end, subagent-start, subagent-stop, task-completed) switched to unawaited fetch(...).catch(() => {}) paired with setTimeout(() => process.exit(0), 500).unref() (1500ms for the multi-fetch stop + session-end hooks). No longer blocks Claude Code's next-prompt boundary on every assistant turn.
  • Observability defaults tamed (PR #686, closes #519). iii-config.yaml defaults: sampling_ratio: 0.1, logs_console_output: false. findIiiConfig() precedence reversed so AGENTMEMORY_III_CONFIG env > cwd > ~/.agentmemory/iii-config.yaml > bundled.

Fixed

  • Graph extraction never fires automatically (PR #698, closes #666). event::session::stopped listens on agentmemory.session.stopped but nothing in the codebase ever published that topic. api::session::end now directly calls sdk.triggerVoid("event::session::stopped", { sessionId }) (try/catch guarded so a fan-out error doesn't fail the HTTP response). Knowledge graphs now materialize automatically when sessions end.
  • agentmemory status shows Memories/Observations = 0 (PR #698, closes #666). CLI fetched /agentmemory/export for counts but that endpoint times out (>5s) on iii-engine's file-based KV under concurrent kv.list(). Switched to /memories?count=true (count-only, constant-time) + sum of sessions[].observationCount.
  • Hooks send full filesystem path as project instead of repo basename (PR #687, closes #474). Native sessions, replay-import, and memory_lesson_save all use repo basename — the path/basename mismatch silently filtered out the bulk of relevant lessons from auto-injected context. New resolveProject(cwd?) helper: AGENTMEMORY_PROJECT_NAME env > git rev-parse --show-toplevel basename > basename(cwd). Applied to 9 hooks.
  • Cross-project memory leakage (PR #662). Memories created in one project leaking into recall on another. Wildcard guard pattern (!project || !m.project || m.project === project) preserves backward-compat for legacy unscoped memories while scoping new ones strictly.
  • Graph parser tolerates reordered XML attributes (PR #685, closes #635). Order-dependent regex replaced with order-independent parseAttrs helper. Self-closing trailing-/ handling preserved.
  • Defensive null guards on Memory.sessionIds (PR #684). Older exports + hand-edited dumps can omit this field; now treated as empty array on read.
  • Vector index Buffer slice metadata round-trip (PR #683, closes #587, #584). byteOffset + byteLength preserved on Buffer.from and Float32Array construction so base64 round-trips don't corrupt vectors stored as slices.
  • Slots HTTP triggers return 503 not 500 (PR #682, closes #678). Feature-flag-disabled responses now use the documented 503 shape with enableHow + docsHref. .env propagation fixed (now reads via getEnvVar() not raw process.env).
  • agentmemory doctor points to correct iii install URL (PR #681).
  • Separate OPENAI_EMBEDDING_BASE_URL + OPENAI_EMBEDDING_API_KEY (PR #503). Lets users route embeddings and LLM calls to different OpenAI-compatible endpoints (e.g. cloud OpenAI for embeddings + local LM Studio for LLM, or vice versa).
  • Viewer Memories tab sorts newest first (PR #701, closes #674). Memories list rendered in KV-insertion order, hiding just-saved entries at the bottom of long lists. loadMemories() now sorts on createdAt desc (fallback updatedAt) before items reach state — matches the localeCompare pattern Sessions / Metrics tabs already use.

Docs

  • Local-LLM section in README (PR #697, closes #671). Dedicated "Local models (Ollama / LM Studio / vLLM)" subsection with copy-paste configs, model-pick table (qwen2.5-coder:7b, llama3.2:3b, mistral:7b-instruct, deepseek-r1:7b), and reasoning-model empty-content callout. Existing OpenAI-compatible support was buried in a one-line env comment.
  • Three pipeline layers, not three primitives (PR #690). Website + README copy: the three primitives are worker / function / trigger (iii). HOOKS / RECALL / CONSOLIDATE are pipeline layers. Section anchor renamed #primitives#stack to match the nav label.

Infrastructure

  • Hook scripts now bundle per-entry instead of sharing chunks, so plugin/scripts/_project-*.mjs hashed artifacts no longer churn the diff on every build.
  • AGENTS.md "Hook Scripts" section documents the two patterns (context-injecting vs telemetry-only) and the 500ms / 1500ms exit-delay rule for single vs multi-fetch hooks.
  • Test suite: 1271 → 1291 (+20 new tests covering project basename resolver, fire-and-forget wiring, consolidation default behavior, session-end → graph extraction, the graph-build endpoint, and the viewer memories sort).

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track rohitg00/agentmemory

Get notified when new releases ship.

Sign up free

About rohitg00/agentmemory

All releases →

Related context

Beta — feedback welcome: [email protected]