[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"readme:megamemory":3},"\u003Cp align=\"center\">\n  \u003C\u002Fp>\u003Ch1>MegaMemory\u003C\u002Fh1>\n\u003Cp>\u003C\u002Fp>\n\u003Cp align=\"center\">Persistent project knowledge graph for coding agents.\u003C\u002Fp>\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fmegamemory\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"npm\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fmegamemory?style=flat-square\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002F0xK3vin\u002Fmegamemory\u002Fblob\u002FHEAD\u002FLICENSE\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"license\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fl\u002Fmegamemory?style=flat-square\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fnodejs.org\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"node\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnode\u002Fv\u002Fmegamemory?style=flat-square\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fmegamemory\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"npm downloads\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fdm\u002Fmegamemory?style=flat-square\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fx.com\u002FM3ruH4sh\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"Twitter Follow\" src=\"https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002FM3ruH4sh?style=social\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002F0xK3vin\u002Fmegamemory\u002FHEAD\u002Fassets\u002Fpreview.png\" alt=\"MegaMemory web explorer\" width=\"800\" \u002F>\n\u003C\u002Fp>\u003Chr \u002F>\n\u003Cp>An \u003Ca href=\"https:\u002F\u002Fmodelcontextprotocol.io\u002F\" rel=\"nofollow ugc noopener\">MCP\u003C\u002Fa> server that lets your coding agent build and query a graph of concepts, architecture, and decisions — so it \u003Cstrong>remembers across sessions\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>The LLM is the indexer. No AST parsing. No static analysis. Your agent reads code, writes concepts in its own words, and queries them before future tasks. The graph stores \u003Cstrong>concepts\u003C\u002Fstrong> — features, modules, patterns, decisions — not code symbols.\u003C\u002Fp>\n\u003Ch3>The Loop\u003C\u002Fh3>\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002F0xK3vin\u002Fmegamemory\u002FHEAD\u002Fassets\u002Fhow-it-works.svg\" alt=\"How MegaMemory works\" width=\"800\" \u002F>\n\u003C\u002Fp>\u003Cp>\u003Ccode>understand → work → update\u003C\u002Fcode>\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Session start\u003C\u002Fstrong> — agent calls \u003Ccode>list_roots\u003C\u002Fcode> to orient itself\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Before a task\u003C\u002Fstrong> — agent calls \u003Ccode>understand\u003C\u002Fcode> with a natural language query (or \u003Ccode>get_concept\u003C\u002Fcode> for exact ID lookup)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>After a task\u003C\u002Fstrong> — agent calls \u003Ccode>create_concept\u003C\u002Fcode> or \u003Ccode>update_concept\u003C\u002Fcode> to record what it built\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Everything persists in a per-project SQLite database at \u003Ccode>.megamemory\u002Fknowledge.db\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Chr \u002F>\n\u003Ch3>Installation\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-bash\">npm install -g megamemory\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\n\u003Cp>[!NOTE]\nRequires Node.js &gt;= 18. The embedding model (~23MB) downloads automatically on first use.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>Quick Start\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-bash\">megamemory install\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Run the interactive installer and choose your editor:\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>[!NOTE]\nThe installer only updates config files after a successful read\u002Fmerge, and it will not overwrite existing plugin\u002Fcommand files unless they are already marked as MegaMemory-managed.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>With \u003Ca href=\"https:\u002F\u002Fopencode.ai\" rel=\"nofollow ugc noopener\">opencode\u003C\u002Fa>\u003C\u002Fh4>\n\u003Cpre>\u003Ccode class=\"language-bash\">megamemory install --target opencode\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>One command configures:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>MCP server in \u003Ccode>~\u002F.config\u002Fopencode\u002Fopencode.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Workflow instructions in \u003Ccode>~\u002F.config\u002Fopencode\u002FAGENTS.md\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Skill tool plugin at \u003Ccode>~\u002F.config\u002Fopencode\u002Ftool\u002Fmegamemory.ts\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Bootstrap command \u003Ccode>\u002Fuser:bootstrap-memory\u003C\u002Fcode> for initial graph population\u003C\u002Fli>\n\u003Cli>Save command \u003Ccode>\u002Fuser:save-memory\u003C\u002Fcode> to persist session knowledge\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Restart opencode after running install.\u003C\u002Fp>\n\u003Ch4>With \u003Ca href=\"https:\u002F\u002Fcode.claude.com\" rel=\"nofollow ugc noopener\">Claude Code\u003C\u002Fa>\u003C\u002Fh4>\n\u003Cpre>\u003Ccode class=\"language-bash\">megamemory install --target claudecode\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Configures:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>MCP server in \u003Ccode>~\u002F.claude.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Workflow instructions in \u003Ccode>~\u002F.claude\u002FCLAUDE.md\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Commands in \u003Ccode>~\u002F.claude\u002Fcommands\u002F\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>With \u003Ca href=\"https:\u002F\u002Fidx.google.com\" rel=\"nofollow ugc noopener\">Antigravity\u003C\u002Fa>\u003C\u002Fh4>\n\u003Cpre>\u003Ccode class=\"language-bash\">megamemory install --target antigravity\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Configures:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>MCP server in \u003Ccode>.\u002Fmcp_config.json\u003C\u002Fcode> (workspace-level)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>With \u003Ca href=\"https:\u002F\u002Fopenai.com\u002Fcodex\" rel=\"nofollow ugc noopener\">Codex\u003C\u002Fa>\u003C\u002Fh4>\n\u003Cpre>\u003Ccode class=\"language-bash\">megamemory install --target codex\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Configures:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>MCP server in \u003Ccode>~\u002F.codex\u002Fconfig.toml\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Workflow instructions in \u003Ccode>~\u002F.codex\u002FAGENTS.md\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>With other MCP clients\u003C\u002Fh4>\n\u003Cp>Add megamemory as a stdio MCP server. The command is just \u003Ccode>megamemory\u003C\u002Fcode> (no arguments). It reads\u002Fwrites \u003Ccode>.megamemory\u002Fknowledge.db\u003C\u002Fcode> relative to the working directory, or set \u003Ccode>MEGAMEMORY_DB_PATH\u003C\u002Fcode> to override.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-json\">{\n  \"megamemory\": {\n    \"type\": \"local\",\n    \"command\": [\"megamemory\"],\n    \"enabled\": true\n  }\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Chr \u002F>\n\u003Ch3>MCP Tools\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Tool\u003C\u002Fth>\n\u003Cth>Description\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Ccode>understand\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Semantic search over the knowledge graph. Returns matched concepts with children, edges, and parent context.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>get_concept\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Look up a concept by its exact ID. Returns full\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n",1787581367108]