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>
docs/1.2.0-KNOWLEDGE-WORKFLOW-RESEARCH.md
Memorix 1.2 Knowledge and Workflow Research
Status: adopted product direction Companion: 1.2 Product Story and 1.2 Development Charter Date: 2026-07-17
Research Question
Can Memorix become more than a store of narrative memories? The useful answer is not "add a graph." A coding project needs an evidence-backed knowledge base that agents can maintain, inspect, and use, plus a way to inherit the project's working methods without asking every new agent to rediscover them.
The resulting 1.2 direction is a Knowledge Workspace and Workflow Inheritance layer on top of Memorix's existing local, multi-agent memory system.
What the Reference Systems Actually Teach
| System | Verified design contribution | What Memorix should learn | What Memorix should not copy |
|---|---|---|---|
| Cognee | Ingests varied data, derives chunks, entities, concepts, and ontologies, then combines graph and vector retrieval for agent memory. | Treat knowledge as an evolving substrate, not a flat pile of notes. | Rebuilding a generic ingestion platform, graph database matrix, and cloud product inside a coding-memory release. |
| Karpathy's LLM Wiki | Keeps immutable raw sources, a generated interlinked Markdown wiki, and a schema that teaches the agent how to ingest, query, and lint it. | Make knowledge a durable, human-readable artifact that compounds, cites its sources, and can be linted. | Pretending every retrieved chunk is a wiki page or hiding synthesized claims in a database only. |
| Graphiti / Zep | Builds temporal Context Graphs from episodes, tracks fact invalidation, and combines temporal, keyword, semantic, and graph retrieval. | A fact must have provenance and a lifecycle: current, superseded, disputed, or unknown. | Adding a graph database just to claim a temporal graph before we have trustworthy claims and invalidation rules. |
| Mem0 | Uses compact memory APIs, entity linking, temporal retrieval, and multi-signal ranking. | Evaluate retrieval quality and fuse independent signals rather than trusting one similarity score. | Treating vendor benchmark scores as directly comparable to a local coding-agent workflow. |
| Letta | Separates always-visible blocks, files, archival memory, and external retrieval by size and mutability. | Give every knowledge item an access mode: core protocol, on-demand page, archival evidence, or external source. | Injecting every permanent mini-skill or wiki page into every session. |
| LangMem | Separates agent-managed hot-path memory from background extraction and consolidation. | Keep foreground task work fast; larger synthesis and maintenance must be bounded background work. | Coupling Memorix to a particular agent runtime or framework store. |
| TencentDB Agent Memory | Uses layered memory, readable Markdown upper layers, traceable drill-down, background extraction, and skill/SOP generation from execution history. | Store high-level guidance as readable artifacts that drill down to evidence; let repeated successful work propose a workflow. | Making Mermaid the canonical truth or accepting self-reported benchmark gains without independent evaluation. |
| Supermemory | Treats memory, extraction, connectors, and retrieval as one context stack scoped to an entity. | Make scope explicit: project, workspace, team, workflow, and task are different containers. | Becoming an all-in-one hosted content connector platform in 1.2. |
| Memobase | Separates durable user profile from event timeline and processes buffers outside the hot path. | Separate stable project protocol from episodic task evidence; batch maintenance rather than blocking the user. | Optimizing Memorix around consumer user-profile personalization instead of project work. |
The social-media ranking that prompted this research is useful as a discovery list, but it is not a common benchmark or a product-fit analysis. Each project optimizes for a different unit of memory: user profile, agent runtime, generic documents, enterprise data, or project work.
Honest Audit of the Current Memorix Baseline
Memorix already has real foundations. It is not empty branding. It has SQLite storage, observations, Git evidence, mini-skills, a code index, code-bound freshness, a dashboard Knowledge Base view, and a graph view.
It is nevertheless not yet an industry-grade semantic knowledge graph or a Karpathy-style LLM Wiki:
CodeGraph Lite is a structural index, not a semantic knowledge graph. It records files, symbols, and primarily import-level edges. Its built-in provider uses conservative language-specific regular expressions, which is a valid fallback but not parser-grade code intelligence.
The current Knowledge Base is a generated view, not a maintained wiki. It groups active observations and mini-skills into sections at render time. It does not persist interlinked Markdown pages that are updated when a new source changes the project's synthesis.
The current Knowledge Graph is a deterministic memory map. It creates nodes from observations and mini-skills, then infers many edges from shared entity name, category, source skill, or optional explicit relations. It has useful provenance refs, but it has no claim identity, temporal validity, confidence policy, contradiction state, or source-level truth-maintenance loop.
Workflow support is format conversion, not workflow inheritance. Existing workspace sync can convert Windsurf workflow files to selected agent formats. Mini-skills preserve small instructions, but they are not versioned playbooks with inputs, steps, gates, outcomes, or learning from runs.
The right response is not to delete these foundations. They become the evidence and compatibility layers for the next system.
Product Decision: Knowledge Workspace
Memorix 1.2 will build a local, project-scoped Knowledge Workspace with four separate layers:
flowchart LR
A["Evidence: Git, code, tests, documents, observations"] --> B["Claims: provenance and validity"]
B --> C["Wiki: interlinked, human-readable knowledge"]
B --> D["Workflows: reusable project playbooks"]
C --> E["Task Workset: minimal context for the active task"]
D --> E
E --> F["Agent action and verification"]
F --> AEvidence
Evidence includes Git commits, code-state snapshots, test or command results, approved documents, and high-signal observations. It carries source references and capture time. A synthesized page never replaces its evidence.
Claims
A claim is a small, inspectable assertion, not merely a graph edge. It records:
subject, predicate, and object or value;
project, workspace, team, workflow, or task scope;
source and optional code references;
observed time and validity window;
active, superseded, disputed, or unknown status;
confidence.
Claims give Memorix the temporal honesty borrowed from Graphiti without pretending that a visual graph alone is a knowledge system.
Wiki
The wiki consists of maintained Markdown pages with structured frontmatter and links. A page can cover an architecture concept, a subsystem, a decision, a release procedure, or a known risk. Each page identifies its claims, evidence, code-state snapshot, status, and last review.
The project can choose a versioned workspace for these pages so humans can read them, agents can update them through reviewed patches, and Git can show how the knowledge changed. SQLite and search indexes accelerate retrieval but are not the only copy of the knowledge.
Workflows
A workflow is not an oversized AGENTS.md paragraph. It is a canonical, versioned playbook containing:
trigger, scope, assumptions, and required context;
ordered phases with optional branches;
allowed tools, guardrails, expected outputs, and verification gates;
source, claim, and code references;
target-agent adapters;
run evidence, outcome, and failure reason.
For example, a project can own a bug-fix workflow, release workflow, migration workflow, or incident workflow. A new agent receives only a small trigger and the relevant first phase. It loads the full playbook only when the task matches. Repeated successful runs can propose improvements, but never silently rewrite a project protocol.
How Workflow Inheritance Feels to a User
The user says, "Prepare the next release." Memorix should recognize a relevant project release playbook, return the current release facts and first gate, and let the agent continue using the normal tools for that environment. The user does not remember a slash command or manually paste a checklist.
This is progressive disclosure:
agent integration sees a short workflow trigger and description;
task selection chooses at most one or two relevant workflows;
the active Workset contains only the immediate phase, linked knowledge, and verification gate;
detailed procedures, source pages, and raw evidence are loaded on demand.
Agents that support Skills receive a native skill adapter. Other MCP clients receive the same canonical instructions as prompt-ready context. Memorix must not rewrite a user's global agent configuration or claim a workflow is executed when the host does not expose the required hooks or tools.
1.2 Scope and Non-Goals
The 1.2 goal is project knowledge that makes agents better at continuing work, not a general company data lake.
In scope:
local evidence, claims, wiki pages, and workflows with source drill-down;
code- and Git-aware freshness for project knowledge;
versioned project workflows with progressive agent delivery;
linting for missing sources, stale claims, broken links, conflicts, orphan pages, and unverified workflow gates;
a dashboard that explains why a page or workflow was selected.
Out of scope for 1.2:
cloning Cognee's multi-format enterprise ingestion breadth;
requiring Neo4j, a cloud API, or an external CodeGraph installation;
capturing every conversation as knowledge;
automatic writes to source-controlled knowledge without a clear project policy and audit trail;
running a workflow engine inside every supported agent.
Revised Delivery Order
Truth baseline: make the existing graph and wiki labels honest; add fixtures that distinguish a memory map, a structural code index, and a source-backed claim.
Evidence and Code State: ship CodeStateSnapshot and completeness semantics before letting generated knowledge claim current truth.
Claim ledger: add provenance, validity, conflict, and source drill-down for knowledge assertions.
Wiki compiler: ingest approved sources into reviewable, interlinked Markdown pages; add index, log, and lint rather than only search.
Workflow inheritance: introduce canonical playbooks, task selection, agent adapters, and run evidence.
Workset integration: rank code state, claims, wiki pages, workflows, Git evidence, and verification hints into project context.
Lifecycle and proof: keep maintenance non-blocking, expose diagnostics, and measure whether new agents start useful work faster with less broad repository exploration.
Acceptance Test
A newcomer can enter a project, say "continue the database migration issue," and receive a compact, evidence-backed answer that names the right starting code, the current state of the migration, relevant decisions, a warning about superseded advice, the matching migration workflow if one exists, and the verification gate. Every recommendation can be drilled back to its source.
If Memorix cannot establish that chain of evidence, it must give a smaller answer and say what it does not know.
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