Stability + ecosystem wave. Three install-broken bugs (npm install ERESOLVE, non-OpenAI base URLs, broken Claude bridge path) closed. Six runtime bugs from active users fixed end-to-end. Three new agent integrations (Qwen Code, Antigravity, Kiro). New AGENT_ID scope for multi-agent setups. Port mapping documented.
Fixed
-
npm installERESOLVE on fresh install (PR #649, closes #631).@anthropic-ai/sdkbumped from^0.39.0to^0.93.0soclaude-agent-sdk's peer is satisfied. Verified clean install with only the publisheddependenciesblock. -
Non-OpenAI base URLs silent-404 (PR #649, closes #646, #628).
buildChatUrl+buildEmbeddingUrlno longer blindly prepend/v1/. DeepSeek, SiliconFlow, Zhipu (/api/paas/v4), vLLM, LM Studio, Ollama all resolve correctly. -
CLAUDE_MEMORY_BRIDGEwrites to a path Claude Code reads (PR #649, closes #625). Slug now preserves the leading-on POSIX absolute paths and drops the spurious/memory/subdir, matching~/.claude/projects/<slug>/MEMORY.md. -
OpenAI provider reads
reasoning_contentfor thinking models (PR #648, closes #627). DeepSeek V4 / Qwen3 / GLM / Kimi returnmessage.reasoning_content. Previously onlymessage.reasoningwas checked — compress silently failed every call and tripped the circuit breaker. -
agentmemory stopreaps the worker process (PR #648, closes #640, #474). Worker pid is written to~/.agentmemory/worker.pidon boot;stopsignals both engine + worker. -
OpenCode plugin implicit-creates the session on first observation (PR #648, closes #638).
mem::observecreates the session row when one doesn't exist. No more orphan observations orSession not found for summarize. -
OpenCode plugin zero-config auto-context injection (PR #648, closes #431).
POST /session/startcontext is cached per-session; the existingexperimental.chat.system.transformhook reads from the cache. -
Viewer graph settles on 1000+ node graphs (PR #648, closes #563). Tick-decayed damping, per-node velocity cap, raf park on quiescence. Mousedown / wheel / zoom / recenter re-wake the parked loop.
-
/memories+/exportpaginate (PR #648, closes #544). New?count=trueand?limit=N&offset=Mon/memories./exportforwards?maxSessions+?offset. Stops large corpora (8K+ memories) from timing out at the iii-engine invocation boundary. -
Claude Code drops the MCP server silently (PR #650, closes #510).
plugin/.mcp.jsonenv block uses${VAR:-default}form. Unset required vars no longer fail config parse. -
Full 51-tool MCP surface by default (PR #650, closes #553).
getVisibleTools()default flipped fromcore(8) toall(51) to match what every plugin manifest advertises.AGENTMEMORY_TOOLS=corestill gives the lean set. -
Connect adapters write
${VAR:-default}env block (PR #650).agentmemory connectfor Claude Code / Cursor / Gemini CLI / Windsurf writes the same default form. -
Hermes
memory statusno longer reports the plugin as Missing (PR #643, closes #520). Hermes plugin seedsAGENTMEMORY_URLtohttp://localhost:3111at import. Works for systemd-managed agentmemory where the env file is loaded viaEnvironmentFile=and never reaches the interactive shell. -
Deleted memories cleared from BM25 + vector indices (PR #636 by @abhinav-m22, closes #632).
SearchIndex.remove()added and called from every delete path. Snapshot flushed synchronously so a SIGKILL between mutation + debounce can't resurrect deleted entries. -
PostToolUse hook reads
tool_response, falls back totool_output(PR #561 by @faraz152, closes #539). Claude Code's PostToolUse payload usestool_response. Now readstool_response ?? tool_outputso legacy integrations keep working. -
iii-sdk pinned to exact
0.11.2(PR #567, closes #555).iii-sdk@0.11.6introduced a routing regression where every/agentmemory/*route returned 404. Pin removes the caret. -
OpenAI provider sends explicit
stream: false(PR #526 by @Ptah-CT). Some OpenAI-compatible proxies default totext/event-streamwhenstreamis absent. -
Viewer search uses NFKC normalisation for CJK / fullwidth input (PR #542 by @kaushalrog).
-
Viewer splash shows actual bound viewer port (PR #560 by @Tanmay-008, closes #521).
/agentmemory/liveznow returnsviewerPort+viewerSkipped. -
Viewer tab bar height stable across tab switches (PR #325 by @hungtd119, closes #324).
-
Graph parser accepts self-closing
<entity .../>tags (PR #494 by @Rex57, closes #492). -
Plugin MCP server inherits remote/auth env (PR #386 by @LaplaceYoung, closes #375).
-
@agentmemory/mcprejects literal${VAR}placeholders. AnyAGENTMEMORY_URL/AGENTMEMORY_SECRETvalue of the form${...}is treated as unset and falls back tohttp://localhost:3111. -
Codex
stophook closes session (PR #579, closes #493).Stopwas missing from the Codex bundle; session never got marked completed. -
Claude Code
--with-hooksworks for MCP-standalone users (PR #581, closes #508).
Added
-
AGENT_IDmulti-agent memory isolation (PR #654, closes #554). OptionalAGENT_IDenv tags every Session / RawObservation / CompressedObservation / Memory.AGENTMEMORY_AGENT_SCOPE=isolated(opt-in;shareddefault) also filters every recall path (mem::smart-search,/memories,/observations,/sessions). Per-call overrides via request body +?agentId=<role>/?agentId=*query params.?includeOrphans=truesurfaces pre-tag rows. -
Qwen Code connect adapter (PR #651, closes #647).
agentmemory connect qwenwrites the standardmcpServersblock to~/.qwen/settings.json. -
Antigravity connect adapter (PR #651, closes #614). Replacement for Gemini CLI (sunset 2026-06-18). Writes
mcp_config.jsonto the platform-specific User dir. -
Kiro connect adapter (PR #651, closes #618). Writes user-level
~/.kiro/settings/mcp.json. -
Cost-aware model selection (PR #654, closes #613). Runtime warning when
OPENROUTER_MODELmatches the premium pattern. README cost-tier table with measured workload data. Suppress viaAGENTMEMORY_SUPPRESS_COST_WARNING=1. -
Pluggable benchmark harness (PR #562). New
eval/directory with thecoding-agent-life-v1corpus (15 sessions + 15 graded queries) and three adapters (grep, OpenAI embeddings + cosine, agentmemory hybrid). LongMemEval support. Sandboxed agentmemory + iii-engine on alt ports viaeval/scripts/sandbox.sh. Dev-only — no runtime impact. -
agentmemory connect codex --with-hooksopt-in flag (PR #564, closes #509). Workaround for openai/codex#16430. -
Cross-platform CI matrix (PR #556). Ubuntu + macOS × Node 20 + 22,
paths-ignore, per-branch concurrency cancellation.
Docs
-
Port mapping table (PR #651, closes #629).
3111REST /3112streams /3113viewer /49134engine WS + env overrides + stale-process cleanup recipe. -
Pairings recipe (PR #641).
docs/recipes/pairings.mdcovers stacking agentmemory with codegraph, Understand Anything, and Graphify. -
Multi-agent README section (PR #654).
AGENT_ID+AGENTMEMORY_AGENT_SCOPEsemantics, per-endpoint behavior table. -
Supply-chain policy in SECURITY.md (PR #654, closes #540). Explains why no lockfile is committed (
dist/ships pre-built) and what monitoring exists. -
README "Config File" section + Windows path (PR #321 by @aqilaziz, closes #293).
Infrastructure
- 108 test files, 1171 tests pass.
- Agent count: 8 → 11 (claude-code, codex, cursor, gemini-cli, qwen, antigravity, kiro, openclaw, hermes, pi, openhuman).