Memory Map is a local-first context mapping system for codebases. It gives you a graph view, file explorer, and editable metadata so humans and agents can keep a shared understanding of a repo as it evolves.
- Graph view with selected-node highlighting.
- Collapsible file explorer synced with selection.
- Detail panel with metadata editing and tasks.
- Canonical JSON (schema v2) with flexible metadata.
- Local server with safe, token-gated APIs.
- Optional filesystem scan (sandboxed and limited).
- Install Node.js (18+ recommended).
- From the repo root:
node mem_map/server.js
- Open:
http://127.0.0.1:4500 - Optional: scan a local path from the UI.
The server reads these environment variables:
HOST(default127.0.0.1)PORT(default4500)MEMMAP_TOKEN(optional API token; send viax-memmap-token)MEMMAP_SCAN_ROOT(sandbox root for scans)MEMMAP_MAX_FILES,MEMMAP_MAX_DEPTH,MEMMAP_MAX_BYTESMEMMAP_DEBUG_ABS(includeabsPathin scan output)
Example:
PORT=4501 MEMMAP_TOKEN=yourtoken MEMMAP_SCAN_ROOT=D:\repos node mem_map/server.jsGET /api/context-> current board JSONPOST /api/context-> save board (version-checked)POST /api/scan-> scan a path and return a board
mem_map/index.html- UI shellmem_map/style.css- layout and themingmem_map/app.js- client logic (load/save/scan)mem_map/server.js- local server + APIsmem_map/data/context-data.json- canonical board JSONinit_context_system.md- init protocol and schema notesextensions/codex/- Codex CLI skill bundle
This tool is local-first and sandboxed by default. If you enable scanning outside the repo, treat the API like a local admin surface:
- Keep it bound to localhost.
- Use a token if sharing or port-forwarding.
- Consider scan limits for large directories.
MIT (see LICENSE).
Memory Map ships a Codex skill bundle in extensions/codex/.
Install:
- Enable Codex skills (
skills = truein~/.codex/config.tomlor runcodex --enable skills). - Copy:
extensions/codex/SKILL.md->~/.codex/skills/memory-map/SKILL.md
- Restart Codex.
Use:
$memory-map-init