Engram Cc
Resumen
Descripción del creador (original en inglés)
Universal AI coding assistant memory — session handoff, SLM compression, and semantic retrieval.
Los tres pilares de PopNx MCP
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
- Opinión de usuariosiAún no hay reseñasLas reseñas se abrirán junto con las cuentas en una etapa posterior
- Nuestras revisiones básicasi1 de 1 superadasRevisado con información pública; el código aún no se ha escaneado
- UsoiMuy nuevo↓ 65/sem · ★ –
Qué puedes hacer con él
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
- Conexión: Se ejecuta en tu computadora
- Transporte: stdio
- Categoría: Búsqueda y memoria de IA
Instalación
Elige la app de IA que usas y copia la configuración.
Antes de instalar
- Revisiones básicas: 1 de 1 superadas
- Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
- El registro no indica ninguna clave que completar.
Necesitas
- npmNode.js instalado (para el comando npx)
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"engram-cc": {
"command": "npx",
"args": [
"-y",
"@morous-dev/engram-cc"
]
}
}
}Ejecuta esto en tu terminal
claude mcp add engram-cc -- npx -y @morous-dev/engram-ccO copia la configuración tú
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"engram-cc": {
"command": "npx",
"args": [
"-y",
"@morous-dev/engram-cc"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
O copia la configuración tú
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"engram-cc": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@morous-dev/engram-cc"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Qué puede hacer
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisiones básicasi
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
- ✓ Superada
El creador coincide con el repo
El nombre en el registro se verificó con la cuenta de GitHub Morous-Dev, dueña del repo
- … Aún sin revisar
Sigue en mantenimiento
Todavía no hemos leído este repo en GitHub
- … Aún sin revisar
Tiene licencia
Todavía no hemos leído este repo en GitHub
- – No aplica
El endpoint responde
Este se ejecuta en tu computadora; no hay endpoint en internet
- – No aplica
Inicio de sesión con OAuth
Se ejecuta en tu computadora y usa ajustes locales en su lugar
- … Aún sin revisar
Sin instrucciones ocultas en las descripciones de herramientas
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con otros en Búsqueda y memoria de IAi
- Más estrellas que el 0% de los otros 5684 servidores de esta categoría
- Publicado en el registro más recientemente que el 6% de los otros 5684 servidores de esta categoría
- Revisiones básicas iguales o mejores que el 100% de los otros 5684 servidores de esta categoría
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Preguntas frecuentes
¿Es seguro Engram Cc?
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
¿Qué claves o códigos necesita?
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
¿Se ejecuta en mi computadora o en la nube?
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
¿Sigue en mantenimiento?
El repo de GitHub cambió por última vez –, y la última versión (0.1.4) llegó al registro hace 8 meses.
¿Qué apps pueden usarlo?
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
¿Qué puedo usar en su lugar?
En la misma categoría: Context7, Codebase Memory, Exa
Alternativas
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
README del creador
Abrir el README
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Engram Context Continuum
Universal AI session memory substrate. One install. Every AI coding assistant. Persistent context across sessions, folder renames, and tool switches.
*In neuroscience, an engram is the physical trace a memory leaves in the brain. EngramCC does the same for AI — a local memory substrate that persists what your AI assistant learned, decided, and did, so the next session picks up exactly where the last one left off.*
The Problem
Every AI coding session starts from zero. The assistant re-reads files it read yesterday, re-learns conventions it already knows, re-asks questions you already answered. Context compaction silently erases the session mid-work. Switch tools and all memory is gone.
EngramCC solves this at the infrastructure level — not by prompting harder, but by building a persistent memory layer that runs underneath any AI assistant.
Quick Install
npx engram-cc
Run it from the project root you want ECC to manage, or pass --project-dir .
The setup CLI detects your hardware, prepares a project-local .engram-cc/ workspace, asks for a shared models directory, and generates assistant hook/MCP snippets under .engram-cc/assistant-configs/. No user-home config is modified.
Canonical MCP Install Command
For assistants that self-install MCP servers from npm, the canonical EngramCC command is:
npx --yes --package=@morous-dev/engram-cc -- engramcc-mcp
Equivalent npm exec form:
npm exec --yes --package=@morous-dev/engram-cc -- engramcc-mcp
Assistants should not guess npx @morous-dev/engram-cc mcp. Use the explicit package/bin form above.
For project-local ECC setup, the generated snippets under .engram-cc/assistant-configs/ intentionally use node instead. The npx --package ... form above is for assistants that install EngramCC directly from npm without running project-local setup first.
Supported Assistants
| Assistant | Hook support | MCP support |
|---|---|---|
| Claude Code | Full lifecycle hooks | recall / search / recent / graph_query |
| Gemini CLI | Full lifecycle hooks | recall / search / recent / graph_query |
| VS Code Copilot | — | recall / search / recent / graph_query |
| Codex CLI | Native hooks (session_start, pre_tool_use, stop) + transcript-exact user_prompt_submit / post_tool_use + synthesized pre_compact | recall / search / recent / graph_query |
| Kilo CLI | Wrapper-assisted only; native hooks not verified | recall / search / recent / graph_query |
| OpenCode | Full lifecycle hooks | recall / search / recent / graph_query |
| Cursor | — | recall / search / recent / graph_query |
On Windows, generated hook snippets call src/hooks/hook-runner.mjs so assistant and project env vars are injected without brittle cmd /C quoting.
Codex-specific note: the exact prompt/tool bridge reads Codex's own session JSONL under CODEX_HOME / ~/.codex/sessions/, but ECC still writes its state only into the project-local .engram-cc/ directory. Because Codex does not expose a true prompt-submit injection hook, startup context also includes a Codex turn policy that steers the assistant toward EngramCC MCP memory on user turns when earlier context may have compacted out.
Kilo-specific note: current verified support is MCP plus the ekilo wrapper flow for session-start / session-stop continuity. Kilo has an open request for native lifecycle hooks, so ECC does not claim native Kilo hook parity yet.
How It Works
EngramCC runs as session middleware — lifecycle hooks capture what happens during a session, a local SLM synthesizes memory offline at session end, and an MCP server serves pre-digested context to any connected assistant.
┌─────────────────────────────────────────────────────────────────┐
│ Your AI Coding Session │ │ │ │ UserPromptSubmit → PostToolUse → PreCompact → Stop │ │ │ │ │ │ │ │ └───────────────┴──────────────┴──────────┘ │ │ │ │ │ SQLite event DB │ │ │ │ │ ┌───────────┴───────────┐ │ │ │ Local SLM Archivist │ │ │ │ (no API calls, 100% │ │ │ │ offline synthesis) │ │ │ └───────────┬───────────┘ │ │ │ │ │ ┌──────────────────┼──────────────────┐ │ │ │ │ │ │ │ YAML handoff Knowledge graph Vector store │ │ (hot resume) (BFS traversal) (semantic search) │ │ │ │ │ │ │ └──────────────────┴──────────────────┘ │ │ │ │ │ MCP server │ │ (recall / search / recent │ │ / graph_query) │ └─────────────────────────────────────────────────────────────────┘ ↑ ↓ SessionStart hook Next session injects context picks up here
Session Lifecycle
| Hook | When | What it does |
|---|---|---|
UserPromptSubmit | User sends a message | Captures intent and decision signals |
PostToolUse | Any tool completes | Captures file ops, errors, tool results |
PreCompact | Context nears limit | Snapshots session state before erasure |
SessionStart | Session opens | Injects hot handoff or cold summary + MCP pointer |
Stop | Session closes | SLM synthesis → handoff YAML + graph + vector store |
Tiered Context Injection
EngramCC injects context surgically, not blindly:
- Hot resume (< 30 min since last session): full handoff XML injected — complete working context, decisions, modified files, errors
- Cold start: one-sentence headline + pointer to MCP
recalltool — zero token waste on stale context
Memory Architecture
| Layer | Storage | Contents | Lifespan |
|---|---|---|---|
| Working | YAML | Preferences, conventions, persistent decisions | Cross-session |
| Episodic | SQLite + FTS5 | All session events, full-text searchable | Per-project |
| Semantic | SQLite graph | File/decision knowledge graph, BFS traversal | Per-project |
| Procedural | sqlite-vec | Embedding-indexed high-value events | Per-project |
Local SLM Pipeline
EngramCC synthesizes session memory using local models first — zero external API calls for its own compaction, handoff, and retrieval support.
The setup CLI detects your hardware and selects the best available tier:
| Tier | Model | RAM needed | What it does |
|---|---|---|---|
| 1 | Rule-based | 0 | Always-on heuristic extraction |
| 2 | MiniLM-L6-v2 ONNX | ~400 MB | Embeddings via @huggingface/transformers |
| 3 | Llama 3.2 3B Q5_K_M | ~4 GB | Primary local synthesis tier |
| 3b | Qwen3.5 4B Q4_K_M | ~3.5 GB | Alternate synthesis tier, strong multilingual/coding performance |
| 3c | Gemma 3 4B QAT Q4_0 | ~3 GB | Alternate synthesis tier, strong structured reasoning |
| 4 | Ollama / LM Studio / Groq | user-provided | External HTTP provider |
Models are stored in a shared directory chosen during engramcc setup and saved in /.engram-cc/config.json. Tiers auto-cascade: if no Tier 3 model is available, Tier 2 runs; if Tier 2 is unavailable, Tier 1 runs. Core memory capture is never blocked.
Stable Project Identity
EngramCC tracks projects by a stable UUID stored in .ecc-id — not by folder path. This means:
- Rename the project folder → same history
- Move it to a different drive → same history
- Re-clone from git → same history (falls back to git root commit hash)
Resolution order: .ecc-id file → git root commit hash → fresh UUIDv4 (written once, never regenerated).
Data Locations
<projectDir>/.engram-cc/
├── sessions/ │ └── .db ← SQLite DB per project (all memory tiers) ├── assistant-configs/ ← Local hook/MCP snippets per assistant ├── config.json ← Project config, including shared models path ├── handoff.yaml ← Session handoff (hot resume data) └── working.yaml ← Cross-session working memory
/Engram Context Continuum/models/ └── .gguf ← Shared GGUF models reused across projects
All data is local. No network calls for core operation. No credentials, tokens, or API keys required.
MCP Tools
When connected via MCP, any assistant can query EngramCC directly:
| Tool | Purpose |
|---|---|
recall | Full session context: handoff + working memory |
search | FTS5 full-text search over all session events |
recent | Most recent N events, filterable by category |
graph_query | BFS traversal of the knowledge graph |
Configuration
Override compression tier or external provider in plugin-config.yaml:
# Force a specific compression tier (default: auto)
compression: tier: "tier3b"
Tier 4 only
external: provider: "ollama" model: "phi4-mini" base_url: "http://localhost:11434"
Benchmarks
The numbers below were verified against the current repo state on March 14, 2026 after the carry-forward compaction fix. They reflect what was actually run, not historical bests.
Verified Benchmark Runs
| Command | What it measures | Current result |
|---|---|---|
npm run build | TypeScript compile integrity | ✅ PASS |
node benchmark/test-session-db.mjs | Session DB, archive, resume-chain, carry-forward regressions | ✅ 53/53 |
npm run test:quality | End-to-end handoff quality across S1/S2/S3 | ✅ 20/20 |
node benchmark/test-hook-portability.mjs | Cross-assistant hook env and startup portability | ✅ 14/14 |
node benchmark/test-codex-adapter.mjs | Codex transcript sync + trigger + stop regressions | ✅ 29/29 |
npm run test:brutal:quick | Real-data extraction calibration (WildChat + SWE-bench) | ✅ PASS |
npm run test:lifecycle:quick | 100-cycle real-data lifecycle / archive retention observation | ✅ PASS |
node benchmark/test-adversarial.mjs --model llama3.2-3b | Hostile SLM inputs A1–A11 | ✅ 11/11 |
node benchmark/test-adversarial.mjs --model qwen | Hostile SLM inputs A1–A11 | ✅ 11/11 |
node benchmark/test-adversarial.mjs --model gemma3-4b | Hostile SLM inputs A1–A11 | ✅ 11/11 |
node benchmark/test-tier-comparison.mjs | Cross-tier compaction retention (4→20 cycles) | ✅ 38/38 on tier3, tier3b, tier3c |
node benchmark/test-scale.mjs | Prompt-length stability | ✅ Llama 16/16 · Qwen 15/16 |
node benchmark/test-compaction-marathon.mjs | Multi-compaction memory retention | ✅ 53/53 |
node benchmark/test-diffmode.mjs | Grammar-constrained JSON output | ✅ PASS for Llama 3.2 3B + Qwen3.5 4B |
What Those Results Mean
Handoff Quality
npm run test:quality exercises the full path from session events to next-session context injection.
| Scenario | Assertions | Result |
|---|---|---|
| S1 — Initial session | 6/6 | ✅ |
| S2 — Hot resume | 5/5 | ✅ |
|
Solo se muestra el principio; lee el resto en el repo