Skip to main content
Glama

Rekindle

npm tests license

Para usuarios de Claude Code que pierden tiempo explicando de nuevo el contexto del proyecto en cada sesión.

npx rekindle init

Tu IA olvida todo entre sesiones. Rekindle lo soluciona.


Demostración de inicio de Rekindle

Rekindle es un motor de continuidad MCP que resuelve la orientación de sesión, no solo el almacenamiento. Oriéntate al inicio de la sesión, captura al final de la sesión. Todo local, todo SQLite, cero claves API.

v0.2.0 — capa de dominio de orientación, herramienta end_session, registros de continuidad tipados. Notas de la versión

Inicio rápido

Ejecutar npx rekindle init crea .rekindle/ en tu proyecto con una base de datos SQLite, una plantilla de identidad y un directorio de transcripciones. Imprime dos bloques para copiar:

  1. Configuración de MCP — pégalo en ~/.claude.json (le dice a Claude Code dónde está el servidor)

  2. Instrucciones de arranque — pégalo en el CLAUDE.md de tu proyecto (le dice a la IA cómo orientarse)

Luego completa .rekindle/identity.md e inicia una nueva sesión de Claude Code.

La sesión 1 almacena. La sesión 2 recuerda. La sesión 10 anticipa.


El problema (43 sesiones de datos)

A lo largo de 43 sesiones, medimos lo que un asistente de IA no lograba cargar al inicio de la sesión:

Métrica

Valor

Sesiones analizadas

43

Arranques limpios (todo el contexto cargado)

33%

Fallos de alta señal (más de 5 brechas)

26%

Fallos totales de recuperación

173

Las herramientas de memoria existentes (Mem0, Letta, Zep) optimizan la precisión de la recuperación: ¿puede la IA encontrar lo que almacenó? Eso es necesario pero no suficiente. Ninguna de ellas aborda si la IA cargó el contexto correcto para esta sesión, o si puede detectar lo que se perdió.

Rekindle resuelve la orientación de sesión: cargando identidad, contexto reciente, salud de la memoria y advertencias de contexto faltante antes de que el asistente comience a trabajar.

Consulta docs/gap-analysis.md para ver el conjunto de datos de investigación completo.


Qué hace

Arranque: orientarse al inicio de la sesión

boot_report ejecuta una canalización de orientación antes de que comience cualquier trabajo:

boot_report
  +-- Read identity document (who am I working with?)
  +-- Scan memory stats (what do I know?)
  +-- Find latest checkpoint (where did we leave off?)
  +-- Read last transcript (what actually happened?)
  +-- Detect gaps (what am I missing?)
  +-- Calculate orientation score (how oriented am I?)
  --> "Carrying forward: [context loaded, gaps identified, score: 80/100]"

Salida saludable:

## Orientation Score
100/100

+20  Identity document loaded
+20  Recent checkpoint exists
+20  Session transcript found
+20  Recent memories exist (last 7 days)
+10  Relationship/preference memories populated
+10  Project-scoped memories found

Salida dispersa (señala lo que falta):

## Gaps Detected
- [critical] identity_missing: No identity document found
- [warning] checkpoint_missing: No recent checkpoint

## Orientation Score
20/100

 ✗  Identity document loaded (20pts)
 ✗  Recent checkpoint exists (20pts)
 ✗  Session transcript found (20pts)
+20  Recent memories exist (last 7 days)
 ✗  Relationship/preference memories populated (10pts)
 ✗  Project-scoped memories found (10pts)

Captura: cerrar el ciclo al final de la sesión

end_session almacena registros de continuidad estructurados, no solo un resumen:

Campo

Qué captura

checkpoint

Dónde nos quedamos (obligatorio)

decisions

Qué se decidió y por qué

open_loops

Tareas o preguntas sin resolver

constraints

Límites que no deben violarse

relational_delta

Qué cambió en la relación de trabajo

next_session_focus

Dónde retomar la próxima sesión

preferences

Nuevas preferencias de usuario aprendidas

warnings

Cosas que la próxima sesión debería vigilar

Todos los registros se almacenan con metadatos de type, source y session_id. El siguiente boot_report carga el punto de control automáticamente.

Entre sesiones: buscar y gestionar

Herramienta

Descripción

store_memory

Almacenar con contenido, categoría, importancia (1-10) y alcance del proyecto

search_memory

Búsqueda de texto completo con clasificación BM25, potenciada por importancia

list_memories

Explorar memorias, las más recientes primero. Filtrar por categoría o proyecto

delete_memory

Eliminar por ID

update_memory

Actualizar contenido, categoría o importancia

Categorías: preference lesson context relationship general


¿Por qué no solo CLAUDE.md?

