memorix
Memory server
First committed by AVIDS2
Published in AVIDS2/memorix. Publisher page
926 GitHub stars
What it is
Local-first shared memory layer for AI coding agents across MCP clients, Git history, reasoning context, and project sessions.
Summary from the brain’s metadata
Local-first shared memory layer for AI coding agents across MCP clients, Git history, reasoning context, and project sessions. One project memory system for Claude Code, Codex, CodeBuddy Code, Cursor, Windsurf, Copilot, Gemini CLI, OpenCode, Grok Build, OpenClaw, Hermes Agent, Oh-my-Pi, Pi, Kiro, Antigravity, Trae, DeepSeek Harness, WorkBuddy, and any MCP-capable agent.
How it works
Memory model: Hybrid
AutoGineer overview, from the brain’s own files
Memory model: Hybrid. Folders: .github (agent config, 3 files); .windsurf (agent config, 2 files); assets (attachments, 32 files); docs (docs, 65 files); examples (examples, 4 files); packages (source code, 836 files); scripts (scripts, 18 files); src (source code, 382 files). The agent writes CLAUDE.md.
| Folder | Role | Files |
|---|---|---|
| .github | agent-config | 3 |
| .windsurf | agent-config | 2 |
| assets | attachments | 32 |
| docs | docs | 65 |
| examples | examples | 4 |
| packages | source-code | 836 |
| scripts | scripts | 18 |
| src | source-code | 382 |
| tests | tests | 376 |
| .codegraph | folder | 1 |
| .opencode | folder | 1 |
| .trae | folder | 1 |
| articles | folder | 5 |
| plugins | folder | 64 |
| stubs | folder | 1 |
The agent writes
- CLAUDE.md evidence: README.md
Requirements
Apps: Docker
Runtimes: Node.js >=22.18.0, Bun
Databases: LanceDB, PostgreSQL, SQLite
API keys (by name): ANTHROPIC_API_KEY, API_ROUTE_API_KEY, ATLASCLOUD_API_KEY, CHEAPER_INFERENCE_API_KEY, GROQ_API_KEY, MEMORIX_API_KEY, MEMORIX_EMBEDDING_API_KEY, MEMORIX_HTTP_AUTH_TOKEN, MEMORIX_LLM_API_KEY, MEMORIX_RERANK_API_KEY, MINIMAX_API_KEY, MINIMAX_CN_API_KEY, OPENAI_API_KEY, OPENROUTER_API_KEY, REQUESTY_API_KEY, RUNCRATE_API_KEY
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Google Antigravity, Kiro, OpenCode, Amp, Roo Code, Cline, JetBrains Junie, Devin (ex-Windsurf)
Set it up
This brain runs code automatically: 20 hooks (claude-code, codex). Review plugins/claude/memorix/hooks/hooks.json, plugins/codebuddy/memorix/hooks/hooks.json, plugins/codex/memorix/hooks/hooks.json, plugins/copilot/memorix/hooks/hooks.json before opening the folder in Claude Code. No step below turns a hook on for you.
plugins/claude/memorix/hooks/hooks.json:memorix hookplugins/claude/memorix/hooks/hooks.json:memorix hookplugins/claude/memorix/hooks/hooks.json:memorix hookplugins/claude/memorix/hooks/hooks.json:memorix hookplugins/claude/memorix/hooks/hooks.json:memorix hookplugins/codebuddy/memorix/hooks/hooks.json:memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json:memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json:memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json:memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json:memorix hook --agent codebuddyplugins/codex/memorix/hooks/hooks.json:memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json:memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json:memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json:memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json:memorix hook --agent codexplugins/copilot/memorix/hooks/hooks.json:memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json:memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json:memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json:memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json:memorix hook --agent copilot
- Not scanned by AutoGineerAutoGineer could not scan everything it runs. https://www.npmjs.com/package/memorix
First committed by AVIDS2. Published in AVIDS2/memorix. Licence: Apache License 2.0.
Usage
AutoGineer’s guidance for this type of brain
Add the server to your AI tool’s MCP configuration (see Set it up); your agent then stores and recalls memories through its tools.
Documentation by AVIDS2
<p align="center"> <img src="https://raw.githubusercontent.com/AVIDS2/memorix/main/assets/readme-hero.svg" alt="Memorix" width="720"> </p>
<h1 align="center">Memorix</h1>
<p align="center"> <strong>Local-first shared memory layer for AI coding agents.</strong><br> One project memory system for Claude Code, Codex, CodeBuddy Code, Cursor, Windsurf, Copilot, Gemini CLI, OpenCode, Grok Build, OpenClaw, Hermes Agent, Oh-my-Pi, Pi, Kiro, Antigravity, Trae, DeepSeek Harness, WorkBuddy, and any MCP-capable agent. </p>
<p align="center"> <a href="https://www.npmjs.com/package/memorix"><img src="https://img.shields.io/npm/v/memorix.svg?style=for-the-badge&logo=npm&color=cb3837" alt="npm"></a> <a href="https://www.npmjs.com/package/memorix"><img src="https://img.shields.io/npm/dm/memorix.svg?style=for-the-badge&logo=npm&label=monthly%20downloads&color=7c3aed" alt="monthly downloads"></a> <a href="https://github.com/AVIDS2/memorix/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/AVIDS2/memorix/ci.yml?style=for-the-badge&label=CI&logo=github" alt="CI"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-2563eb?style=for-the-badge" alt="license"></a> <a href="https://github.com/AVIDS2/memorix"><img src="https://img.shields.io/github/stars/AVIDS2/memorix?style=for-the-badge&logo=github&color=facc15" alt="stars"></a> </p>
<p align="center"> <a href="https://registry.modelcontextprotocol.io/?q=io.github.AVIDS2%2Fmemorix">Listed in the official MCP Registry</a> <br> <a href="https://mcptoplist.com/server/io.github.AVIDS2%2Fmemorix"><img src="https://mcptoplist.com/badge/io.github.AVIDS2%2Fmemorix.svg" alt="View Memorix on MCP Toplist"></a> </p>
<p align="center"> <strong>Shared Project Memory</strong> | <strong>MCP</strong> | <strong>Git Memory</strong> | <strong>Reasoning Memory</strong> | <strong>Plugins</strong> | <strong>Orchestration</strong> </p>
<p align="center"> <a href="https://mem.rglens.com">Website</a> | <a href="README.zh-CN.md">Chinese</a> | <a href="#install">Install</a> | <a href="#capabilities">Capabilities</a> | <a href="#works-with-your-agent">Agents</a> | <a href="#quick-start">Quick Start</a> | <a href="#memory-model">Memory Model</a> | <a href="#memcode-bundled-terminal-agent">memcode</a> | <a href="ACTIVE_WORK.md">Active Work</a> | <a href="#docs">Docs</a> </p>
Maintainer status and the current public work boundary live in ACTIVE_WORK.md. It is the repository's single living work tracker.
<h2 id="what-memorix-is"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-overview.svg"><img src="assets/tags/section-overview.svg" alt="Memorix" height="32" /></picture></h2>
Memorix gives the AI coding agents you already use a shared, searchable project memory that survives new chats, IDE switches, terminal sessions, and handoffs. The memory lives under the Git project, not inside one chat window or one tool.
Use Claude Code today, Codex tomorrow, and Cursor in the afternoon. The agent can change; the project memory stays the same.
Use Memorix when you keep re-explaining the same project to a new agent session: the last session already figured something out, another IDE cannot see it, or a design decision is buried in a chat you cannot find anymore.
| Problem | What Memorix adds |
|---|---|
| The next session forgets what the last session learned | Project-scoped memory, session summaries, timelines, and detail retrieval |
| Different agents know different things | One local memory pool available through MCP, hooks, CLI, SDK, and the bundled terminal agent |
| Git records what changed, but agents cannot recall it well | Git Memory turns commits into searchable engineering facts |
| Architecture decisions disappear into old chats | Reasoning Memory stores why choices were made, with alternatives and trade-offs |
| Static rule files drift | Gotchas, fixes, and project skills evolve from real work |
| Parallel agent work gets messy | memorix orchestrate coordinates task context, handoffs, locks, verification, and review loops |
Memorix is local-first. SQLite is the canonical store. Small projects use the in-process Orama path; larger projects use a persistent SQLite FTS5 candidate index and, when available, an optional local LanceDB semantic shadow index. Both indexes are rebuildable and are never a limit on how many durable memories you can keep. LLM-backed formation and embedding remain optional.
Capabilities
Memorix is more than a memory store. It also installs agent integrations, keeps useful work events, turns commits into project facts, exposes a local control plane, and can coordinate multi-agent work when a task needs it.
| Capability | What it does | Entry point |
|---|---|---|
| Memory Autopilot | A bounded task Workset with start files, current memory, source-backed knowledge, workflow starts, cautions, and verification. Compact JSON receipts keep fallback CLI use bounded too. | memorix context "..." --brief-json, memorix resume "..." --brief-json, memorix_project_context |
| Observation Memory | Searchable facts, fixes, gotchas, session summaries, and implementation notes scoped to the current Git project | memorix memory, MCP memory tools |
| Curated Long-term Memory | Deliberately reviewed episodic, semantic, and procedural memory with source evidence. Only an explicitly portable user item can cross local projects | memorix memory long-term |
| Code State and Code Memory | Versioned local code snapshots, source-backed TypeScript/JavaScript symbols and relations, file/symbol links, and freshness checks. Other languages keep the honest Lite fallback; an already-indexed local CodeGraph or SCIP result can add a bounded external outline without taking over the local index. | memorix codegraph status|refresh|init|sync, automatic context refresh |
| Git Memory | Commit-derived engineering facts that answer what changed, where, and why it matters | memorix ingest commit, git hook |
| Reasoning Memory | Design rationale, alternatives, trade-offs, and risks that should survive beyond one chat | memorix reasoning, memory formation |
| Knowledge Workspace | Review-gated source-backed claims, Markdown pages, and canonical project workflows; proposals never overwrite reviewed pages silently | memorix knowledge, memorix knowledge workflow |
| Agent setup | One setup path for MCP, rules, hooks, skills, plugins, bundles, or extensions depending on the agent | memorix setup --agent <agent> |
| Agent doctor | Checks whether agent MCP config and guidance are current, then repairs Memorix-owned entries when needed | memorix doctor agents, memorix repair agents |
| Hooks and skills | Optional capture from supported agents, plus reusable project skills promoted from durable knowledge | memorix hooks, memorix skills |
| Dashboard and HTTP | A local web UI and shared MCP endpoint for browsing memory, project state, teams, diagnostics, and preview-first cleanup, consolidation, deduplication, and retention actions | memorix dashboard, memorix background start |
| Orchestration and team work | Task planning, worker handoffs, file locks, messages, verification gates, and review loops | memorix orchestrate, memorix team, memorix lock |
| memcode | A bundled terminal coding agent that already reads and writes the same project memory | memorix, memcode |
| CLI and SDK | Scriptable access for automation, imports/exports, diagnostics, and custom integrations | memorix ..., createMemoryClient() |
| Optional multi-device sync | Privacy-filtered observation events with local SQLite kept canonical; default project scope, optional --scope user for every local project; GitHub JSONL, filesystem, S3, or Postgres relay | memorix sync store status|push|pull |
<h2 id="works-with-your-agent"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-agents.svg"><img src="assets/tags/section-agents.svg" alt="Works with every agent" height="32" /></picture></h2>
Memorix connects through the interfaces each agent already supports: plugin packages, MCP, project rules, hooks, skills, or the bundled terminal agent. memorix setup chooses the right setup for each agent and keeps stdio MCP as the default transport.
<table> <tr> <td align="center" width="12.5%"> <a href="https://claude.com/product/claude-code"><img src="https://github.com/anthropics.png?size=120" alt="Claude Code" width="48" height="48"></a><br> <strong>Claude Code</strong><br> <sub>official plugin + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://github.com/openai/codex"><img src="https://github.com/openai.png?size=120" alt="Codex CLI" width="48" height="48"></a><br> <strong>Codex CLI</strong><br> <sub>official plugin + MCP + AGENTS.md</sub> </td> <td align="center" width="12.5%"> <a href="https://github.com/features/copilot"><img src="https://github.githubassets.com/images/modules/site/copilot/copilot.png" alt="GitHub Copilot CLI" width="48" height="48"></a><br> <strong>GitHub Copilot CLI</strong><br> <sub>plugin + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://cursor.com"><picture><source media="(prefers-color-scheme: dark)" srcset="https://svgl.app/library/cursor_dark.svg"><img src="https://svgl.app/library/cursor_light.svg" alt="Cursor" width="48" height="48"></picture></a><br> <strong>Cursor</strong><br> <sub>MCP + rules + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://windsurf.com"><picture><source media="(prefers-color-scheme: dark)" srcset="https://svgl.app/library/windsurf-dark.svg"><img src="https://svgl.app/library/windsurf-light.svg" alt="Windsurf" width="48" height="48"></picture></a><br> <strong>Windsurf</strong><br> <sub>MCP + rules + hooks</sub> </td> <td align="center" width="12.5%"> <a href="https://github.com/google-gemini/gemini-cli"><img src="https://github.com/google-gemini.png?size=120" alt="Gemini CLI" width="48" height="48"></a><br> <strong>Gemini CLI</strong><br> <sub>extension + MCP + hooks + skills</sub> </td> </tr> <tr> <td align="center" width="12.5%"> <a href="https://github.com/opencode-ai/opencode"><picture><source media="(prefers-color-scheme: dark)" srcset="https://svgl.app/library/opencode-dark.svg"><img src="https://svgl.app/library/opencode.svg" alt="OpenCode" width="48" height="48"></picture></a><br> <strong>OpenCode</strong><br> <sub>local plugin + MCP + skills + AGENTS.md</sub> </td> <td align="center" width="12.5%"> <a href="https://pi.dev"><img src="https://pi.dev/favicon.svg" alt="pi coding agent" width="48" height="48"></a><br> <strong>pi coding agent</strong><br> <sub>package + extension + skill</sub> </td> <td align="center" width="12.5%"> <a href="https://kiro.dev"><img src="https://kiro.dev/icon.svg" alt="Kiro" width="48" height="48"></a><br> <strong>Kiro</strong><br> <sub>MCP + steering + hooks</sub> </td> <td align="center" width="12.5%"> <a href="https://antigravity.google"><img src="https://antigravity.google/assets/image/antigravity-logo.png" alt="Antigravity" width="48" height="48"></a><br> <strong>Antigravity</strong><br> <sub>plugin + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://www.trae.ai"><img src="https://github.com/Trae-AI.png?size=120" alt="Trae" width="48" height="48"></a><br> <strong>Trae</strong><br> <sub>MCP + project rules</sub> </td> <td align="center" width="12.5%"> <img src="https://raw.githubusercontent.com/AVIDS2/memorix/main/assets/logo.png" alt="memcode" width="48" height="48"><br> <strong>memcode</strong><br> <sub>bundled terminal agent</sub> </td> </tr> <tr> <td align="center" width="12.5%"> <a href="https://docs.openclaw.ai"><img src="https://raw.githubusercontent.com/openclaw/openclaw/main/ui/public/favicon.svg" alt="OpenClaw" width="48" height="48"></a><br> <strong>OpenClaw</strong><br> <sub>bundle + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://hermes-agent.nousresearch.com"><img src="https://hermes-agent.nousresearch.com/icon.png" alt="Hermes Agent" width="48" height="48"></a><br> <strong>Hermes Agent</strong><br> <sub>plugin + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://omp.sh"><img src="https://omp.sh/favicon.png" alt="Oh-my-Pi" width="48" height="48"></a><br> <strong>Oh-my-Pi</strong><br> <sub>package + MCP + hooks + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://github.com/deepseek-ai/deepseek-harness"><img src="https://github.com/deepseek-ai.png?size=120" alt="DeepSeek Harness" width="48" height="48"></a><br> <strong>DeepSeek Harness</strong><br> <sub>MCP patch + AGENTS.md + skills</sub> </td> <td align="center" width="12.5%"> <a href="https://modelcontextprotocol.io"><img src="https://github.com/modelcontextprotocol.png?size=120" alt="Any MCP Client" width="48" height="48"></a><br> <strong>Any MCP Client</strong><br> <sub>stdio or HTTP MCP</sub> </td> <td align="center" width="12.5%"> <a href="https://github.com/xai-org/grok-build"><picture><source media="(prefers-color-scheme: dark)" srcset="https://media.x.ai/v1/website/spacexai-symbol-white-transparent-0c31957f.png"><img src="https://media.x.ai/v1/website/spacexai-symbol-black-transparent-6435cf42.png" alt="Grok Build" width="48" height="48"></picture></a><br> <strong>Grok Build</strong><br> <sub>native hooks + AGENTS.md</sub> </td> </tr> </table>
<p align="center"> <sub>Works with agents that speak MCP, expose hooks/rules, or support plugin/package entries. One local-first memory layer shared across all of them.</sub> </p>
Integration surfaces:
| Surface | What it does | Memorix entry |
|---|---|---|
| Setup command | Installs the recommended one-time user-level Memorix integration | memorix setup --agent <agent> --global |
| MCP | Gives an agent compact Memorix tools for project context, search, detail retrieval, storage, and resolution | bundled in setup packages or memorix serve |
| Usage guidance | Teaches an agent when and how to use Memorix without forcing memory lookup on every prompt | bundled or generated by memorix setup |
| Hooks | Optional capture of prompts, tool events, file edits, session lifecycle events, and native compaction checkpoints where the agent exposes them | bundled or generated by memorix setup |
| Plugin or bundle package | Installs plugin, compatible-bundle, or package files where the agent supports them | Claude Code, Codex, CodeBuddy Code, GitHub Copilot CLI, Antigravity, OpenClaw, Hermes Agent, Oh-my-Pi, Pi |
| Extension | Installs extension files where the agent supports them | Gemini CLI |
| Local plugin | Installs local plugin files where the agent loads them directly | OpenCode |
| MCP/rules config | Writes MCP, rules, steering, guidance, or hook config for IDEs and agents that expose those surfaces | Cursor, Windsurf, Kiro, Trae, DeepSeek Harness, WorkBuddy |
| Skills | Turns durable project knowledge into reusable task guidance | memorix skills and memorix_promote |
| memcode | Opens the bundled terminal agent that already uses Memorix memory | memorix or memcode |
See Integration Surfaces for the current support matrix and what each generated file means.
Use the same setup command without --global only when you intentionally want repo-local guidance, rules, or hooks in the current Git project.
CLI, MCP, and HTTP are different entry points:
memorixCLI is the direct command surface for setup, memory search/store, Git Memory, import/export, dashboard, orchestration, diagnostics, and automation.memorix serveis the stdio MCP bridge used by IDEs and coding agents. Its default tool profile ismicro, so agents see only the compact core tool set.memorix background start/memorix serve-httprun the HTTP service for a shared endpoint, dashboard, VPS Docker deployment, or multiple clients.
Multi-device store sync is opt-in and separate from HTTP sharing. It never
uploads the live SQLite database or WAL files. By default it only relays
qualified project-visible observations for the current Git project; personal,
agent-targeted, candidate, and ephemeral records stay local. Pass --scope user
to include every local project. Set MEMORIX_SYNC_PROVIDER and inspect
memorix sync store status --json before the first push.
<h2 id="install"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-install.svg"><img src="assets/tags/section-install.svg" alt="Install" height="32" /></picture></h2>
Requirements:
Node.js
>=22.18.0Git, because project identity is derived from the real Git root
Install and initialize:
npm install -g memorix
memorix init --global # optional defaults
memorix setup --agent claude --global # or codex, copilot, cursor, pi, gemini-cli, opencode,
# codebuddy, windsurf, kiro, antigravity, trae, openclaw, hermes, ompmemorix init is optional. It creates or updates TOML configuration:
~/.memorix/config.tomlfor global defaults<git-root>/memorix.tomlfor optional project overrides
Legacy memorix.yml, .env, and ~/.memorix/config.json are still read for compatibility, but new setup flows use TOML.
If you want repo-local guidance or hooks for a specific repository, run the same setup command from inside that repo without --global. Codex is the exception: its supported path is the user-level plugin install, so Memorix leaves project .codex configuration alone.
<h2 id="quick-start"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-quick-start.svg"><img src="assets/tags/section-quick-start.svg" alt="Quick Start" height="32" /></picture></h2>
Connect an existing agent
Use the setup command first. The global form is the normal one-time install:
memorix setup --agent claude --global
memorix setup --agent codex --global
memorix setup --agent copilot --global
memorix setup --agent cursor --global
memorix setup --agent pi --global
memorix setup --agent gemini-cli --global
memorix setup --agent opencode --global
memorix setup --agent windsurf --global
memorix setup --agent kiro --global
memorix setup --agent antigravity --global
memorix setup --agent trae --global
memorix setup --agent openclaw --global
memorix setup --agent hermes --global
memorix setup --agent codebuddy --global
memorix setup --agent omp --global
memorix setup --agent dsh --global
memorix setup --agent workbuddy --global
memorix setup --agent grok --globalWhat it installs depends on the target agent, but the goal is the same: make Memorix available wherever you open that agent without asking you to wire every repo by hand.
Claude Code: installs the Memorix plugin package, adds
CLAUDE.mdguidance, and enables hook capture when you do not pass--noHooks.Codex: installs one user-level Memorix plugin with bundled stdio MCP, skills, and lifecycle hooks. It does not write project-local
.codexconfig or change your model, approval, or sandbox settings. When Codex asks, review the plugin hook definition once with/hooks;--noHooksskips automatic capture.GitHub Copilot CLI: installs the Copilot plugin package and official Memorix skills.
Pi: installs the Pi extension/skills package and native MCP config (Pi 1.0+):
~/.pi/agent/mcp.jsonwith--global, or.pi/mcp.jsonfor project setup.Cursor: writes Cursor MCP/rules/config entries in the chosen scope.
Gemini CLI: installs the extension package,
GEMINI.mdcontext, hooks, and skills. Antigravity CLI has an official Gemini CLI migration path, but Gemini CLI remains an active standalone target.OpenCode: installs the local plugin file,
opencode.json, skills, andAGENTS.mdguidance.Windsurf, Kiro, Trae: write the MCP/rules/hooks files the target supports.
Antigravity: installs the official plugin package with
plugin.json,mcp_config.json,hooks.json, rules, and skills under~/.gemini/config/plugins/memorixor.agents/plugins/memorix.OpenClaw: installs an OpenClaw-compatible bundle with
.mcp.json, official skills, and an OpenClawHOOK.md/handler.tshook pack.Hermes Agent: installs into Hermes home (
%LOCALAPPDATA%\hermeson native Windows,~/.hermeselsewhere, orHERMES_HOME), enables the plugin inconfig.yaml, registers plugin hooks, slash/CLI commands, skills, and writes MCP config.CodeBuddy Code: installs a user-scope local marketplace plugin under
~/.codebuddy/memorix-localwith MCP, skills, and hooks. It does not change existing CodeBuddy model, permission, or settings files; CodeBuddy keeps third-party hook approval in its own/hooksflow.Oh-my-Pi: installs an
omp.extensionspackage with extension hook events, amemorixcommand, official skills, and writes MCP config.DeepSeek Harness: writes a Memorix
@deepseek-ai/dsh-mcp-clientrow into$DSH_HOME/cordis.patch.yml(default~/.dsh/cordis.patch.yml), appends guidance to the harnessAGENTS.md, and installs official skills under$DSH_HOME/skills. The row follows DSH's own shipped Memorix reference, so tools appear asmcp__memorix__*.WorkBuddy: writes a Memorix MCP server row into
~/.workbuddy/mcp.json(or<project>/.workbuddy/mcp.jsonfor project installs) and appends guidance toAGENTS.md. Tools appear asmcp__memorix__*; there is no hooks surface.Grok Build: installs native lifecycle hooks under
~/.grok/hooks/memorix.jsonand guidance in~/.grok/AGENTS.md. MCP stays host-owned by default; pass--mcp httpto write[mcp_servers.memorix]withurl = "http://localhost:3211/mcp". Project-local hooks require Grok/hooks-trust, while global hooks are trusted. SetGROK_HOMEto use a custom Grok home.
Need a quieter install? Add --noHooks for targets where setup can control hook capture separately from the host's official package entry. It keeps MCP and guidance, but skips Memorix hook capture.
If you intentionally want repo-local guidance or hooks, run the same command inside that repository without --global.
If your agent only needs a manual MCP entry, use stdio:
{
"mcpServers": {
"memorix": {
"command": "memorix",
"args": ["serve"]
}
}
}For an npm-based MCP client or registry tester, use the complete command
npx -y memorix serve. The serve argument matters: memorix without
arguments opens the bundled memcode terminal agent when run by a human, while
MCP clients should start the stdio server explicitly.
For a manually managed Claude Code entry, add "alwaysLoad": true inside the memorix server object. This lets Claude Code expose Memorix tools during print-mode startup; memorix doctor agents --agent claude can detect and repair a missing setting.
HTTP is not required for normal setup. Use it only when you intentionally want a shared background service, dashboard, VPS Docker deployment, or multiple clients using the same endpoint. Local development uses the Node service directly and does not require Docker:
memorix background startThen point the client at:
http://localhost:3211/mcpIn HTTP mode, agents should bind the active repo explicitly with memorix_session_start(projectRoot=...) when the client can provide the workspace path. Git remains the final source of truth for project identity.
Uninstall
Preview what will be removed:
memorix uninstall --dry-runStop the background service and remove hooks:
memorix uninstall --background --hooksFull cleanup:
memorix uninstall --yes --background --hooks --purge-data
npm uninstall -g memorixmemorix uninstall reports MCP config entries for manual cleanup instead of silently editing every MCP file it finds.
Work from the CLI
memorix --cwd /path/to/repo resume "continue release blocker"
memorix checkpoint list
memorix memory search --query "release blocker"
memorix memory --help
# Optional: activate one local agent identity for personal/team records and coordination.
memorix identity join --agent-type codex --name codex-main
memorix memory store --text "private investigation note" --visibility personal
memorix task create --description "verify the release package"
# Deliberate durable memory: create a candidate, then review it before it can enter a Workset.
memorix memory long-term add --kind procedural --scope user --portability portable --title "Release verification preference" --text "Run focused tests and a packed-package smoke before publishing." --applicability "When publishing an npm package."
memorix memory long-term qualify --id <id> --reason "The user explicitly confirmed this preference."
memorix memory long-term approve --id <id> --reason "Reviewed for future local projects."
memorix transfer export --format json --out ./.memorix-export.json
memorix transfer import --file ./.memorix-export.json
memorix reasoning search --query "why sqlite"
memorix git-hook --force
memorix ingest log --count 20
memorix workbenchThe CLI is direct and does not depend on an MCP session. It binds to the current Git project, or to the project supplied with --cwd. Without an active identity it reads, writes, and exports project-visible memory only. Use memorix identity join or memorix identity use --agent-id <id> only when you intentionally need personal/team memory or coordinated task actions; memorix identity clear returns the terminal to project scope. --as <active-agent-id> is the one-command alternative for scripts. Both camelCase and kebab-case flags are accepted.
Manage controlled media
Media is opt-in. An explicit local import is copied into Memorix's local data directory, hashed, and kept outside the Git worktree. It becomes normal memory only when you attach it. Memorix never captures every screenshot or tool output. An asset may be up to the configured media limit (100 MiB by default). Automatic vision analysis is deliberately capped at 20 MiB; a larger image is still kept and can be attached, but Memorix records a clear text fallback instead of sending an oversized payload to a model provider.
memorix media import --path ./architecture.png --json
memorix media attach --asset <asset-id> --title "Architecture diagram" --json
memorix media list --kind image --json
memorix media show --asset <asset-id> --json
memorix media remove --asset <asset-id> --force --json
# Controlled derivations: explicit, bounded, and attachable to memory.
memorix media derive-pdf --asset <asset-id> --attach --json
memorix media derive-audio --asset <asset-id> --attach --json
# Legacy image analysis now uses the same controlled asset lifecycle.
memorix ingest image --path ./architecture.png --jsonMiniMax image generation is a deliberate CLI operation. Video generation returns a durable job immediately; inspect or cancel that job rather than waiting in an agent request.
# Configure MINIMAX_API_KEY in your user environment or .env, never in Git.
memorix media generate image --prompt "A clean system architecture diagram" --json
# Image-to-image with a reference image (MiniMax image-01 / image-01-live):
memorix media generate image --prompt "Keep the subject, change the background" --image ./reference.png --json
memorix media generate video --prompt "A short product walkthrough" --json
memorix media status --job <media-job-id> --json
memorix media cancel --job <media-job-id> --jsonmemorix_media is the compact MCP companion in every profile, including
micro. It supports import, attach, list, show, PDF/audio derivations,
generation, and job status. MCP image and video generation are disabled by
default because they may incur provider costs.
Set MEMORIX_MCP_MEDIA_GENERATION=1 only after you deliberately want an agent
to request billed MiniMax output. The normal OpenRouter text embedding lane is
still text-only; media vectors are created only by a provider that explicitly
declares support for that modality. Text descriptions and attachments remain a
useful ordinary retrieval fallback.
Use the bundled terminal agent
memorix
# or
memcodeThis opens memcode, a terminal coding agent that uses the same Memorix project memory as your MCP-connected agents.
<h2 id="memory-model"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-memory-model.svg"><img src="assets/tags/section-memory-model.svg" alt="Memory Model" height="32" /></picture></h2>
| Layer | Stores | Best for |
|---|---|---|
| Observation Memory | facts, gotchas, fixes, implementation notes | "How does this work?" |
| Reasoning Memory | rationale, alternatives, constraints, risks | "Why did we choose this?" |
| Git Memory | commit-derived engineering facts | "What changed and where?" |
| Code Memory | files, symbols, import edges, and memory-to-code freshness | "Which current code should I inspect first?" |
| Curated Long-term Memory | reviewed episodic events, stable facts, or reusable procedures with evidence | "What should this agent still know or do later?" |
| Compact Continuity | recent host-native compact summaries or lifecycle markers | "What survived the last context compaction?" |
Search is project-scoped by default. scope="global" searches across projects. The search boosts Git Memory for "what changed" questions and reasoning records for "why" questions.
Long-term memory is deliberately not an automatic dump of every note. A source observation, Claim, workflow, session, and code snapshot keep their existing roles. An agent may ask memorix_store to create an additional long-term record; an explicit request auto-qualifies and enters task briefs as a durable anchor, while hook-captured or Git-derived candidates stay pending until qualified. Approval stays an explicit operator review. Use memorix memory long-term approve|archive|supersede to record the evidence-backed lifecycle. Only a manually created or user-confirmed user + portable item may be considered in another local project; project code, Git facts, tests, workflows, sessions, and observations cannot be promoted into portable user memory.
memorix context "..." is the default Memory Autopilot entry. It builds a compact task-lensed brief for agents: bugfix tasks lean toward tests and repros, release tasks lean toward package/changelog/build checks, onboarding tasks lean toward docs and entry points, and stale or unrelated memories stay in warning lanes instead of flooding the prompt. Use --fallback --brief-json when MCP is unavailable and a CLI fallback needs the same bounded brief plus a receipt of what was selected or omitted; --json remains the detailed diagnostic form. A normal new task does not receive an old-session dump. For an explicit continuation, memorix resume "..." adds only the latest useful session summary, up to three readable durable anchors, and at most one recent source-labelled host compact checkpoint. A durable anchor carries a durable:<id> reference, so an agent can expand the full reviewed record through memorix_detail only when needed. Keyword matches stay primary; when no reviewed durable item matches and an embedding provider is configured, Memorix makes one 1.8-second, no-retry semantic fallback for paraphrases or cross-language tasks. A slow or unavailable provider simply leaves the normal keyword-only Workset intact. A checkpoint is lifecycle evidence, not durable memory or a transcript backup. Agents should read the suggested files before trusting stored memory.
<h2 id="runtime-modes"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-runtime.svg"><img src="assets/tags/section-runtime.svg" alt="Runtime Modes" height="32" /></picture></h2>
| You want | Run |
|---|---|
| Install an agent integration package | memorix setup --agent <agent> --global |
| Check or repair an agent integration | memorix doctor agents --agent <agent>, memorix repair agents --agent <agent> |
| Manually expose stdio MCP | memorix serve |
| Run shared HTTP MCP plus dashboard | memorix background start |
| Debug HTTP MCP in the foreground | memorix serve-http --port 3211 |
| Inspect or manage memory directly | memorix memory, memorix reasoning, memorix session, memorix ingest, memorix media |
| Manage reviewed long-term memory | `memorix memory long-term list |
| Retire memories from retrieval | memorix purge (current project), memorix purge --all --yes (everything) |
| Inspect native compaction continuity | `memorix checkpoint list |
| Use the interactive terminal memory control plane | memorix workbench |
| Use the bundled terminal agent | memorix or memcode |
| Run orchestrated subagent work | memorix orchestrate --goal "..." |
memorix serve defaults to --mode micro (9 tools) to keep MCP tool schemas small for agents. memorix setup writes --mode lite (21 tools) into the installed MCP config so the normal memory, continuity, and session surface is reachable. Use --mode team (29 tools) for coordination tools, or --mode full (48 tools) for advanced and compatibility tools such as checkpoint inspection.
Shortcuts and aliases: memorix search / remember / recent are direct query shortcuts, bg/bs start the background service, hook runs the hook launcher, and memorix config get|path|migrate inspects or migrates config files.
memorix orchestrate uses the current checkout for single-worker runs. When running multiple workers, it creates task worktrees under .worktrees/ and merges successful task branches back. Use --isolated to force worktree isolation for one worker, --no-worktree to disable it, --allow-dirty to run with uncommitted changes, and --no-auto-merge to preserve task worktrees for manual review.
<h2 id="memcode-bundled-terminal-agent"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-memcode.svg"><img src="assets/tags/section-memcode.svg" alt="memcode" height="32" /></picture></h2>
memcode is the terminal coding agent bundled with Memorix. It can read, edit, run commands, resume sessions, switch models, and use /memory commands — all backed by the same project memory as your MCP-connected agents.
Use it when you want a terminal agent with memory already wired in.
one Git project -> one shared Memorix memory poolSee docs/MEMCODE.md for the memcode-specific guide.
<h2 id="configuration"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-configuration.svg"><img src="assets/tags/section-configuration.svg" alt="Configuration" height="32" /></picture></h2>
Minimal ~/.memorix/config.toml:
[agent]
provider = "openai"
model = "gpt-4o"
api_key = "..."
[memory.llm]
provider = "openai"
model = "gpt-4o-mini"
api_key = "..."
[embedding]
provider = "auto"
[memory]
inject = "minimal"
formation = "active"Use [memory.llm] and [embedding] for Memorix memory quality and retrieval. Use [agent] for the model memcode talks to while coding. Keep credentials in global config or environment variables, and do not commit secrets.
For the optional Atlas Cloud memory preset, run memorix init and choose Atlas
Cloud, or set provider = "atlascloud" in [memory.llm]. It uses the
OpenAI-compatible https://api.atlascloud.ai/v1 endpoint and reads
ATLASCLOUD_API_KEY or the explicit MEMORIX_LLM_API_KEY.
For OpenRouter embeddings, use provider = "api", base_url = "https://openrouter.ai/api/v1", and model = "qwen/qwen3-embedding-8b". Memorix accepts OPENROUTER_API_KEY for that embedding endpoint; MEMORIX_EMBEDDING_API_KEY remains the explicit override.
For Requesty, choose Requesty in memorix init or set provider = "requesty" in [memory.llm] (endpoint https://router.requesty.ai/v1, key from REQUESTY_API_KEY or MEMORIX_LLM_API_KEY). Requesty embeddings use provider = "api", base_url = "https://router.requesty.ai/v1", and model = "openai/text-embedding-3-small" with REQUESTY_API_KEY.
For API Route, choose API Route in memorix init or set provider = "apiroute" in [memory.llm]. The preset uses https://global.api-route.com/v1 and deepseek-v4.1-flash, with your own API_ROUTE_API_KEY or MEMORIX_LLM_API_KEY. It is opt-in memory LLM processing; embeddings and memcode's model registry are configured separately. See configuration.
For Cheaper Inference, choose Cheaper Inference in memorix init or set provider = "cheaperinference" in [memory.llm]. The preset uses https://api.cheaperinference.com/v1 and gpt-5.4-mini, with your own CHEAPER_INFERENCE_API_KEY or MEMORIX_LLM_API_KEY. It is opt-in memory LLM processing; embeddings and memcode's model registry are configured separately. See configuration.
For Runcrate, choose Runcrate in memorix init or set provider = "runcrate" in [memory.llm]. The preset uses https://api.runcrate.ai/v1 and the open-weight deepseek-ai/DeepSeek-V4.1-Flash, with your own RUNCRATE_API_KEY or MEMORIX_LLM_API_KEY. It is opt-in memory LLM processing; embeddings and memcode's model registry are configured separately. See configuration.
For controlled MiniMax media generation, set MINIMAX_API_KEY (global) or
MINIMAX_CN_API_KEY (China region) in your environment or .env. The media
library never stores that key, a signed output URL, or base64 payloads. CLI
generation is explicit; MCP generation additionally requires
MEMORIX_MCP_MEDIA_GENERATION=1.
<h2 id="docker"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-docker.svg"><img src="assets/tags/section-docker.svg" alt="Docker" height="32" /></picture></h2>
Docker is a VPS/hosted HTTP deployment option, not a requirement for local development or stdio MCP:
docker compose up --build -dThen open:
dashboard:
http://localhost:3211MCP:
http://localhost:3211/mcphealth:
http://localhost:3211/health
The container must be able to access the repository path passed as projectRoot for project-scoped Git and config behavior.
<h2 id="sdk"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-sdk.svg"><img src="assets/tags/section-sdk.svg" alt="SDK" height="32" /></picture></h2>
Use Memorix directly from TypeScript:
import { createMemoryClient } from 'memorix/sdk';
const client = await createMemoryClient({ projectRoot: '/path/to/repo' });
await client.store({
entityName: 'auth-module',
type: 'decision',
title: 'Use JWT for API auth',
narrative: 'Chose JWT because the API is stateless and used by multiple clients.',
});
const results = await client.search({ query: 'auth decision' });
await client.close();<h2 id="docs"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-docs.svg"><img src="assets/tags/section-docs.svg" alt="Docs" height="32" /></picture></h2>
| Start here | Use when |
|---|---|
| Docs Map | You want the shortest route to the right guide |
| Setup Guide | Installing, using memorix setup, choosing stdio vs HTTP |
| Integration Surfaces | Plugin packages, MCP, project rules, hooks, and skills support |
| Configuration | TOML config, model lanes, compatibility files |
| API Reference | MCP tools and CLI commands |
| Git Memory | Commit ingestion and searchable engineering truth |
| Docker | Containerized HTTP service |
| memcode | Using the bundled terminal agent |
| Agent Playbook | AI-facing execution guide for install, binding, hooks, and troubleshooting |
| Development | Contributing, testing, release checks |
| Changelog | What changed in each release |
LLM-friendly summaries: llms.txt and llms-full.txt.
<h2 id="development"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-development.svg"><img src="assets/tags/section-development.svg" alt="Development" height="32" /></picture></h2>
git clone https://github.com/AVIDS2/memorix.git
cd memorix
npm install
npm run lint
npm test
npm run buildCommunity
Desktop and shell integrations built on Memorix:
omarchy-memorix — a native Omarchy shell bar widget: pool stats, live global search, per-project breakdown, recent memories, and a workbench launcher. Read-only over
~/.memorix/data; no daemons, no telemetry.
Built something on top of Memorix? Open a PR to list it here.
<h2 id="acknowledgements"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-acknowledgements.svg"><img src="assets/tags/section-acknowledgements.svg" alt="Acknowledgements" height="32" /></picture></h2>
Memorix draws from the MCP ecosystem and prior memory projects such as mcp-memory-service, MemCP, claude-mem, and Mem0. memcode is based on the Pi coding-agent codebase and adapts its terminal-agent model for the Memorix ecosystem.
<h2 id="license"><picture><source media="(prefers-color-scheme: dark)" srcset="assets/tags/light/section-license.svg"><img src="assets/tags/section-license.svg" alt="License" height="32" /></picture></h2>
<h2 id="star-history">Star History</h2>
<a href="https://github.com/AVIDS2/memorix/stargazers"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://mem.rglens.com/metrics/star-history-dark.svg"> <source media="(prefers-color-scheme: light)" srcset="https://mem.rglens.com/metrics/star-history-light.svg"> <img alt="Memorix Star History" src="https://mem.rglens.com/metrics/star-history-light.svg" width="100%"> </picture> </a>
<sub>Updated automatically from GitHub's privacy-safe star history API. No generated PRs.</sub>
ACTIVE_WORK.md
Memorix Active Work
This is the single living work-status document for this repository. Read it before resuming substantial work, update it after a material decision or milestone, and do not create parallel progress logs.
Last updated: 2026-11-11
Long-term roadmap: docs/ROADMAP-1.9.12-2.0.md
Local verification rule: run the frontend, HTTP service, MCP server, and tests directly with Node/npm on the E: workspace. Do not start Docker or add local Docker data. The Dockerfile and image workflow remain deployment artifacts for the VPS/hosted build path only.
Architecture Audit and 1.11 Refactor Baseline (2026-11-05)
[x] Audited the current tree, runtime entrypoints, persistence/index paths, recent issue history, npm download data, and current agent-memory ecosystem. The dominant risk is boundary coupling between canonical SQLite records, derived views, retrieval policy, host adapters, and maintenance jobs.
[x] Updated
docs/ARCHITECTURE.mdwith the Memory Kernel, Runtime Facade, Derived View, RetrievalPlan/Receipt, and MaintenanceResult target contracts. Added ADR-017 and updated the module/roadmap documents.[x] Added the first executable kernel slice:
src/core/retrieval-contracts.tsnormalizes retrieval input before Orama/FTS/Lance selection. The focused contract and search regression tests pass.[x] 1.11 P1 slice:
RuntimeContextvalidates a resolved project and freezes a per-request config snapshot; CodeGraph context uses it. Lance now has a concreteDerivedViewadapter with status/refresh/rebuild/compact/close, and the Orama bridge writes through that adapter. Non-finite retrieval numeric inputs are normalized before searching.[x] 1.11 P1 derived-view and host boundary slice: FTS5, Orama, Lance, and CodeGraph expose the common lifecycle; the
src/coredependency direction is now guarded by a test;MaintenanceResultis defined in the kernel and rejects invalid progress before it reaches SQLite. Maintenance progress is durable in SQLite. The main MCP server captures an immutableRuntimeContextat bind/activation/switch boundaries and CodeGraph host paths consume its frozen config snapshot.[ ] 1.11 P1 remainder: expose a single adapter registry and migrate any remaining dashboard/diagnostic paths that still inspect raw index state.
[x] 1.11 derived-view adapters: SQLite FTS5 and Orama now expose the common
DerivedViewlifecycle with explicit status, rebuild/refresh, compact, and close behavior; CodeGraph now exposes the same lifecycle over Lite refresh and SQLite compaction. Focused tests cover stale/missing and shutdown states.[ ] 1.11 P2: route observation, Git, and explicit MCP writes through one canonical write pipeline with an idempotent derived-work outbox. Observation inserts and topic-key updates now commit vector backfill, qualification, and claim derivation jobs with the source row. Failed topic updates or linked-record callback failures preserve the previous Orama result. Maintenance jobs persist attempted/succeeded/failed/remaining progress; project-level work completes only after the worker confirms no missing vectors remain. CodeGraph/evidence projections now have an idempotent
observation-projectoutbox job with immediate-success acknowledgement and isolated retry; other canonical write entrypoints still need the same audit.[x] 1.11 P2 active-job race: a write arriving while a deduplicated job runs now requests one follow-up pass in the same SQLite row. Completion, retry exhaustion, lease recovery, and recurring-job reschedule preserve that work; provider cooldown remains bounded. Existing maintenance rows migrate by adding a defaulted
rerun_requestedcolumn.[ ] 1.11 P3: move ranking, freshness, provenance, admission, abstention, and progressive disclosure into one RetrievalFacade. The current slice attaches each result to its own diagnostics and derived-view receipt; compact search, SDK, TUI search, search-index probes, TUI chat, and workset assembly consume request-scoped state. Feedback policy now uses the active canonical data directory and reports feedback omissions separately from embedding fallback. The existing 20-case offline task matrix passes 20/20 with a fresh 40k store gate, but it does not establish improvement on unseen live issue-resolution tasks or remote vectors.
[x] 2026-11-11 local regression evidence: 356 files passed, 3 skipped; 3323 tests passed, 5 skipped; build passed. The 40k gate passed with 32.8ms warm SDK search, 280.6ms HTTP MCP cold search, 421.6MB peak RSS, and all persistence checks. These are local Windows/Node 22 measurements.
[x] 2026-11-11 remote main integrity repair: malformed Git Data API merge tree was corrected in #388; remote main now contains 1820 blobs and all source/test/docs files. #389, #390, and #391 are merged.
[x] 2026-11-05 Windows/Node 22 offline 40k gate: 40,000 seeded records, 74.6s seed, 33.6ms warm SDK search, 418.7ms HTTP MCP cold search, 411.8MB peak RSS, and successful SDK/HTTP/hook persistence checks.
[ ] Release blocker: GitHub Actions cannot start jobs while the repository account is locked for billing; the local npm login also returns E401.
[x] Release integrity guard:
.github/workflows/publish.ymlnow runs for a published GitHub Release as well as manual dispatch, and release events force the npm publish/visibility gate before MCP Registry publication. The existingv1.10.3mismatch still requires restored npm credentials to repair.[x] Issue #385 safety fix: consolidation now tokenizes Unicode letters and numbers, treats two empty fingerprints as unrelated, and retains exact Korean duplicate consolidation. Automatic retention, consolidation, and long-term maintenance re-check
memory.autoCleanupat execution time and complete without mutation when it is disabled. Repository source/tag/release are at 1.10.3, but npm and MCP Registry remain at 1.10.2. Do not claim 1.10.3 is published until those external gates clear.
1.10.3 Patch and Runcrate (2026-11-05)
Issue #365 identified unbounded LanceDB metadata growth from one-row commits, absent compaction, and cold-start re-embedding after cache eviction. The patch batches individual writes, optimizes periodically, checks persisted vector IDs before backfill, and adds
memorix repair indexfor existing tables.PR #366 (Hermes skill paths) and PR #368 (MCP structured results/card) are merged into the patch baseline. PR #369 and the release commit passed all seven CI checks. Tag
v1.10.2, npm with provenance, the MCP Registry, and GitHub Release are published fromd1bb6fa.Local TypeScript checks and build pass. Full suite: 345 files passed, 3 skipped; 3,240 tests passed, 5 skipped.
PR #367 adds native MCP setup for Pi 1.0+ at project
.pi/mcp.jsonand user~/.pi/agent/mcp.json, with stdio/HTTP/none modes. The extension lifecycle capture and generated shared skills remain. PR #367 was merged asf631ad9after the patch tag and is not in the 1.10.2 package. Its combined commit passed seven CI checks; local typecheck and 104 focused tests also passed. One local full-suite run hit a Windows Vitest temporary SSR-cacheENOENTafter 2,577 passing tests; representative files passed on an isolated rerun.PR #372 adds the opt-in Runcrate memory LLM preset with isolated key resolution and OpenAI-compatible routing. It was locally verified with 185 focused tests and merged before this release.
Issues #371, #373, #374, and #375 are fixed in the current release candidate. Local build, typecheck, and full suite pass: 348 files passed, 3 skipped; 3,283 tests passed, 5 skipped. GitHub Actions currently fails before any job step starts, so the remote runner outage is recorded separately from code verification.
Current Product State
1.10.3is the prepared patch release on the 1.10 line. It addresses LanceDB semantic-index growth and two agent integration defects.The release keeps the canonical Dashboard Memory Map, removes the obsolete renderer/dependencies, makes reachable capabilities visible, and preserves the old MCP clients while adding the modern 2026-07-28 core contract.
SDK, CLI, hooks, and HTTP MCP share SQLite as the canonical flat data store. Large-store startup hydration uses bounded Orama batches so health remains responsive without rebalancing the index once per row.
MCP profiles are currently
micro=9,lite=21,team=29, andfull=48. Setup installslite; advanced and compatibility tools remain opt-in so the default agent context stays small.Contributor PR #260 was closed as superseded because its unlocked timeout fallback is unsafe; its diagnosis is credited and the stronger fail-closed fix shipped in 1.8.5. WorkBuddy PR #204 and continuation PR #266 are merged with their authorship retained; Star History PR #265 is also merged.
Release verification is green: MCP v2 direct tests, legacy and modern stdio/HTTP smoke, background concurrency smoke, P3/P4/P5/P6 suites,
npm run lint, the sequential low-memory build, the full local regression, and all 7 remote CI checks passed. Live embedding tests remain intentionally skipped when their environment flag is absent.
1.9.11 Release Closeout (2026-10-17)
[x] Root package metadata, lockfile, MCP Registry metadata, plugin manifests, and changelog entries are synchronized at
1.9.11.[x] The release contains the merged 1.9.x maintenance fixes and the independently validated API Route and session-label contributions listed below.
[x] Tag
v1.9.11, npm[email protected], the official MCP Registry record, and the GitHub Release are published from commit5aad490.
1.9.12 Release Closeout (2026-10-18)
[x] The publish workflow verifies npm registry signatures before build and test, and fails closed instead of retrying without provenance.
[x] Opt-in background npm updates disable lifecycle scripts during install.
[x] Full local and remote release gates passed;
v1.9.12, npm, MCP Registry, and GitHub Release are published from commitd5d8b5f.[x] Begin the 1.10 contract-convergence iteration from the roadmap.
1.10 Iteration Started (2026-10-18)
[x] Context governance receipts now expose freshness, trust, quality, conflict, and evidence count for every optional-evidence decision. The agent-facing prompt and MCP tool schemas remain unchanged.
[x] Focused Workset, governor, graph-context, CLI context, and MCP profile tests pass (54 tests).
[x] Context receipts now also expose retrieval mode, code provider, fallback reason, optional candidate count, selected count, and omitted count. The auto-context and context-pack surfaces pass their known retrieval state.
[x] Budget omissions now carry up to three stable sample IDs per category, without storing raw evidence content in the receipt.
[x] Initial retrieval baseline recorded on Windows Node 22.22.3, 1,000 records, 20 hot SDK runs, embeddings/LLM disabled: specific query p95 9.629ms and broad query p95 12.079ms. This is a local lexical baseline, not a cross-platform SLO.
[x] The same benchmark at 10,000 records produced seed/index 12.633s, specific query p95 17.259ms, and broad query p95 125.991ms. Broad retrieval growth is now a measured 1.10 performance concern.
[x] At 40,000 records the same Windows hot SDK benchmark produced seed/index 45.658s, specific query p95 2.187ms, and broad query p95 84.462ms. The specific path is sensitive to hot-cache/query distribution; broad retrieval remains the stable capacity signal.
[x] The large-store gate now requests the bounded MCP receipt and records receipt assembly separately from end-to-end request time. On Windows Node 22.22.3 with 40,000 records, MCP context was 573.561ms end to end and receipt assembly was 7ms; the gate passed with 428.7MB peak RSS, 318.202ms cold MCP search, 2.733s hook write, and 157.485ms SDK reopen.
[x] Runtime/project binding now returns a privacy-safe
structuredContent.bindingreceipt frommemorix_session_start. It records resolved state, binding source, explicitness, project ID, hashed project root/data directory, and transport across legacy and stateless HTTP; focused server, legacy HTTP, and modern bridge tests pass without exposing raw paths or session handles.[x] The binding receipt now also records verified Git remote state (hash and sanitized host) plus handle lease/expiry state and timestamps. Stateless handle creation uses the project data directory, so a handle cannot redirect the next request to the control-plane base database. Focused binding, serve mode, modern bridge, and startup tests pass.
[x] The adapter registry now generates schema version 1 capability manifests for all 19 agent targets. It covers transport/command, artifacts, hook lifecycle, rules/skills/guidance, scope, lifecycle actions, host-version evidence, runtime requirements, and generation sources. Setup targets are derived from the registry; Qwen is recorded as a hooks-only target rather than a false full-setup target. Registry, setup, doctor, and integration regressions pass.
[x] Agent doctor now includes manifest-derived transport observations, expected artifact categories, lifecycle support, registry source, and parity issues. Host-specific lanes remain explicitly skipped when the generic doctor has no reliable artifact check; Qwen is recognized as hooks-only instead of being treated as a complete MCP setup.
[x] Agent doctor now performs concrete artifact checks for stable rules and hook paths, including project/global scope and file existence. Package and skill roots remain explicit manifest-only data until an install-root contract makes those checks reliable.
[x] The memory ownership matrix is now canonical in
docs/1.3-MEMORY-ARCHITECTURE.md. It records writer, verifier, default reader, and promotion rules for Observation, Reasoning, Claim, Wiki/Workflow, Session/Team, Long-term Memory, and CodeGraph, while keeping Task Workset as a derived delivery view.[x] The existing evaluation harness now defines a 20-case 1.10 task matrix and a stable 15-metric contract across continuity, retrieval, safety, runtime, and integration.
npm run gate:context-matrixvalidates the contract, whilenpm run gate:context-runtimeexecutes the matrix against real runtime paths.[x] The 1.10 runtime matrix passed 20/20 on Windows Node 22.22.3 with embeddings/LLM disabled. Hit precision/recall and stale/conflict rejection were 1.00/1.00, abstention precision was 0.95, matrix p50/p95 was 2ms/255ms, and peak RSS was 428,867,584 bytes.
[x] The packed 40k large-store gate passed with seed/index 45,571.959ms, SDK search 30.378ms, MCP context 518.983ms, receipt assembly 6ms, peak RSS 409.0MB, hook 2,634.153ms, and SDK reopen 85.095ms.
[x] The 100k capacity gate passed with seed/index 113,048.097ms, SDK search 39.71ms, MCP context 1,099.809ms, receipt assembly 7ms, peak RSS 409.4MB, SQLite disk count 100,002, and reopened count 100,001.
[x] The existing session replay baseline is recorded: embeddings disabled, 4/4 fixed questions hit, max turn 277 tokens, 0 over-budget turns, and session dedup reduced duplicate displays from 25% to 18.75% without losing hits. This covers only the mapped continuity/retrieval baseline cases.
[x] The HTTP control-plane
/healthresponse now exposes the same privacy-safe binding receipt withtransport: dashboard, verified project/data-directory hashes, and Git remote state.[x] Retrieval receipts now cross the compact engine, MCP search, and CLI JSON search surfaces. They record schema version, actual mode, candidate/result/ selected/omitted counts, token-budget omissions, fallback reason, token count, and elapsed time without query text, raw memory content, or local paths.
1.10.0 Release Closeout (2026-10-23)
[x] Root package metadata,
server.json, plugin release manifests, andCHANGELOG.mdare synchronized at1.10.0.[x] Release PR #358 merged as commit
f2b7555; all 7 remote release checks, full local regression, package smoke, 40k/100k capacity gates, and npm signature checks passed.[x] Tag
v1.10.0, GitHub Release, npm[email protected], and official MCP Registryio.github.AVIDS2/[email protected]are published. npm integrity issha512-Eyxg9TwkYef4YfmUG3xcB/4y6lqsJQxMStK3QJW51AF6Nb6k8MHoPKyzG0XuyYOTjiAUNA5h9DIAsV3W1KuCiw==.
1.10.1 Release Closeout (2026-10-23)
[x] Contributor PR #359 was revalidated on the current 1.10.0 main line and integrated through PR #361 (
6558c8f). Cheaper Inference is opt-in, uses a dedicated key, and preserves the embedding/memcode provider boundaries.[x] The original #359 was closed as superseded with the author attribution preserved in the integrated commit.
[x] The provider and derived-view receipt hardening are now staged in
CHANGELOG.mdas1.10.1release content.[x] Release PR #363 merged as commit
7c51d34; all 7 release checks, full regression, build, package smoke, and npm signature audit passed.[x] Tag
v1.10.1, GitHub Release, npm[email protected], and official MCP Registryio.github.AVIDS2/[email protected]are published. npm integrity issha512-Ic2xYLW/22KhnfX9/8/hJMeI+mPAdxR/TudcsH2ZpaCx74T5b+m3xdeOnyfHRnlbW/vXKqB31ezS6puVHLiZBQ==.[x] Derived-view receipt hardening now reports FTS, Orama, embedding, and CodeGraph generation/freshness/rebuild status/failure reason through the bounded context and retrieval receipts. This is also unreleased and must be included in the next package release.
[x] The reproducible hot SDK benchmark was run at v1.9.11 and current 1.10 main with 1,000 records and 20 runs: specific p95 9.283ms -> 8.925ms and broad p95 12.301ms -> 12.298ms. This is a no-regression baseline, not an SLO or a statistical performance claim.
1.9.x Maintenance and Ecosystem Closeout (2026-10-16)
[x] Issue #330 was implemented through PR #333 (
477e968) and merged in17ec78a. The in-memory Orama index preserves Latin tokenization and adds bounded CJK character unigrams/bigrams for Chinese, Japanese, and Korean queries. The standardnpm testentry was also restored by removing the unsupported Vitest 5--minWorkers=1flag. Local lint/build/focused tests and the full suite pass; Ubuntu, Windows, macOS, Docker, typecheck, Node 26, and registry CI all pass. #330 is closed.[x] Issue #328 and the existing #3/#322-#325 fixes were implemented through PR #331 (
82e05b0) and merged inf9331a8. Its Node 26 hook smoke and complete cross-platform CI pass; GitHub closed the linked issues after merge.[x] The 2026-10 ecosystem scan used
last30days-skillv3.28.0 plus Tavily. The strongest signals were bounded on-demand retrieval, progressive disclosure for MCP/skills, and explicit provenance/freshness against memory or context poisoning. Memorix already has admission, evidence, feedback, freshness, retention, and abstention primitives, so no speculative trust score subsystem was added; the next useful work is exposing those existing signals more consistently in receipts and operator views.[x] #320 API Route provider contribution was independently validated and merged in
ea3ce86; it remains opt-in and does not change the default model or embedding paths. #329 was also independently reviewed and merged ind13cfa6.[x] PR #344 (
ed7f0df) adds MiniMax M3.1 Flash support across the AI package and memcode: direct global/China metadata, provider-specific thinking normalization, the verified OpenRouter free route, legacy model lookup compatibility, and Flash as the memcode default. Its 7/7 CI passed; no live inference or unverified OpenCode route was claimed.[ ] #297 is an external awesome-list submission rather than repository code work. #327 still lacks reproducible package/security evidence; #313 and #49 remain integration-boundary discussions.
1.9.5 Closeout (2026-09-20)
The release is v1.9.5 on main (658231f). The release gates below are
complete. Detailed acceptance criteria and the public issue/PR disposition live in
docs/KNOWN_ISSUES_AND_ROADMAP.md.
[x] P1 HTTP control-plane boundary and lifecycle: loopback default, explicit non-loopback security policy, body limits, synchronous listen failures, supervised background startup, and shutdown cleanup shipped.
[x] P1 project isolation: graph persistence, Dashboard, MCP, and legacy graph migration now carry project ownership.
[x] P1 migration safety: observation and subdirectory migrations are locked/atomic, project-aware, and fail closed on malformed source data.
[x] P1 store ownership and SQLite concurrency: SDK sibling lifetimes, sync ID allocation/tombstones, stale lock ownership, and release contracts have regression coverage.
[x] P2 capacity budgets: dashboard/team query caps, failed-job retention, embedding cache budgets, and long-lived project cache eviction shipped in merge commit
3a3dd49through PR #306. The full local regression, real background-start smoke, and all seven remote CI checks passed.
1.9.x Capacity Slice (2026-09-21)
[x] TeamStore agents, locks, tasks, and inboxes are SQL-limited to 100 rows by default and 500 maximum; task/agent detail queries remain separate.
[x] Completed maintenance history is retained for 7 days and failed diagnostics for 30 days, both covered by retention tests.
[x] API, FastEmbed, and Transformers embedding caches enforce byte budgets; FastEmbed rejects oversized cache files before loading them.
[x] HTTP project-directory, TeamStore, and Dashboard store caches use bounded LRU-style maps instead of growing for every requested project.
[x] Local verification: lint, build, focused capacity tests (139 passed), and full regression (331 files / 3149 tests passed / 4 live embedding skipped).
[x] Remote verification: Linux, macOS, Windows, Docker control plane, Node 26 SQLite, typecheck, and MCP metadata checks all passed in PR #306.
[x] Large-store gate: 40,000 records passed on Windows/Node 22 with 51.4 s seed/index, 25.4 ms lexical search, 129.8 ms SDK reopen, 408.7 MiB peak RSS, durable HTTP/MCP/hook writes, and no failed checks.
1.9.x Task Continuity Ledger (2026-09-21)
[x] Added a project-scoped append-only SQLite ledger for task, requirement, decision, verification, risk, and outcome events.
[x] Added grouped MCP/CLI operations (
start,record,show,list,close) with bounded inputs, credential redaction, and project isolation.[x] Added optional
taskIdloading to Project Context so the bounded Workset includes continuity without changing the default prompt budget or micro tool profile.[x] Added storage, Workset, MCP, profile, and HTTP integration tests.
[x] Added a deterministic outcome projection and replay cases for validated, at-risk, in-progress, and unverified task states. The projection is visible in structured receipts only; it does not rewrite memory relevance.
1.9.6 Release Closeout (2026-09-22)
The release is v1.9.6 on main. PR #312 merged the infrastructure closeout
after the full Ubuntu, Windows, macOS, Docker, typecheck, native SQLite, and MCP
metadata gates passed.
[x] Version metadata, Registry metadata, plugin manifests, changelog, and current product-line documentation are synchronized at
1.9.6.[x] Local full regression and MCP/HTTP/background smoke verification passed.
[x] The release keeps the 1.9.x line; no 1.10 version jump was introduced.
1.9.7 Release Closeout (2026-09-28)
[x] Merged contributor PR #315: transient
SQLITE_BUSYduring FTS5 setup is retried before the handle is marked unavailable.[x] Merged contributor PR #316: runtime embedding failures use the durable lexical search path for large stores instead of returning a silent empty set.
[x] Follow-up coverage also treats provider disappearance and runtime vector dimension mismatch as embedding-unavailable states, preserving the same lexical fallback contract.
[ ] The full local regression still has two unrelated non-Git CLI prompt assertions in
tests/integration/release-blockers.test.ts; the affected search/fallback suites and typecheck pass.[x] npm, GitHub Release, and the official MCP Registry publish workflow are synchronized at
1.9.7.
1.9.8 Release Closeout (2026-10-02)
[x] Closed #318 through PR #319: generated OpenCode plugins now support the v2 default
id/setupcontract while retaining v1 compatibility.[x] Added event subscription, tool-hook, cleanup, and host session-ID coverage for the generated v2 plugin.
[x] PR #319 passed Ubuntu, macOS, Windows, Docker, typecheck, native SQLite, and MCP Registry metadata checks before merge.
[x] npm, GitHub Release, plugin manifests, and the official MCP Registry manifest are synchronized at
1.9.8.
1.9.9 Release Closeout (2026-10-02)
[x] Merged contributor PR #314: added an opt-in Requesty OpenAI-compatible memory/embedding provider with provider-specific key isolation and no new dependency.
[x] Independent verification passed: full build, focused provider/config tests (136 passed), and full regression (336 files passed, 2 skipped; 3179 tests passed, 4 skipped).
[x] npm, GitHub Release, plugin manifests, and the official MCP Registry manifest are synchronized at
1.9.9.
1.9.10 Release Closeout (2026-10-08)
[x] Merged #321 through PR #326: OpenCode 1.x now accepts the dual plugin export, receives lifecycle/file/command/message events through its generic
eventhook, and gets the Windows timeout mitigation.[x] PR #326 passed Ubuntu, Windows, macOS, Docker, typecheck, native SQLite, and MCP Registry metadata checks.
[x] npm, GitHub Release, plugin manifests, and the official MCP Registry manifest are synchronized at
1.9.10.
1.9.6 Infrastructure Closeout (2026-09-22)
[x] Added leased, observable SQLite handle registry with idle LRU eviction; HTTP dashboard/team/runtime caches release leases on eviction and shutdown.
[x] Added bounded HTTP session admission (
MEMORIX_MAX_HTTP_SESSIONS), SQLite/runtime/session/event-loop health fields, and MCP binding root/expiry indexes.[x] Kept the official modern MCP per-request protocol server while pooling project business runtimes behind a bounded reference-counted pool keyed by shared data directory plus project root. The legacy singleton business layer is reactivated before each business call and protected by a request gate; long-lived SSE GET streams do not occupy it.
[x] Extended continuity with verification obligation IDs, risk-aware outcome state, idempotency keys, and immediate transactions for the event cap.
[x] Added a privacy-safe orchestrator effect ledger and structured pipeline trace fields for attempts, risk tiers, effect keys, and bounded memory refs.
[x] Added the deterministic cross-session memory quality gate and package script
npm run gate:memory-quality.
New GitHub work
#301 / #303: merged through #305 and shipped in 1.9.5. Explicit
--mcp httpnow configures Grok and packaged agents for one HTTP control plane; native setup and background smoke passed.#302 / #304: merged through #305 and shipped in 1.9.5 after scope-aware tombstone handling, cross-project ID remapping, explicit per-user namespace validation, and mixed-project SQLite tests.
#300: Atlas Cloud memory preset is being carried through the 1.9.x closeout with isolated configuration tests and the normal CI gate; it is an optional provider path and does not change the default.
#283: resolved as documentation-only; the OpenAI-compatible OrcaRouter example and fixed-model/fallback guidance are now in
docs/CONFIGURATION.md.#297: external awesome-list request, dependent on the other repository's contribution workflow, not a Memorix code blocker. #49 and #3 remain external integration proposals with no host contract that Memorix can verify locally.
#313: hosted memory backend proposal remains an RFC/integration lead; any implementation must use the existing provider-agnostic sync contract and keep local SQLite canonical.
#314: merged and shipped in
1.9.9after independent full-build and full-regression verification; the provider remains opt-in and local SQLite remains canonical.#320: API Route provider contribution was independently verified with lint, build, 139 focused tests, and the full regression (337 files passed, 2 skipped; 3197 tests passed, 4 skipped). It remains open because GitHub's merge endpoint returned an internal error twice; no code change has been applied from it to
main.#321 / #326: merged and shipped in
1.9.10; the dual export now suppliesserver, v1 events use the genericeventhook, and Windows hook delivery uses a 30-second timeout mitigation.#318 / #319: merged and shipped in
1.9.8; OpenCode v2 plugin loading now supports the defaultid/setupcontract while preserving v1 clients.
1.8.7 CodeGraph Main Line (2026-09-02)
The published release is the CodeGraph foundation upgrade. Its single canonical plan and acceptance contract is docs/1.8.7-CODEGRAPH.md. The work is deliberately split into P0 through P6:
P0: deterministic relation-accuracy and performance baseline.
P1: TypeScript/JavaScript/TSX AST parsing with honest Lite fallback.
P2: source-backed definitions, references, calls, imports/exports, inheritance, and test relations.
P3: atomic semantic-slice updates, affected dependency closure, and failure recovery.
P4: one task-shaped Agent context receipt instead of provider-specific orchestration.
P5: validated SCIP/external-provider normalization without configuration takeover.
P6: Dashboard, cross-platform, scale, precision, latency, and user-facing smoke acceptance.
Local development uses Node/npm directly on E:. Docker is reserved for hosted CI/VPS deployment and is not part of local verification.
1.8.7 Release Evidence
TypeScript Compiler API indexing is persisted with source-backed symbols, imports/exports, references, calls, inheritance, test edges, parser errors, and bounded task context. Unsupported languages retain Lite structural facts.
Incremental refresh re-indexes local import dependents and replaces semantic slices atomically. Compiler failure leaves Lite facts usable and reports a partial/failed semantic state instead of claiming readiness.
The Dashboard exposes
/api/codegraphand a separate CodeGraph health strip; it does not confuse the code evidence plane with the Memory Map.Local gates:
npm run lint, sequentialnpm run build, offline lock check,316test files passed,3038tests passed, stdio legacy/modern smoke, modern HTTP smoke, stateless handle/restart/isolation smoke, Dashboard API smoke, and a generated 100-file/1000-symbol CLI scale probe.The external
@hasmcp/mcp-spec-testrunner remains not verified on this Windows host because its own Node test runner passesE:file paths as invalid ESM URLs before contacting the target. Official v2 direct tests and real Memorix stdio/HTTP smoke are the release evidence for this release.
Ecosystem Watch (2026-08-28)
Recent public changes reinforce the current product boundary:
The MCP 2026-07-28 specification makes requests self-describing and stateless-first, adds
server/discover, and moves long-running work into the officialio.modelcontextprotocol/tasksextension described in the MCP changelog. Memorix now uses the official SDK v2 for the modern core while retaining the legacy path. It explicitly rejects Tasks because it has no durable MCP task implementation, and reports zero-TTL list hints instead of pretending to have a reusable list cache.TencentDB Agent Memory 2.0.1 emphasizes cold-start readiness, governed assets, cross-agent loading, and faster Wiki/CodeGraph processing. The useful lesson for Memorix is to expose asset readiness and provenance clearly, while keeping local project evidence authoritative instead of turning Memorix into a remote proxy hub.
ContextBench evaluates coding-agent context recall, precision, and efficiency during issue resolution, and reports that complex scaffolding does not automatically improve context use. This supports Memorix's bounded Workset and single-entry Autopilot approach.
MemoryArena evaluates interdependent tasks across sessions, while MemSyco-Bench tests whether retrieved memory causes unjustified agreement, scope mistakes, or failure to reject stale facts. These are direct signals to keep continuity, evidence, feedback, conflict handling, and abstention separate.
The next meaningful product work is therefore not “more memory fields”. It is making the existing lifecycle observable and trustworthy: the agent should know what is available, why a memory was selected, when it is stale, and when it is safer to abstain.
Completed 1.8.5 Closeout (2026-08-30)
P0 through P6 were completed in one release line, followed by the full local and remote gates. The release is published; the remaining open items below are separate future suggestions or contributor revisions, not hidden release work.
P0 — Reconcile the candidate and the public surface
Apply the cleanup and transport changes to current
mainonly after the final candidate has passed its full local gate and is rebuilt from that tree.Keep the canonical Dashboard Memory Map, remove dead renderer/dependency paths, make profile counts truthful, and make CLI, MCP, README, docs, and all installed agent guidance describe the same reachable tools.
Keep
micro=9,lite=21,team=29, andfull=48; do not solve tool-schema bloat by silently exposing all 48 tools to every agent.
P1 — Close the real runtime reliability gaps
Resolve #259/#260 with a real cross-platform concurrency test. The critical section must never fall back to an unlocked check-and-spawn after contention; it must either observe the existing service, wait/recheck, or fail with a useful retry message. Verify stale-lock recovery, duplicate-process cleanup, Windows hidden children, macOS launch-agent startup, and Linux service start.
Add a single readiness/status receipt showing service PID, endpoint, profile, project binding, startup state, and last failure without exposing secrets.
Make every foreground path bounded and cancellable, and make provider errors distinguish “saved locally” from “embedding still pending” so a successful write never feels hung.
P2 — Finish MCP compatibility in this same line
Keep legacy 2025-era
initializeand Streamable HTTP clients working while adding the 2026-07-28 stateless path, using the official SDK path rather than accumulating patches around the old SDK.Implement and test request metadata/version negotiation, complete
server/discover,resultType, response_meta, list cache hints, explicit unsupported-version errors, and the subscriptions extension where Memorix can give truthful semantics. Tasks remain explicitly rejected until a durable task contract exists.Run the official v2 direct tests plus real stdio and HTTP clients. The third-party conformance runner must be recorded as an external harness failure when its Windows ESM path bug prevents it from reaching the server; unsupported features must still be rejected or reported explicitly, never represented as an empty success.
P3 — Make memory selection honest and useful
Every task Workset gets one compact receipt: what was selected, why it was selected, source/freshness, coverage, omitted material, token budget, and whether the safe decision was to abstain.
Unify stale, conflict, feedback, retention, and provenance decisions behind the same lifecycle calculation. A memory can be useful evidence, a hint, or something to ignore; it must not become truth merely because retrieval found it.
Add deterministic multi-session and conflict tests inspired by ContextBench, MemoryArena, and MemSyco-Bench: recall, precision, noise, latency, stale rejection, scope control, and “do not agree with bad memory”.
P4 — Finish CodeGraph and Knowledge Workspace integration
Produce one clear context receipt that distinguishes current Code State, local Lite structure, and optional semantic CodeGraph. Include freshness, coverage, provenance, limits, and the exact portion delivered to the Agent.
Keep graph relations source-backed and bounded. The Dashboard, CLI, MCP, and Knowledge Workspace must not show different “truths” for the same relation.
Make reviewed claims, durable pages, workflow inheritance, and agent/project scope visibly separate. No raw session dump or arbitrary generated document may silently become durable knowledge.
P5 — Finish integrations without changing users’ Agent settings
Re-verify Claude Code, Codex, OpenCode, Pi/Oh-my-Pi, Gemini, Copilot, Cursor, Antigravity, Hermes, DeepSeek Harness, and WorkBuddy from their real supported entry points. Project and global installs must remain isolated and idempotent.
Accept #204 only if its current MCP scopes and skill-less behavior match official WorkBuddy documentation; preserve the contributor credit. Otherwise request the smallest missing change and keep the issue open with evidence.
Treat #3 as MCP/rules support until Qwen or iFlow publishes a verifiable hook contract. Treat #49 as an external-reachability integration boundary, not a reason to turn Memorix into an email or remote identity service.
P6 — Finish the operator experience and repository hygiene
Keep Dashboard pages read-mostly and tied to real sources: readiness, observations, evidence, retention, sessions, coordination, Knowledge, and the single Memory Map. Empty, stale, and failed states must look different.
Verify desktop and narrow-screen layouts, especially long names, forms, graph labels, and error states. Keep the UI quiet and operational rather than adding decorative pages for every backend table.
Remove private operator files, credentials, raw session captures, stale generated artifacts, and unowned root directories from the tracked surface; retain only reproducible fixtures and canonical documentation.
P7 — Release and issue closeout result
[x] #202 closed with the measured memory-hygiene results.
[x] #249 closed with the modern supported contract and explicit, tested rejection of durable Tasks; no complete-conformance claim is made.
[x] #259 closed after the duplicate-process gate passed; #260 was closed as superseded because its fallback is still unsafe, with contributor credit retained in the issue history.
[x] #244 merged with the bot-generated Star History assets after raw-asset reachability and data checks.
[x] README, Chinese README, API reference, setup docs, changelog, plugin manifests, release contract, and release notes were synchronized before publishing
1.8.5.
1.8.6 Release Line (2026-09-01)
This patch release contains only already-reviewed changes from the public contributor PRs and the release metadata update:
WorkBuddy project/global MCP configuration, project guidance, no-hook lifecycle handling, and uninstall discovery (#204, @wjxn13).
Continuation intent routing that keeps bare filler cheap without rejecting short real tasks (#266, @Tom-Ma-Ming).
Refreshed self-hosted Star History assets (#265).
The release gate is local Node/npm verification plus the repository's remote CI and publish workflow. Docker remains a VPS/hosted deployment artifact and is not used for local verification.
Agent-Memory Landscape Decision (2026-08-17)
Current ecosystem research focused on TencentDB Agent Memory v2 and the upstream CodeGraph project. The signal is not that Memorix should become a remote "memory hub" or duplicate a parser engine. The useful direction is a local, evidence-bound coding-memory product with a first-class semantic code provider when the operator chooses one.
Tencent's product model unifies chat memory, skills, wiki pages, and code graphs as assignable assets. Its useful lessons are explicit readiness, compact session bootstrap, background processing receipts, and showing an Agent what assets are active. Its recent beta issue stream also demonstrates the operational cost of central queues, transactions, and broad proxy interception.
Memorix keeps its differentiator: its canonical evidence is the current local Git worktree, versioned code state, reviewed knowledge, and task-sized worksets. It must not clone private repositories to a service, intercept all model traffic through a proxy, alter unrelated Agent configuration, or present a generated graph as authoritative source truth.
The bundled Lite index is a useful local structural fallback, not a semantic CodeGraph. A healthy external CodeGraph already adds semantic context, but the UX currently describes persisted Lite state and semantic overlay state separately. This must become one explicit receipt: what was used for this task, its freshness, coverage, limits, and the token budget delivered.
The first product slice is therefore: keep JSON/context output genuinely bounded by default; make Code State versus Semantic CodeGraph unambiguous; then add an opt-in CodeGraph lifecycle adapter (detect, initialize, observe freshness, and queue bounded sync). It must never run an upstream installer that edits the user's Agent configuration.
Historical Stability Baseline (1.5.0, stress-tested and measured)
Stress exams live in
tests/stress/and run in the normal suite:Corpus: 2,000 observations, 25 real searches, planted needles all hit, ranking deterministic, project isolation held, tokens 168..170.
Concurrency: 60 parallel writes with zero loss; 20 parallel same-topic upserts converge to one active record.
Session churn: 45 start/end cycles across 3 projects plus 10 parallel starts — at most one active session per project.
Long-term scale: 300 records, maintenance archives exactly the stale set (60) and supersedes exactly the older halves (40); candidates untouched.
CLI repeat: 15 repeated add/list invocations with stable exit codes and no id reuse.
Embedding lane on the operator's OpenRouter environment:
qwen/qwen3-embedding-8b(4096d) verified live — 100-text batch in ~9.5s, cache round-trip, singleton stability. When the base URL is OpenRouter and no model is set, the default is nowqwen/qwen3-embedding-8binstead of the OpenAI-only model (pinned bytests/config/embedding-default-model.test.ts). Image analysis can use a multimodal OpenRouter model (qwen/qwen3-vl-8b-instruct) through the LLM lane; documented in CONFIGURATION.md.Live embedding exams stay env-gated (
MEMORIX_RUN_LIVE_EMBEDDING_TESTS=1) and never run in CI.
Historical Memory Hygiene Baseline (1.4.x, measured)
Session dedup:
memorix_searchdemotes rows already shown in the same session and remembers the surfaced set. Session-replay exam: duplicate rate 25% → 19%, hits 4/4 and token ceiling unchanged.Guidance hygiene: generated guidance now teaches store-the-underivable, dual-channel feedback (record successes too), verify-before-use, and the ignore contract. Guidance exam: 0/4 → 4/4 rules inside the ceiling.
Data-dir boundary pinned by
tests/config/data-dir-boundary.test.ts(project config cannot redirect storage).Always-on brief: every task brief opens with a "You and this workspace" block — user profile, latest session summary, and recent durable long-term memories. Exam: 0/3 → 3/3 inside the token ceiling; older fixtures without the block still pass.
Long-term self-maintenance (rule leg, no LLM required):
Explicit requests (MCP
longTerm: true, CLI add/promote) auto-qualify on the spot instead of waiting for a manual review.Stale qualified/approved records auto-archive after 30 days without activity; newer records auto-supersede same-title records in the same scope/kind.
Runs in the existing durable maintenance lane (
long-term-maintenancejob kind): once at session startup, again after each explicit promotion, then a daily reschedule heartbeat. Candidates are never auto-advanced; approved records are never auto-archived unless stale.Exam:
tests/evaluation/long-term-maintenance.test.ts0/4 → 4/4, deterministic and offline.
Cold-feature sweep (2026-08-14, five-way audit of the whole surface): the "taught tools vs installed profile" gap is fixed —
memorix setupnow installs--mode liteand the repo guidance marks full-only tools;memorix purgegives memory retirement a real CLI entry; gitingest_on_commit/max_diff_sizenow actually gate ingestion; the media MCP schema hides gated actions; dead code removal, config honesty, and doc corrections land in the same batch. Exams added per item.Exams live in
tests/evaluation/and are deterministic and offline.
Active Objectives
Keep the public repository free of operator state, local paths, credentials, raw session captures, and one-off development artifacts.
Keep the released integration surface honest: native-host validation is still required whenever a newly supported agent CLI becomes available.
Review open contributor work independently; do not merge it merely because it overlaps a planned product direction.
Make every bounded foreground path cancel the network work it starts, and make non-retryable provider failures fail once with a useful diagnostic.
Keep the 40,000-record gate fail-closed across SDK, HTTP MCP, hooks, and canonical persistence before every release that changes retrieval/storage.
Completed Contribution Decisions
#153: accepted and merged with focused MiniMax M3 video-input tests.
#178: accepted and merged (squash) with author and co-author credit preserved on the merge commit. Adds MiniMax image-to-image via
subject_referenceacross the provider layer, the media CLI, and the gatedmemorix_mediaMCP tool. Changelog credit for @octo-patch lands with the next release, following the #153 precedent.#140: accepted and merged after replacing its stale release timeline with a maintained boundary-and-roadmap document.
#33, #31, #30: not merged into the superseding media/retrieval architecture. Their original authorship is preserved through #173 (PDF derivations), #174 (audio derivatives), and #175 (graph-assisted evidence expansion).
#136, #151, #179, #147, and #152: withdrawn research work. Do not use them as product or release evidence.
Operating Rules
Git,
package.json, andCHANGELOG.mdare live product facts; this document records intent and next actions, not a replacement for them.Never write secrets, account identifiers, local absolute paths, raw chat transcripts, or local tool state into tracked files.
Keep reusable public docs and test fixtures only when they are source-backed, non-sensitive, and exercised by the repository.
Do not rewrite Git history without explicit maintainer approval. Removing a file from the current tree does not erase existing forks or historical clones.
Immediate Next Step
1.8.7is published and all release gates are recorded above. The current 1.9.x maintenance closeout has no known internal release blocker.#49 and #3 remain independent integration proposals, not hidden maintenance work: neither has a verifiable host contract that can be implemented safely in the current line.
Historical Release Notes
The #174 controlled audio derivations, #175 governed one-hop graph evidence, #185 CodeBuddy integration, and #184 Star History CI verification are merged and included in the published 1.4.3 release. The local machine does not have the CodeBuddy CLI installed, so a native CodeBuddy-host smoke remains a documented follow-up rather than claimed release evidence. Legacy requests #49/#3 remain independent of the 1.4.4 line.
1.4.4 published (2026-08-14) through the GitHub publish workflow; the #194 reporter has been notified with the shipped version.
DeepSeek Harness support implemented and merged via PR #201 (2026-08-14):
memorix setup --agent dshinstalls the@deepseek-ai/dsh-mcp-clientrow into$DSH_HOME/cordis.patch.yml, AGENTS.md guidance, and skills. Native validation composed the generated patch with the real@deepseek-ai/[email protected]launcher. Shipped in the published 1.4.5 release.Branch protection on
mainwas synced with the current CI matrix (2026-08-14): the required status contexts referenced removed Node 20 test jobs, which blocked every PR from merging. Required contexts are now the livetest (ubuntu-latest, 22),test (windows-latest, 22), andtypecheck; the one-approval review requirement is unchanged.Old GitHub releases before v1.2.0 were pruned from the Releases page (2026-08-14); git tags and the full CHANGELOG history are preserved.
512 files · 453 not served here
- .codegraph/.gitignore (not served here)
- .dockerignore (not served here)
- .env.example (not served here)
- .gitattributes (not served here)
- .github/hooks/memorix.json (not served here)
- .github/workflows/ci.yml (not served here)
- .github/workflows/publish.yml (not served here)
- .gitignore (not served here)
- .gitmodules (not served here)
- .npmignore (not served here)
- .opencode/plugins/memorix.js (not served here)
- .trae/rules/project_rules.md (not served here)
- .windsurf/workflows/deploy.md (not served here)
- .windsurf/workflows/pr-review.md (not served here)
- ACTIVE_WORK.md
- ATTRIBUTION.md
- AUTOGINEER-RUNS.md
- CHANGELOG.md
- CLAUDE.md
- Dockerfile (not served here)
- GEMINI.md
- LICENSE
- README.md
- README.zh-CN.md
- TEAM.md
- articles/dev-to-en.md (not served here)
- articles/product-hunt-en.md (not served here)
- articles/reddit-en.md (not served here)
- articles/show-hn-en.md (not served here)
- articles/xiaohongshu-zh.md (not served here)
- assets/logo.png (not served here)
- assets/readme-hero.svg (not served here)
- assets/readme-logo-bridge.png (not served here)
- assets/readme-tui-workbench.png (not served here)
- assets/tags/light/section-acknowledgements.svg (not served here)
- assets/tags/light/section-agents.svg (not served here)
- assets/tags/light/section-configuration.svg (not served here)
- assets/tags/light/section-development.svg (not served here)
- assets/tags/light/section-docker.svg (not served here)
- assets/tags/light/section-docs.svg (not served here)
- assets/tags/light/section-install.svg (not served here)
- assets/tags/light/section-license.svg (not served here)
- assets/tags/light/section-memcode.svg (not served here)
- assets/tags/light/section-memory-model.svg (not served here)
- assets/tags/light/section-overview.svg (not served here)
- assets/tags/light/section-quick-start.svg (not served here)
- assets/tags/light/section-runtime.svg (not served here)
- assets/tags/light/section-sdk.svg (not served here)
- assets/tags/section-acknowledgements.svg (not served here)
- assets/tags/section-agents.svg (not served here)
- assets/tags/section-configuration.svg (not served here)
- assets/tags/section-development.svg (not served here)
- assets/tags/section-docker.svg (not served here)
- assets/tags/section-docs.svg (not served here)
- assets/tags/section-install.svg (not served here)
- assets/tags/section-license.svg (not served here)
- assets/tags/section-memcode.svg (not served here)
- assets/tags/section-memory-model.svg (not served here)
- assets/tags/section-overview.svg (not served here)
- assets/tags/section-quick-start.svg (not served here)
- assets/tags/section-runtime.svg (not served here)
- assets/tags/section-sdk.svg (not served here)
- bun.lock (not served here)
- compose.yaml (not served here)
- docs/1.2.0-CLAIM-LEDGER.md
- docs/1.2.0-CODE-STATE.md
- docs/1.2.0-DEVELOPMENT-CHARTER.md
- docs/1.2.0-DYNAMIC-LIFECYCLE.md
- docs/1.2.0-EVALUATION-HARNESS.md
- docs/1.2.0-IMPLEMENTATION-PLAN.md
- docs/1.2.0-KNOWLEDGE-WORKFLOW-RESEARCH.md
- docs/1.2.0-KNOWLEDGE-WORKSPACE.md
- docs/1.2.0-PRODUCT-STORY.md
- docs/1.2.0-PROVIDER-QUALITY.md
- docs/1.2.0-WORKFLOW-INHERITANCE.md
- docs/1.2.0-WORKSET-RETRIEVAL.md
- docs/1.2.2-MEMORY-CONTROL-PLANE.md
- docs/1.2.4-PERSISTENT-MEMORY-DELIVERY.md
- docs/1.2.5-RETRIEVAL-PERFORMANCE.md
- docs/1.2.7-CONTEXT-CONTINUITY.md
- docs/1.3-MEMORY-ARCHITECTURE.md
- docs/1.3.3-MULTIMODAL-MEDIA-AND-MCP-COMPAT.md
- docs/1.4.2-EVIDENCE-GOVERNED-MEMORY-SPEC.md
- docs/1.4.3-CONTROLLED-AUDIO-TRANSCRIPTS.md
- docs/1.4.3-CONTROLLED-PDF-DERIVATIONS.md
- docs/1.4.3-GRAPH-EVIDENCE-EXPANSION.md
- docs/1.4.5-AGENT-AUTO-MEMORY-RESEARCH.md
- docs/1.8.0-RELEASE-CANDIDATE-SPEC.md
- docs/1.8.7-CODEGRAPH.md
- docs/AGENT_OPERATOR_PLAYBOOK.md
- docs/AI_CONTEXT.md
- docs/API_REFERENCE.md
- docs/ARCHITECTURE.md
- docs/CLOUD_SYNC_AND_MULTI_AGENT_RESEARCH.md
- docs/CONFIGURATION.md
- docs/DASHBOARD.md
- docs/DESIGN_DECISIONS.md
- docs/DEVELOPMENT.md
- docs/DOCKER.md
- docs/GIT_MEMORY.md
- docs/INTEGRATIONS.md
- docs/KNOWN_ISSUES_AND_ROADMAP.md
- docs/MEMCODE.md
- docs/MEMORY_FORMATION_PIPELINE.md
- docs/MODULES.md
- docs/MULTI-DEVICE-SYNC-RESEARCH.md
- docs/PERFORMANCE.md
- docs/PI_UPSTREAM.md
- docs/README.md
- docs/ROADMAP-1.9.12-2.0.md
- docs/SETUP.md
- docs/hooks-architecture.md
- docs/knowledge/workflows/memorix-release.md (not served here)
- docs/memcode/DESIGN.md (not served here)
- docs/memcode/HANDOFF.md (not served here)
- docs/superpowers/plans/2026-06-12-memcode-native-hooks-plan.md (not served here)
- docs/superpowers/plans/2026-06-14-unified-toml-config-plan.md (not served here)
- docs/superpowers/plans/2026-06-29-agent-autopilot-entrypoints.md (not served here)
- docs/superpowers/plans/2026-06-29-auto-context-layer.md (not served here)
- docs/superpowers/plans/2026-06-29-codegraph-memory-mvp.md (not served here)
- docs/superpowers/plans/2026-07-02-memory-autopilot-1.1.5.md (not served here)
- docs/superpowers/plans/2026-07-07-task-lensed-memory-brief.md (not served here)
- docs/superpowers/specs/2026-06-12-memcode-native-hooks-design.md (not served here)
- docs/superpowers/specs/2026-06-14-unified-toml-config-design.md (not served here)
- docs/superpowers/specs/2026-06-29-auto-context-layer-design.md (not served here)
- docs/superpowers/specs/2026-06-29-codegraph-memory-context-fabric-design.md (not served here)
- docs/superpowers/specs/2026-07-02-memory-autopilot-1.1.5-design.md (not served here)
- docs/superpowers/specs/2026-07-07-task-lensed-memory-brief-design.md (not served here)
- docs/superpowers/specs/2026-07-14-runtime-integrity-1.1.11-design.md (not served here)
- examples/CLAUDE.md (not served here)
- examples/claude-desktop-config.json (not served here)
- examples/cursor-mcp.json (not served here)
- examples/windsurf-mcp.json (not served here)
- llms-full.txt (not served here)
- llms.txt (not served here)
- memorix.example.yml (not served here)
- package-lock.json (not served here)
- package.json (not served here)
- packages/agent-core/README.md (not served here)
- packages/agent-core/docs/agent-harness.md (not served here)
- packages/agent-core/docs/durable-harness.md (not served here)
- packages/agent-core/docs/hooks.md (not served here)
- packages/agent-core/docs/observability.md (not served here)
- packages/agent-core/package.json (not served here)
- packages/agent-core/src/agent-loop.ts (not served here)
- packages/agent-core/src/agent.ts (not served here)
- packages/agent-core/src/harness/agent-harness.ts (not served here)
- packages/agent-core/src/harness/compaction/branch-summarization.ts (not served here)
- packages/agent-core/src/harness/compaction/compaction.ts (not served here)
- packages/agent-core/src/harness/compaction/utils.ts (not served here)
- packages/agent-core/src/harness/env/nodejs.ts (not served here)
- packages/agent-core/src/harness/messages.ts (not served here)
- packages/agent-core/src/harness/prompt-templates.ts (not served here)
- packages/agent-core/src/harness/session/jsonl-repo.ts (not served here)
- packages/agent-core/src/harness/session/jsonl-storage.ts (not served here)
- packages/agent-core/src/harness/session/memory-repo.ts (not served here)
- packages/agent-core/src/harness/session/memory-storage.ts (not served here)
- packages/agent-core/src/harness/session/repo-utils.ts (not served here)
- packages/agent-core/src/harness/session/session.ts (not served here)
- packages/agent-core/src/harness/session/uuid.ts (not served here)
- packages/agent-core/src/harness/skills.ts (not served here)
- packages/agent-core/src/harness/system-prompt.ts (not served here)
- packages/agent-core/src/harness/types.ts (not served here)
- packages/agent-core/src/harness/utils/shell-output.ts (not served here)
- packages/agent-core/src/harness/utils/truncate.ts (not served here)
- packages/agent-core/src/index.ts (not served here)
- packages/agent-core/src/node.ts (not served here)
- packages/agent-core/src/proxy.ts (not served here)
- packages/agent-core/src/types.ts (not served here)
- packages/agent-core/test/agent-loop.test.ts (not served here)
- packages/agent-core/test/agent.test.ts (not served here)
- packages/agent-core/test/e2e.test.ts (not served here)
- packages/agent-core/test/harness/agent-harness-stream.test.ts (not served here)
- packages/agent-core/test/harness/agent-harness.test.ts (not served here)
- packages/agent-core/test/harness/compaction.test.ts (not served here)
- packages/agent-core/test/harness/nodejs-env.test.ts (not served here)
- packages/agent-core/test/harness/prompt-templates.test.ts (not served here)
- packages/agent-core/test/harness/repo.test.ts (not served here)
- packages/agent-core/test/harness/resource-formatting.test.ts (not served here)
- packages/agent-core/test/harness/session-test-utils.ts (not served here)
- packages/agent-core/test/harness/session-uuid.test.ts (not served here)
- packages/agent-core/test/harness/session.test.ts (not served here)
- packages/agent-core/test/harness/skills.test.ts (not served here)
- packages/agent-core/test/harness/storage.test.ts (not served here)
- packages/agent-core/test/harness/system-prompt.test.ts (not served here)
- packages/agent-core/test/harness/truncate.test.ts (not served here)
- packages/agent-core/test/utils/calculate.ts (not served here)
- packages/agent-core/test/utils/get-current-time.ts (not served here)
- packages/agent-core/tsconfig.build.json (not served here)
- packages/agent-core/tsconfig.json (not served here)
- packages/agent-core/vitest.config.ts (not served here)
- packages/agent-core/vitest.harness.config.ts (not served here)
- packages/ai/README.md (not served here)
- packages/ai/bedrock-provider.d.ts (not served here)
- packages/ai/bedrock-provider.js (not served here)
- packages/ai/package.json (not served here)
- packages/ai/scripts/generate-image-models.ts (not served here)
- packages/ai/scripts/generate-models.ts (not served here)
- packages/ai/scripts/generate-test-image.ts (not served here)
- packages/ai/src/api-registry.ts (not served here)
- packages/ai/src/bedrock-provider.ts (not served here)
- packages/ai/src/cli.ts (not served here)
- packages/ai/src/env-api-keys.ts (not served here)
- packages/ai/src/image-models.generated.ts (not served here)
- packages/ai/src/image-models.ts (not served here)
- packages/ai/src/images-api-registry.ts (not served here)
- packages/ai/src/images.ts (not served here)
- packages/ai/src/index.ts (not served here)
- packages/ai/src/minimax-models.ts (not served here)
- packages/ai/src/models.generated.ts (not served here)
- packages/ai/src/models.ts (not served here)
- packages/ai/src/oauth.ts (not served here)
- packages/ai/src/providers/amazon-bedrock.ts (not served here)
- packages/ai/src/providers/anthropic.ts (not served here)
- packages/ai/src/providers/azure-openai-responses.ts (not served here)
- packages/ai/src/providers/cloudflare.ts (not served here)
- packages/ai/src/providers/faux.ts (not served here)
- packages/ai/src/providers/github-copilot-headers.ts (not served here)
- packages/ai/src/providers/google-shared.ts (not served here)
- packages/ai/src/providers/google-vertex.ts (not served here)
- packages/ai/src/providers/google.ts (not served here)
- packages/ai/src/providers/images/minimax.ts (not served here)
- packages/ai/src/providers/images/openrouter.ts (not served here)
- packages/ai/src/providers/images/register-builtins.ts (not served here)
- packages/ai/src/providers/mistral.ts (not served here)
- packages/ai/src/providers/openai-codex-responses.ts (not served here)
- packages/ai/src/providers/openai-completions.ts (not served here)
- packages/ai/src/providers/openai-prompt-cache.ts (not served here)
- packages/ai/src/providers/openai-responses-shared.ts (not served here)
- packages/ai/src/providers/openai-responses.ts (not served here)
- packages/ai/src/providers/register-builtins.ts (not served here)
- packages/ai/src/providers/simple-options.ts (not served here)
- packages/ai/src/providers/transform-messages.ts (not served here)
- packages/ai/src/session-resources.ts (not served here)
- packages/ai/src/stream.ts (not served here)
- packages/ai/src/types.ts (not served here)
- packages/ai/src/utils/abort-signals.ts (not served here)
- packages/ai/src/utils/diagnostics.ts (not served here)
- packages/ai/src/utils/event-stream.ts (not served here)
- packages/ai/src/utils/hash.ts (not served here)
- packages/ai/src/utils/headers.ts (not served here)
- packages/ai/src/utils/json-parse.ts (not served here)
- packages/ai/src/utils/node-http-proxy.ts (not served here)
- packages/ai/src/utils/oauth/anthropic.ts (not served here)
- packages/ai/src/utils/oauth/device-code.ts (not served here)
- packages/ai/src/utils/oauth/github-copilot.ts (not served here)
- packages/ai/src/utils/oauth/index.ts (not served here)
- packages/ai/src/utils/oauth/oauth-page.ts (not served here)
- packages/ai/src/utils/oauth/openai-codex.ts (not served here)
- packages/ai/src/utils/oauth/pkce.ts (not served here)
- packages/ai/src/utils/oauth/types.ts (not served here)
- packages/ai/src/utils/overflow.ts (not served here)
- packages/ai/src/utils/sanitize-unicode.ts (not served here)
- packages/ai/src/utils/typebox-helpers.ts (not served here)
- packages/ai/src/utils/validation.ts (not served here)
- packages/ai/test/abort.test.ts (not served here)
- packages/ai/test/anthropic-adaptive-thinking-models.test.ts (not served here)
- packages/ai/test/anthropic-eager-tool-input-compat.test.ts (not served here)
- packages/ai/test/anthropic-eager-tool-input-e2e.test.ts (not served here)
- packages/ai/test/anthropic-empty-thinking-signature-compat.test.ts (not served here)
- packages/ai/test/anthropic-force-adaptive-thinking.test.ts (not served here)
- packages/ai/test/anthropic-long-cache-retention-e2e.test.ts (not served here)
- packages/ai/test/anthropic-oauth.test.ts (not served here)
- packages/ai/test/anthropic-opus-4-8-smoke.test.ts (not served here)
- packages/ai/test/anthropic-sse-parsing.test.ts (not served here)
- packages/ai/test/anthropic-temperature-compat.test.ts (not served here)
- packages/ai/test/anthropic-thinking-disable.test.ts (not served here)
- packages/ai/test/anthropic-tool-name-normalization.test.ts (not served here)
- packages/ai/test/azure-openai-base-url.test.ts (not served here)
- packages/ai/test/azure-utils.ts (not served here)
- packages/ai/test/bedrock-convert-messages.test.ts (not served here)
- packages/ai/test/bedrock-custom-headers.test.ts (not served here)
- packages/ai/test/bedrock-endpoint-resolution.test.ts (not served here)
- packages/ai/test/bedrock-models.test.ts (not served here)
- packages/ai/test/bedrock-thinking-payload.test.ts (not served here)
- packages/ai/test/bedrock-utils.ts (not served here)
- packages/ai/test/cache-retention.test.ts (not served here)
- packages/ai/test/cloudflare-utils.ts (not served here)
- packages/ai/test/codex-websocket-cached-probe.ts (not served here)
- packages/ai/test/context-overflow.test.ts (not served here)
- packages/ai/test/cross-provider-handoff.test.ts (not served here)
- packages/ai/test/data/red-circle.png (not served here)
- packages/ai/test/empty.test.ts (not served here)
- packages/ai/test/env-api-keys.test.ts (not served here)
- packages/ai/test/faux-provider.test.ts (not served here)
- packages/ai/test/fireworks-models.test.ts (not served here)
- packages/ai/test/generate-models-fallback.test.ts (not served here)
- packages/ai/test/github-copilot-anthropic.test.ts (not served here)
- packages/ai/test/github-copilot-oauth.test.ts (not served here)
- packages/ai/test/google-shared-convert-tools.test.ts (not served here)
- packages/ai/test/google-shared-gemini3-unsigned-tool-call.test.ts (not served here)
- packages/ai/test/google-shared-image-tool-result-routing.test.ts (not served here)
- packages/ai/test/google-thinking-disable.test.ts (not served here)
- packages/ai/test/google-thinking-signature.test.ts (not served here)
- packages/ai/test/google-vertex-api-key-resolution.test.ts (not served here)
- packages/ai/test/image-tool-result.test.ts (not served here)
- packages/ai/test/images.test.ts (not served here)
- packages/ai/test/interleaved-thinking.test.ts (not served here)
- packages/ai/test/lazy-module-load.test.ts (not served here)
- packages/ai/test/live-test-gate.test.ts (not served here)
- packages/ai/test/live-test-gate.ts (not served here)
- packages/ai/test/minimax-flash.test.ts (not served here)
- packages/ai/test/minimax-images.test.ts (not served here)
- packages/ai/test/minimax-models.test.ts (not served here)
- packages/ai/test/minimax-video-input.test.ts (not served here)
- packages/ai/test/mistral-reasoning-mode.test.ts (not served here)
- packages/ai/test/mistral-tool-schema.test.ts (not served here)
- packages/ai/test/node-http-proxy.test.ts (not served here)
- packages/ai/test/oauth-device-code.test.ts (not served here)
- packages/ai/test/oauth.ts (not served here)
- packages/ai/test/openai-codex-cache-affinity-e2e.test.ts (not served here)
- packages/ai/test/openai-codex-oauth.test.ts (not served here)
- packages/ai/test/openai-codex-stream.test.ts (not served here)
- packages/ai/test/openai-completions-cache-control-format.test.ts (not served here)
- packages/ai/test/openai-completions-empty-tools.test.ts (not served here)
- packages/ai/test/openai-completions-prompt-cache.test.ts (not served here)
- packages/ai/test/openai-completions-response-model.test.ts (not served here)
- packages/ai/test/openai-completions-retry.test.ts (not served here)
- packages/ai/test/openai-completions-thinking-as-text.test.ts (not served here)
- packages/ai/test/openai-completions-tool-choice.test.ts (not served here)
- packages/ai/test/openai-completions-tool-result-images.test.ts (not served here)
- packages/ai/test/openai-responses-cache-affinity-e2e.test.ts (not served here)
- packages/ai/test/openai-responses-copilot-provider.test.ts (not served here)
- packages/ai/test/openai-responses-foreign-toolcall-id.test.ts (not served here)
- packages/ai/test/openai-responses-message-id.test.ts (not served here)
- packages/ai/test/openai-responses-partial-json-cleanup.test.ts (not served here)
- packages/ai/test/openai-responses-reasoning-replay-e2e.test.ts (not served here)
- packages/ai/test/openai-responses-tool-result-images.test.ts (not served here)
- packages/ai/test/openrouter-cache-write-repro.test.ts (not served here)
- packages/ai/test/openrouter-images.test.ts (not served here)
- packages/ai/test/overflow.test.ts (not served here)
- packages/ai/test/responseid.test.ts (not served here)
- packages/ai/test/setup.ts (not served here)
- packages/ai/test/stream.test.ts (not served here)
- packages/ai/test/supports-xhigh.test.ts (not served here)
- packages/ai/test/together-models.test.ts (not served here)
- packages/ai/test/tokens.test.ts (not served here)
- packages/ai/test/tool-call-id-normalization.test.ts (not served here)
- packages/ai/test/tool-call-without-result.test.ts (not served here)
- packages/ai/test/total-tokens.test.ts (not served here)
- packages/ai/test/transform-messages-copilot-openai-to-anthropic.test.ts (not served here)
- packages/ai/test/unicode-surrogate.test.ts (not served here)
- packages/ai/test/validation.test.ts (not served here)
- packages/ai/test/xhigh.test.ts (not served here)
- packages/ai/test/xiaomi-models.test.ts (not served here)
- packages/ai/test/xiaomi-token-plan-ams-anthropic-empty-signature-smoke.test.ts (not served here)
- packages/ai/test/zen.test.ts (not served here)
- packages/ai/tsconfig.build.json (not served here)
- packages/ai/tsconfig.json (not served here)
- packages/ai/vitest.config.ts (not served here)
- packages/memcode/.gitignore (not served here)
- packages/memcode/README.md (not served here)
- packages/memcode/docs/compaction.md (not served here)
- packages/memcode/docs/containerization.md (not served here)
- packages/memcode/docs/custom-provider.md (not served here)
- packages/memcode/docs/development.md (not served here)
- packages/memcode/docs/docs.json (not served here)
- packages/memcode/docs/extensions.md (not served here)
- packages/memcode/docs/images/doom-extension.png (not served here)
- packages/memcode/docs/images/interactive-mode.png (not served here)
- packages/memcode/docs/images/tree-view.png (not served here)
- packages/memcode/docs/index.md (not served here)
- packages/memcode/docs/json.md (not served here)
- packages/memcode/docs/keybindings.md (not served here)
- packages/memcode/docs/models.md (not served here)
- packages/memcode/docs/packages.md (not served here)
- packages/memcode/docs/prompt-templates.md (not served here)
- packages/memcode/docs/providers.md (not served here)
- packages/memcode/docs/quickstart.md (not served here)
- packages/memcode/docs/rpc.md (not served here)
- packages/memcode/docs/sdk.md (not served here)
- packages/memcode/docs/security.md (not served here)
- packages/memcode/docs/session-format.md (not served here)
- packages/memcode/docs/sessions.md (not served here)
- packages/memcode/docs/settings.md (not served here)
- packages/memcode/docs/shell-aliases.md (not served here)
- packages/memcode/docs/skills.md (not served here)
- packages/memcode/docs/terminal-setup.md (not served here)
- packages/memcode/docs/termux.md (not served here)
- packages/memcode/docs/themes.md (not served here)
- packages/memcode/docs/tmux.md (not served here)
- packages/memcode/docs/tui.md (not served here)
- packages/memcode/docs/usage.md (not served here)
- packages/memcode/docs/windows.md (not served here)
- packages/memcode/examples/README.md (not served here)
- packages/memcode/examples/extensions/README.md (not served here)
- packages/memcode/examples/extensions/auto-commit-on-exit.ts (not served here)
- packages/memcode/examples/extensions/bash-spawn-hook.ts (not served here)
- packages/memcode/examples/extensions/bookmark.ts (not served here)
- packages/memcode/examples/extensions/border-status-editor.ts (not served here)
- packages/memcode/examples/extensions/built-in-tool-renderer.ts (not served here)
- packages/memcode/examples/extensions/claude-rules.ts (not served here)
- packages/memcode/examples/extensions/commands.ts (not served here)
- packages/memcode/examples/extensions/confirm-destructive.ts (not served here)
- packages/memcode/examples/extensions/custom-compaction.ts (not served here)
- packages/memcode/examples/extensions/custom-footer.ts (not served here)
- packages/memcode/examples/extensions/custom-header.ts (not served here)
- packages/memcode/examples/extensions/custom-provider-anthropic/.gitignore (not served here)
- packages/memcode/examples/extensions/custom-provider-anthropic/index.ts (not served here)
- packages/memcode/examples/extensions/custom-provider-anthropic/package-lock.json (not served here)
- packages/memcode/examples/extensions/custom-provider-anthropic/package.json (not served here)
- packages/memcode/examples/extensions/custom-provider-gitlab-duo/.gitignore (not served here)
- packages/memcode/examples/extensions/custom-provider-gitlab-duo/index.ts (not served here)
- packages/memcode/examples/extensions/custom-provider-gitlab-duo/package.json (not served here)
- packages/memcode/examples/extensions/custom-provider-gitlab-duo/test.ts (not served here)
- packages/memcode/examples/extensions/dirty-repo-guard.ts (not served here)
- packages/memcode/examples/extensions/doom-overlay/.gitignore (not served here)
- packages/memcode/examples/extensions/doom-overlay/README.md (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom-component.ts (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom-engine.ts (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom-keys.ts (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom/build.sh (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom/build/doom.js (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom/build/doom.wasm (not served here)
- packages/memcode/examples/extensions/doom-overlay/doom/doomgeneric_pi.c (not served here)
- packages/memcode/examples/extensions/doom-overlay/index.ts (not served here)
- packages/memcode/examples/extensions/doom-overlay/wad-finder.ts (not served here)
- packages/memcode/examples/extensions/dynamic-resources/SKILL.md (not served here)
- packages/memcode/examples/extensions/dynamic-resources/dynamic.json (not served here)
- packages/memcode/examples/extensions/dynamic-resources/dynamic.md (not served here)
- packages/memcode/examples/extensions/dynamic-resources/index.ts (not served here)
- packages/memcode/examples/extensions/dynamic-tools.ts (not served here)
- packages/memcode/examples/extensions/event-bus.ts (not served here)
- packages/memcode/examples/extensions/file-trigger.ts (not served here)
- packages/memcode/examples/extensions/git-checkpoint.ts (not served here)
- packages/memcode/examples/extensions/git-merge-and-resolve.ts (not served here)
- packages/memcode/examples/extensions/github-issue-autocomplete.ts (not served here)
- packages/memcode/examples/extensions/gondolin/.gitignore (not served here)
- packages/memcode/examples/extensions/gondolin/index.ts (not served here)
- packages/memcode/examples/extensions/gondolin/package-lock.json (not served here)
- packages/memcode/examples/extensions/gondolin/package.json (not served here)
- packages/memcode/examples/extensions/handoff.ts (not served here)
- packages/memcode/examples/extensions/hello.ts (not served here)
- packages/memcode/examples/extensions/hidden-thinking-label.ts (not served here)
- packages/memcode/examples/extensions/inline-bash.ts (not served here)
- packages/memcode/examples/extensions/input-transform-streaming.ts (not served here)
- packages/memcode/examples/extensions/input-transform.ts (not served here)
- packages/memcode/examples/extensions/interactive-shell.ts (not served here)
- packages/memcode/examples/extensions/mac-system-theme.ts (not served here)
- packages/memcode/examples/extensions/message-renderer.ts (not served here)
- packages/memcode/examples/extensions/minimal-mode.ts (not served here)
- packages/memcode/examples/extensions/modal-editor.ts (not served here)
- packages/memcode/examples/extensions/model-status.ts (not served here)
- packages/memcode/examples/extensions/notify.ts (not served here)
- packages/memcode/examples/extensions/overlay-qa-tests.ts (not served here)
- packages/memcode/examples/extensions/overlay-test.ts (not served here)
- packages/memcode/examples/extensions/permission-gate.ts (not served here)
- packages/memcode/examples/extensions/pirate.ts (not served here)
- packages/memcode/examples/extensions/plan-mode/README.md (not served here)
- packages/memcode/examples/extensions/plan-mode/index.ts (not served here)
- packages/memcode/examples/extensions/plan-mode/utils.ts (not served here)
- packages/memcode/examples/extensions/preset.ts (not served here)
- packages/memcode/examples/extensions/project-trust.ts (not served here)
- packages/memcode/examples/extensions/prompt-customizer.ts (not served here)
- packages/memcode/examples/extensions/protected-paths.ts (not served here)
- packages/memcode/examples/extensions/provider-payload.ts (not served here)
- packages/memcode/examples/extensions/qna.ts (not served here)
- packages/memcode/examples/extensions/question.ts (not served here)
- packages/memcode/examples/extensions/questionnaire.ts (not served here)
- packages/memcode/examples/extensions/rainbow-editor.ts (not served here)
- packages/memcode/examples/extensions/reload-runtime.ts (not served here)
- packages/memcode/examples/extensions/rpc-demo.ts (not served here)
- packages/memcode/examples/extensions/sandbox/.gitignore (not served here)
- packages/memcode/examples/extensions/sandbox/index.ts (not served here)
- packages/memcode/examples/extensions/sandbox/package-lock.json (not served here)
- packages/memcode/examples/extensions/sandbox/package.json (not served here)
- packages/memcode/examples/extensions/send-user-message.ts (not served here)
- packages/memcode/examples/extensions/session-name.ts (not served here)
- packages/memcode/examples/extensions/shutdown-command.ts (not served here)
- packages/memcode/examples/extensions/snake.ts (not served here)
- packages/memcode/examples/extensions/space-invaders.ts (not served here)
- packages/memcode/examples/extensions/ssh.ts (not served here)
- packages/memcode/examples/extensions/status-line.ts (not served here)
- packages/memcode/examples/extensions/structured-output.ts (not served here)
- packages/memcode/examples/extensions/subagent/README.md (not served here)
- packages/memcode/examples/extensions/subagent/agents.ts (not served here)
- packages/memcode/examples/extensions/subagent/agents/planner.md (not served here)
- packages/memcode/examples/extensions/subagent/agents/reviewer.md (not served here)
- packages/memcode/examples/extensions/subagent/agents/scout.md (not served here)
- packages/memcode/examples/extensions/subagent/agents/worker.md (not served here)
- packages/memcode/examples/extensions/subagent/index.ts (not served here)
- packages/memcode/examples/extensions/subagent/prompts/implement-and-review.md (not served here)
- packages/memcode/examples/extensions/subagent/prompts/implement.md (not served here)
- packages/memcode/examples/extensions/subagent/prompts/scout-and-plan.md (not served here)
- packages/memcode/examples/extensions/summarize.ts (not served here)
- packages/memcode/examples/extensions/system-prompt-header.ts (not served here)
- packages/memcode/examples/extensions/tic-tac-toe.ts (not served here)
- packages/memcode/examples/extensions/timed-confirm.ts (not served here)
- packages/memcode/examples/extensions/titlebar-spinner.ts (not served here)
- packages/memcode/examples/extensions/todo.ts (not served here)
- packages/memcode/examples/extensions/tool-override.ts (not served here)
- packages/memcode/examples/extensions/tools.ts (not served here)
- packages/memcode/examples/extensions/trigger-compact.ts (not served here)
- packages/memcode/examples/extensions/truncated-tool.ts (not served here)
- packages/memcode/examples/extensions/widget-placement.ts (not served here)
- packages/memcode/examples/extensions/with-deps/.gitignore (not served here)
- packages/memcode/examples/extensions/with-deps/index.ts (not served here)
- packages/memcode/examples/extensions/with-deps/package-lock.json (not served here)
- packages/memcode/examples/extensions/with-deps/package.json (not served here)
- packages/memcode/examples/extensions/working-indicator.ts (not served here)
- packages/memcode/examples/extensions/working-message-test.ts (not served here)
- packages/memcode/examples/rpc-extension-ui.ts (not served here)
- packages/memcode/examples/sdk/01-minimal.ts (not served here)
- packages/memcode/examples/sdk/02-custom-model.ts (not served here)
- packages/memcode/examples/sdk/03-custom-prompt.ts (not served here)
- packages/memcode/examples/sdk/04-skills.ts (not served here)
- packages/memcode/examples/sdk/05-tools.ts (not served here)
- packages/memcode/examples/sdk/06-extensions.ts (not served here)
- packages/memcode/examples/sdk/07-context-files.ts (not served here)
- packages/memcode/examples/sdk/08-prompt-templates.ts (not served here)
- packages/memcode/examples/sdk/09-api-keys-and-oauth.ts (not served here)
- server.json
Advantages
- Local-first: the memory stays in files or a database on your own machine (a rule-derived fact from the brain’s files, evidence: README.md)
- Works with 14 MCP clients (a rule-derived fact from the brain’s files, evidence: README.md)
- Open licence (Apache-2.0) (a rule-derived fact from the brain’s files)
Limitations
- Needs an API key (ANTHROPIC_API_KEY, API_ROUTE_API_KEY, ATLASCLOUD_API_KEY) (a rule-derived fact from the brain’s files, evidence: README.md)
- Needs a database (LanceDB, PostgreSQL, SQLite) (a rule-derived fact from the brain’s files, evidence: README.md)
- Runs code automatically: review what it runs before you open it (a rule-derived fact from the brain’s files)
- No ZIP download: install it from its source (a rule-derived fact from the brain’s files)
Security
Risk level: Low risk
This brain runs
Agent instructions that run or fetch something (23)
CLAUDE.md:CLI fallback: only after MCP is confirmed unavailable, run `memorix context --task "<current task>"` from the shell instead of skipping memory or hand-writing tool callsplugins/claude/memorix/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/claude/memorix/skills/memorix-git-memory/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Search what changed | `memorix_search` with a change-focused query | `memorix memory search --query "what changed <topic>"` | | Inspect a git-backed memory | `memorix_detail` | `memorix memory detail --id <id>` | | Ingest current co …[+257 chars]plugins/claude/memorix/skills/memorix-memory/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` from the shell only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/claude/memorix/skills/memorix-orchestrate/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Run managed subagent execution | CLI | `memorix orchestrate --goal "<goal>" --agents claude:1,codex:1` | | Register coordination identity | `team_manage` action `join` | `memorix team join --agentType <agent>` | | Create or inspect …[+385 chars]plugins/claude/memorix/skills/memorix-troubleshooting/SKILL.md:| Symptom | Check | CLI fallback | |---|---|---| | MCP tools missing | host MCP config and restart | `memorix setup --agent <agent>` | | Unsure project is bound | project status | `memorix status` and `git status` | | HTTP MCP stale or unbound | background health and explicit session bi …[+33 chars]plugins/codebuddy/memorix/skills/memorix-git-memory/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Search what changed | `memorix_search` with a change-focused query | `memorix memory search --query "what changed <topic>"` | | Inspect a git-backed memory | `memorix_detail` | `memorix memory detail --id <id>` | | Ingest current co …[+257 chars]plugins/codebuddy/memorix/skills/memorix-memory/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` from the shell only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/codebuddy/memorix/skills/memorix-orchestrate/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Run managed subagent execution | CLI | `memorix orchestrate --goal "<goal>" --agents claude:1,codex:1` | | Register coordination identity | `team_manage` action `join` | `memorix team join --agentType <agent>` | | Create or inspect …[+385 chars]plugins/codebuddy/memorix/skills/memorix-troubleshooting/SKILL.md:| Symptom | Check | CLI fallback | |---|---|---| | MCP tools missing | host MCP config and restart | `memorix setup --agent <agent>` | | Unsure project is bound | project status | `memorix status` and `git status` | | HTTP MCP stale or unbound | background health and explicit session bi …[+33 chars]plugins/codex/memorix/skills/memorix-git-memory/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Search what changed | `memorix_search` with a change-focused query | `memorix memory search --query "what changed <topic>"` | | Inspect a git-backed memory | `memorix_detail` | `memorix memory detail --id <id>` | | Ingest current co …[+257 chars]plugins/codex/memorix/skills/memorix-memory/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/codex/memorix/skills/memorix-orchestrate/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Run managed subagent execution | CLI | `memorix orchestrate --goal "<goal>" --agents claude:1,codex:1` | | Register coordination identity | `team_manage` action `join` | `memorix team join --agentType <agent>` | | Create or inspect …[+385 chars]plugins/codex/memorix/skills/memorix-troubleshooting/SKILL.md:| Symptom | Check | CLI fallback | |---|---|---| | MCP tools missing | host MCP config and restart | `memorix setup --agent <agent>` | | Unsure project is bound | project status | `memorix status` and `git status` | | HTTP MCP stale or unbound | background health and explicit session bi …[+33 chars]plugins/copilot/memorix/skills/memorix-git-memory/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Search what changed | `memorix_search` with a change-focused query | `memorix memory search --query "what changed <topic>"` | | Inspect a git-backed memory | `memorix_detail` | `memorix memory detail --id <id>` | | Ingest current co …[+257 chars]plugins/copilot/memorix/skills/memorix-memory/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/copilot/memorix/skills/memorix-orchestrate/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Run managed subagent execution | CLI | `memorix orchestrate --goal "<goal>" --agents claude:1,codex:1` | | Register coordination identity | `team_manage` action `join` | `memorix team join --agentType <agent>` | | Create or inspect …[+385 chars]plugins/copilot/memorix/skills/memorix-troubleshooting/SKILL.md:| Symptom | Check | CLI fallback | |---|---|---| | MCP tools missing | host MCP config and restart | `memorix setup --agent <agent>` | | Unsure project is bound | project status | `memorix status` and `git status` | | HTTP MCP stale or unbound | background health and explicit session bi …[+33 chars]plugins/cursor/memorix/skills/memorix-git-memory/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Search what changed | `memorix_search` with a change-focused query | `memorix memory search --query "what changed <topic>"` | | Inspect a git-backed memory | `memorix_detail` | `memorix memory detail --id <id>` | | Ingest current co …[+257 chars]plugins/cursor/memorix/skills/memorix-memory/SKILL.md:Run `memorix context --task "<task>" --fallback --brief-json` only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.plugins/cursor/memorix/skills/memorix-orchestrate/SKILL.md:| Situation | Prefer | CLI fallback | |---|---|---| | Run managed subagent execution | CLI | `memorix orchestrate --goal "<goal>" --agents claude:1,codex:1` | | Register coordination identity | `team_manage` action `join` | `memorix team join --agentType <agent>` | | Create or inspect …[+385 chars]plugins/cursor/memorix/skills/memorix-troubleshooting/SKILL.md:| Symptom | Check | CLI fallback | |---|---|---| | MCP tools missing | host MCP config and restart | `memorix setup --agent <agent>` | | Unsure project is bound | project status | `memorix status` and `git status` | | HTTP MCP stale or unbound | background health and explicit session bi …[+33 chars]plugins/gemini/memorix/GEMINI.md:Run `memorix context --task "<task>" --fallback --brief-json` only after MCP is unavailable, disabled, or not discoverable, and pass the user's real task text.
MCP servers (7)
README.md(memorix):memorix serveplugins/claude/memorix/.mcp.json(memorix):memorix serve --mode liteplugins/codebuddy/memorix/.mcp.json(memorix):memorix serve --mode liteplugins/codex/memorix/.mcp.json(memorix):memorix serve --mode liteplugins/copilot/memorix/.mcp.json(memorix):memorix serve --mode liteplugins/gemini/memorix/gemini-extension.json(memorix):memorix serve --mode liteplugins/openclaw/memorix/.mcp.json(memorix):memorix serve --mode lite
Hooks (20)
plugins/claude/memorix/hooks/hooks.json(SessionStart):memorix hookplugins/claude/memorix/hooks/hooks.json(PostToolUse):memorix hookplugins/claude/memorix/hooks/hooks.json(UserPromptSubmit):memorix hookplugins/claude/memorix/hooks/hooks.json(PreCompact):memorix hookplugins/claude/memorix/hooks/hooks.json(Stop):memorix hookplugins/codebuddy/memorix/hooks/hooks.json(SessionStart):memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json(UserPromptSubmit):memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json(PostToolUse):memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json(PreCompact):memorix hook --agent codebuddyplugins/codebuddy/memorix/hooks/hooks.json(Stop):memorix hook --agent codebuddyplugins/codex/memorix/hooks/hooks.json(SessionStart):memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json(PostToolUse):memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json(UserPromptSubmit):memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json(PreCompact):memorix hook --agent codexplugins/codex/memorix/hooks/hooks.json(Stop):memorix hook --agent codexplugins/copilot/memorix/hooks/hooks.json(sessionStart):memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json(sessionEnd):memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json(userPromptSubmitted):memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json(postToolUse):memorix hook --agent copilotplugins/copilot/memorix/hooks/hooks.json(preCompact):memorix hook --agent copilot
Binaries (5)
packages/memcode/examples/extensions/doom-overlay/doom/build/doom.wasm:ships native binariespackages/tui/native/darwin/prebuilds/darwin-arm64/darwin-modifiers.node:ships native binariespackages/tui/native/darwin/prebuilds/darwin-x64/darwin-modifiers.node:ships native binariespackages/tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node:ships native binariespackages/tui/native/win32/prebuilds/win32-x64/win32-console-mode.node:ships native binaries
- Low risk: scripts-present (scripts/benchmark-retrieval.mjs)
- Low risk: scripts-present (scripts/large-store-gate.mjs)
Attribution and licence
- First committed by
AVIDS2
- Declared authors
- AVIDS2 (declared in package.json)
- Publisher
- Le_Ho (Community)
- Source
- AVIDS2/memorix · commit 6745280
- Licence
- Apache License 2.0 (files served here)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Contributors
- AVIDS2, noirgif, Tom-Ma-Ming, octo-patch, DennyHo0917
AutoGineer is not affiliated with or endorsed by AVIDS2.
Install from source
453 of its files are not served here, so there is no ZIP. AVIDS2/memorix at 6745280