Skip to main content
Glama
good-v1be
by good-v1be

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 build

1. 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_API_KEY

OpenAI

OpenAI

GOOGLE_API_KEY

Google

Gemini

MISTRAL_API_KEY

Mistral

Mistral

ANTHROPIC_API_KEY + VOYAGE_API_KEY

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

simple_rick_init

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.

simple_rick_briefing

Llámalo al inicio de la sesión. Devuelve el contexto del proyecto, los problemas abiertos, los aprendizajes y las recomendaciones. Acepta un focus opcional para acotarlo.

simple_rick_close

Llámalo al final de la sesión. Drena la cola: normaliza pares de mensajes, extrae aprendizajes, crea embeddings.

simple_rick_search

Búsqueda semántica en todo el historial del proyecto. Filtrable por intención (bugfix, refactor, architecture_decision, …).

simple_rick_ask

Haz una pregunta sobre el código, las decisiones pasadas o cómo se conectan las cosas.

simple_rick_decision

Registra explícitamente una decisión de arquitectura con su justificación y las alternativas rechazadas.

simple_rick_link

Enlaza manualmente dos fragmentos o conceptos.

simple_rick_insights

Explora la base de conocimiento en busca de correlaciones, tendencias y anomalías, validadas por un LLM. Modos: deep, semantic, chains, all.


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 provider

No 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

SIMPLE_RICK_LOG_LEVEL

info

error, warn, info o debug. Todo va a stderr; stdout pertenece a MCP.

SIMPLE_RICK_MAX_FILES

500

Cuántos archivos recorre el escáner del código base. Súbelo para repositorios grandes.

SIMPLE_RICK_MAX_FILE_SIZE

50000

El archivo más grande que lee el escáner, en bytes.

SIMPLE_RICK_QUEUE_THROTTLE_MS

2000

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.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Persistent memory for AI coding tools that captures conversations, builds a searchable knowledge graph, and automatically injects relevant context into new prompts.
    12
    246
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides AI coding agents with persistent, graph-connected memory across projects, enabling cross-project context retrieval via synaptic connections and hybrid search.
    18
    6
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides long-term memory for AI coding agents, enabling them to remember, search, and organize information across sessions and platforms like Claude Code, ChatGPT, and Cursor.
    13
    7
    MIT

View all related MCP servers

Related MCP Connectors

  • Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.

  • Persistent memory for AI agents — verbatim conversations, searchable by meaning.

  • Persistent memory for AI agents. Search, store, and recall across sessions.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/good-v1be/simple-rick'

If you have feedback or need assistance with the MCP directory API, please join our Discord server