Un archivo estático es pasivo. Tu IA lo lee, pero no puede buscar en él, clasificarlo, rastrear lo que se ha recuperado o decirte qué falta. Rekindle añade:

  • Búsqueda — texto completo con clasificación ponderada por importancia

  • Estructura — alcance de categoría y proyecto a través de las memorias

  • Orientación — carga proactiva de contexto al arrancar, no solo recuperación bajo demanda

  • Detección de brechas — señala identidad faltante, categorías vacías, datos obsoletos

  • Puntuación — lista de verificación transparente para que sepas qué tan orientada está la IA

  • Captura de sesión — cierre estructurado con puntos de control, decisiones y ciclos abiertos


Aspectos destacados de la v0.2.0

  • 7 herramientas MCP — se añadió end_session para el cierre estructurado de sesión

  • Capa de dominio de orientaciónboot_report ahora es un envoltorio ligero; toda la lógica está en OrientationService, GapDetector, Scorer

  • Registros de continuidad tipados — las memorias llevan type, source, session_id en lugar de prefijos de contenido

  • Puntuación de orientación — lista de verificación aditiva de 100 puntos en 6 criterios

  • Brechas estructuradas{ code, severity, message } con 8 códigos de brecha

  • 64 pruebas automatizadas — unitarias, de integración y de rendimiento


Instalar desde el código fuente

git clone https://github.com/Skitchy/rekindle.git
cd rekindle
npm install
npm run build
node dist/init/cli.js init

Dos hooks de Python opcionales para Claude Code (solo stdlib, cero dependencias externas):

extract-session.py (Hook de parada): Extrae una transcripción en Markdown del JSONL de la sesión cuando esta termina.

pre-compact-capture.py (Hook de pre-compactación): Guarda los últimos 80 mensajes antes de la compactación del contexto.

{
  "hooks": {
    "Stop": [{
      "type": "command",
      "command": "python3 /path/to/rekindle/hooks/extract-session.py"
    }]
  }
}

Variable

Predeterminado

Descripción

REKINDLE_TRANSCRIPT_DIR

.rekindle/transcripts/

Dónde se guardan las transcripciones

REKINDLE_SESSIONS_DIR

Autodetectado

Directorio de sesiones de Claude Code

REKINDLE_HUMAN_NAME

Human

Nombre para los mensajes humanos

REKINDLE_AI_NAME

Assistant

Nombre para los mensajes de la IA

REKINDLE_TIMEZONE

UTC

Zona horaria para las marcas de tiempo

  • Todos los datos son locales. Nada se envía a servidores externos.

  • Sin llamadas de red. El servidor MCP se comunica a través de stdio. Sin HTTP, sin telemetría, sin analíticas.

  • Las transcripciones contienen texto de conversación. No habilites la captura de transcripciones si tus sesiones contienen secretos o credenciales.

  • La captura de transcripciones es opcional. Los hooks no están instalados por defecto.

  • La base de datos SQLite es un archivo normal. No está cifrada. Usa cifrado de disco a nivel de SO si es necesario.

  • .rekindle/ está en gitignore. El comando init maneja esto automáticamente.

  • boot_report lee archivos locales. Las rutas no están aisladas (sandboxed). Úsalo solo con clientes MCP y prompts en los que confíes.

Entorno

Estado

Claude Code (macOS)

Soportado, probado

Claude Code (Linux/WSL2)

Soportado, probado

Claude Code (Windows)

Soportado, probado

Claude Desktop

No probado (usa el mismo protocolo MCP)

Cursor, Continue, Cline

No probado (debería funcionar si soportan MCP stdio)

rekindle/
  src/
    index.ts          MCP server entry point
    server.ts         Server setup, tool registration
    storage/
      sqlite.ts       SQLite + FTS5, schema migration, sessions
    orientation/
      types.ts        OrientationResult, Gap, ScoreItem
      GapDetector.ts  Structural gap detection (8 codes)
      Scorer.ts       Orientation scoring (6 criteria, 100pts)
      OrientationService.ts   Orchestrator
      OrientationRenderer.ts  Markdown + JSON output
    tools/
      boot-report.ts  Thin wrapper over OrientationService
      end-session.ts  Structured session close
      store.ts search.ts list.ts delete.ts update.ts
    init/
      cli.ts scaffold.ts templates/
  hooks/
    extract-session.py
    pre-compact-capture.py

Almacenamiento: SQLite + FTS5 mediante better-sqlite3. Clasificación BM25 potenciada por importancia. Registros tipados con type, source, session_id.

Transporte: stdio (MCP estándar). Funciona con Claude Code de forma inmediata.

Pruebas

npm test

64 pruebas: CRUD de almacenamiento + clasificación FTS5, dominio de orientación (detección de brechas, puntuación, servicio, renderizado), integración MCP (las 7 herramientas) y rendimiento (búsqueda de 1000 memorias en menos de 100ms).

Hoja de ruta

v0.3: "Piensa en redes" — Activación por propagación, búsqueda semántica mediante embeddings, ciclos abiertos en informes de arranque, herramientas de análisis de brechas, arnés de evaluación.

Licencia

MIT

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
1dResponse time
1dRelease cycle
2Releases (12mo)

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/Skitchy/rekindle'

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