Simple Rick
Simple Rick
Memoria persistente para agentes de codificación con IA.
Cada sesión de codificación con un agente de IA empieza desde cero. Vuelves a explicar la arquitectura, vuelves a justificar la decisión que ya tomaste hace tres semanas y vuelves a descubrir el error que ya corregiste una vez. La transcripción existe, pero es un muro de texto que nadie —ni humano ni modelo— vuelve a leer.
Simple Rick es un servidor MCP que se sitúa junto a tu agente y lo soluciona. Registra lo que ocurre realmente en una sesión, lo normaliza en fragmentos estructurados con embeddings, conecta los fragmentos en un grafo y devuelve la parte relevante al inicio de la siguiente sesión.
Todo se ejecuta en local. Un archivo SQLite en tu proyecto, sin base de datos externa ni telemetría.
Estado: alpha. Funciona y se usa, pero tiene aristas sin pulir: consulta Limitaciones conocidas. Las interfaces pueden cambiar.
Cómo funciona
flowchart LR
A["Claude Code<br/>PostToolUse hook"] -->|POST /api/record| B[Recorder]
W["File watcher<br/>(chokidar)"] --> B
B --> Q[Norm queue]
Q --> L["Lightweight<br/>normalizer"]
L --> D["Deep<br/>normalizer"]
D --> E[Edge wirer]
E --> G[("SQLite<br/>+ sqlite-vec")]
G --> BR[Briefer]
G --> S[Semantic search]
G --> I[Insight engine]
BR --> M["MCP tools<br/>→ your agent"]
S --> M
I --> M
G --> U["Web UI<br/>:3777"]Dos cosas alimentan el pipeline: un hook que notifica cada llamada a herramientas que hace tu agente y un file watcher que captura los diffs con marcas de tiempo de milisegundos. Ambas llegan al grabador, que escribe los turnos en bruto de forma segura ante caídas.
Una cola en segundo plano drena esos turnos sin bloquear tu sesión. El normalizador ligero clasifica la intención y el dominio de forma económica; el normalizador profundo resume y genera embeddings; el conectador de aristas enlaza los fragmentos nuevos con los relacionados ya existentes. El resultado es un pequeño grafo de conocimiento, no una transcripción.
Al inicio de la siguiente sesión, el briefer lee ese grafo y le da a tu agente un informe en lugar de una pizarra en blanco.
Related MCP server: hive-memory
Inicio rápido
Requiere Node.js 20+.
git clone https://github.com/good-v1be/simple-rick.git
cd simple-rick
npm install
npm run build1. Dale un proveedor de IA
Simple Rick necesita un proveedor para los embeddings y otro para la finalización de chat. Lo detecta automáticamente a partir del entorno; la primera coincidencia gana:
Variable de entorno | Embeddings | Chat |
| OpenAI | OpenAI |
| Gemini | |
| Mistral | Mistral |
| Voyage | Claude Haiku |
Anthropic no tiene modelo de embeddings, por eso necesita Voyage junto a él.
2. Regístralo como servidor MCP
En el .mcp.json de tu proyecto:
{
"mcpServers": {
"simple-rick": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/simple-rick/src/server/index.ts"],
"env": {
"PROJECT_PATH": ".",
"OPENAI_API_KEY": "${OPENAI_API_KEY}"
}
}
}
}3. Instala el hook del grabador
Sin esto, Simple Rick solo ve los cambios de archivos, no lo que tu agente hizo realmente. Copia hooks/simple-rick-recorder.js a una ubicación permanente y regístralo como hook PostToolUse en ~/.claude/settings.json:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Bash|Edit|Write|MultiEdit",
"hooks": [
{ "type": "command", "command": "node /path/to/simple-rick-recorder.js" }
]
}
]
}
}El hook es de tipo «dispara y olvida»: nunca bloquea a tu agente y, cuando Simple Rick no está en ejecución, no hace nada en silencio.
4. Úsalo
Inicia una sesión y llama a simple_rick_init una vez para sembrar el contexto del proyecto. A partir de entonces, abre cada sesión con simple_rick_briefing y ciérrala con simple_rick_close.
Herramientas MCP
Herramienta | Qué hace |
| Configuración única. Escanea el código base, extrae las decisiones de arquitectura implícitas del código y del historial de git, y siembra el contexto inicial. |
| Llámalo al inicio de la sesión. Devuelve el contexto del proyecto, los problemas abiertos, los aprendizajes y las recomendaciones. Acepta un |
| Llámalo al final de la sesión. Drena la cola: normaliza pares de mensajes, extrae aprendizajes, crea embeddings. |
| Búsqueda semántica en todo el historial del proyecto. Filtrable por intención ( |
| Haz una pregunta sobre el código, las decisiones pasadas o cómo se conectan las cosas. |
| Registra explícitamente una decisión de arquitectura con su justificación y las alternativas rechazadas. |
| Enlaza manualmente dos fragmentos o conceptos. |
| Explora la base de conocimiento en busca de correlaciones, tendencias y anomalías, validadas por un LLM. Modos: |
Interfaz web
El servidor también expone una visualización local del flujo en http://127.0.0.1:3777, que muestra el pipeline en directo y el grafo resultante. Está protegida por un token de portador generado en la primera ejecución; simple_rick_briefing imprime la URL con el token incluido.
Endpoints REST: GET /api/graph, GET /api/sessions, POST /api/record.
Dónde se guardan tus datos
Todo se encuentra en .simple-rick/ dentro de tu proyecto:
.simple-rick/
simple-rick.db SQLite: sessions, turns, chunks, edges, embeddings (sqlite-vec)
.token bearer token for the local HTTP server (mode 0600)Simple Rick añade .simple-rick/ a tu .gitignore en la primera ejecución. No se envía nada a ninguna parte salvo al proveedor de IA que hayas configurado, para la normalización y los embeddings.
Ten en cuenta el tamaño. La grabación completa no es barata en disco: un proyecto intenso de varios días puede generar una base de datos de cientos de megabytes.
Desarrollo
npm run dev # tsx watch
npm run build # compile to dist/
npm run lint # tsc --noEmit
npm test # vitest (11 unit + integration tests)También hay una suite de extremo a extremo en e2e/ que lanza sesiones reales de Claude Code CLI contra el servidor para poner a prueba cada herramienta MCP:
python3 e2e/test_mcp_e2e.py # requires the `claude` CLI and a configured providerNo está integrada en npm test porque consume llamadas reales a la API.
Ajustes
Todo es opcional: los valores predeterminados son con los que el proyecto ha funcionado durante meses.
Variable | Predeterminado | Qué hace |
|
|
|
|
| Cuántos archivos recorre el escáner del código base. Súbelo para repositorios grandes. |
|
| El archivo más grande que lee el escáner, en bytes. |
|
| Pausa entre pasadas de normalización. Bajarla consume llamadas a la API más rápido. |
Limitaciones conocidas
Lista honesta, para que nadie se lleve una sorpresa:
Solo probado con Claude Code. La interfaz MCP es estándar, pero el hook del grabador está escrito para el formato de hooks de Claude Code.
La grabación no es barata en disco. Consulta Dónde se guardan tus datos.
El grafo de conocimiento solo es tan bueno como el modelo que hay detrás. La normalización, el enrutamiento de dominios y la validación de insights son llamadas a LLM; un modelo pequeño o barato produce un grafo igualmente vago.
Todavía no hay poda. Nada envejece y se elimina de la base de datos por sí solo.
Licencia
MIT — consulta LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Shared memory for coding agents. Stop re-explaining your codebase every session.
Persistent engineering memory designed to follow developers across coding agents.
1Shared long-term memory for AI agents: save and recall context as a searchable knowledge graph.
Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenancePersistent memory for AI coding tools that captures conversations, builds a searchable knowledge graph, and automatically injects relevant context into new prompts.8 npm248MIT
- AlicenseNot gradedqualityCmaintenanceProvides AI coding agents with persistent, graph-connected memory across projects, enabling cross-project context retrieval via synaptic connections and hybrid search.08MIT
- AlicenseNot gradedqualityDmaintenanceEnables persistent memory for AI coding agents, allowing them to remember people, decisions, and context across sessions through a knowledge graph and automated briefings.56 PyPI15MIT
- AlicenseNot gradedqualityAmaintenanceProvides persistent, searchable memory and knowledge capture for AI-assisted development, enabling agents to retain decisions, bugs, and patterns across sessions and projects.MIT