Sponsored by Deepsite.site

Rekindle

Created By
Skitchya month ago
Your AI forgets everything between sessions. Rekindle fixes that with two tools that close the continuity loop: boot_report orients the assistant at session start (identity, checkpoints, gaps, orientation score), and end_session captures structured handoff at session end (decisions, open loops, constraints, relational context). 7 MCP tools, 64 tests, local SQLite, no cloud, no API keys. New in v0.2.0: • Orientation domain layer with gap detection and 100-point scoring • end_session tool with typed continuity records (checkpoint, decision, open_loop, constraint, preference, warning, relational_delta, next_session_focus) • Schema migration adding type, source, and session_id columns • Project-aware scoring • Full outside review from an independent AI reviewer
Overview

Rekindle

npm tests license

For Claude Code users who lose time re-explaining project context every session.

npx rekindle init

Your AI forgets everything between sessions. Rekindle fixes that.


Rekindle init demo

Rekindle is an MCP continuity engine that solves session orientation, not just storage. Orient at session start, capture at session end. All local, all SQLite, zero API keys.

v0.2.0 — orientation domain layer, end_session tool, typed continuity records. Release notes

Quick Start

npx rekindle init

This creates .rekindle/ in your project with a SQLite database, identity template, and transcript directory. Then add the MCP server config for your client:

Claude Code

Add to ~/.claude.json:

{
  "mcpServers": {
    "rekindle": {
      "command": "npx",
      "args": ["-y", "rekindle"]
    }
  }
}
Claude Desktop

Add to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

{
  "mcpServers": {
    "rekindle": {
      "command": "npx",
      "args": ["-y", "rekindle"]
    }
  }
}
Cursor

Add to .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "rekindle": {
      "command": "npx",
      "args": ["-y", "rekindle"]
    }
  }
}

Then fill in .rekindle/identity.md and paste the boot instructions into your project's CLAUDE.md.

Session 1 stores. Session 2 remembers. Session 10 anticipates.


The Problem (43 Sessions of Data)

Over 43 sessions, we measured what an AI assistant failed to load at session start:

MetricValue
Sessions analyzed43
Clean boots (all context loaded)33%
High-signal failures (5+ gaps)26%
Total retrieval failures173

Existing memory tools (Mem0, Letta, Zep) optimize for retrieval accuracy: can the AI find what it stored? That's necessary but not sufficient. None of them address whether the AI loaded the right context for this session, or whether it can detect what it missed.

Rekindle solves session orientation: loading identity, recent context, memory health, and missing-context warnings before the assistant starts work.

See docs/gap-analysis.md for the full research dataset.


What It Does

Boot: orient at session start

boot_report runs an orientation pipeline before any work begins:

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]"

Healthy output:

## 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

Sparse output (flags what's missing):

## 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)

Capture: close the loop at session end

end_session stores structured continuity records — not just a summary:

FieldWhat it captures
checkpointWhere we left off (required)
decisionsWhat was decided and why
open_loopsUnresolved tasks or questions
constraintsBoundaries that must not be violated
relational_deltaWhat changed in the working relationship
next_session_focusWhere to resume next session
preferencesNew user preferences learned
warningsThings next session should watch for

All records stored with type, source, and session_id metadata. Next boot_report loads the checkpoint automatically.

Between sessions: search and manage

ToolDescription
store_memoryStore with content, category, importance (1-10), and project scope
search_memoryFull-text search with BM25 ranking, boosted by importance
list_memoriesBrowse memories, newest first. Filter by category or project
delete_memoryDelete by ID
update_memoryUpdate content, category, or importance

Categories: preference lesson context relationship general


Why not just CLAUDE.md?

A static file is passive. Your AI reads it, but it can't search it, rank it, track what's been retrieved, or tell you what's missing. Rekindle adds:

  • Search — full-text with importance-weighted ranking
  • Structure — category and project scoping across memories
  • Orientation — proactive context loading at boot, not just on-demand retrieval
  • Gap detection — flags missing identity, empty categories, stale data
  • Scoring — transparent checklist so you know how oriented the AI is
  • Session capture — structured close with checkpoints, decisions, and open loops

v0.2.0 Highlights

  • 7 MCP tools — added end_session for structured session close
  • Orientation domain layerboot_report is now a thin wrapper; all logic in OrientationService, GapDetector, Scorer
  • Typed continuity records — memories carry type, source, session_id instead of content prefixes
  • Orientation scoring — 100-point additive checklist across 6 criteria
  • Structured gaps{ code, severity, message } with 8 gap codes
  • 64 automated tests — unit, integration, and performance

Install from Source

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

Two optional Python hooks for Claude Code (stdlib only, zero external dependencies):

extract-session.py (Stop hook): Extracts a Markdown transcript from the session JSONL when a session ends.

pre-compact-capture.py (PreCompact hook): Saves the last 80 messages before context compaction.

{
  "hooks": {
    "Stop": [{
      "type": "command",
      "command": "python3 /path/to/rekindle/hooks/extract-session.py"
    }]
  }
}
VariableDefaultDescription
REKINDLE_TRANSCRIPT_DIR.rekindle/transcripts/Where transcripts are saved
REKINDLE_SESSIONS_DIRAuto-detectedClaude Code sessions directory
REKINDLE_HUMAN_NAMEHumanName for human messages
REKINDLE_AI_NAMEAssistantName for AI messages
REKINDLE_TIMEZONEUTCTimezone for timestamps
Privacy and Security
  • All data is local. Nothing is sent to external servers.
  • No network calls. The MCP server communicates via stdio. No HTTP, no telemetry, no analytics.
  • Transcripts contain conversation text. Do not enable transcript capture if your sessions contain secrets or credentials.
  • Transcript capture is optional. The hooks are not installed by default.
  • SQLite database is a regular file. Not encrypted. Use OS-level disk encryption if needed.
  • .rekindle/ is gitignored. The init command handles this automatically.
  • boot_report reads local files. Paths are not sandboxed. Only use with MCP clients and prompts you trust.

Compatibility

ClientTransportStatus
Claude Code (macOS)stdioTested
Claude Code (Linux/WSL2)stdioTested
Claude Code (Windows)stdioTested
Claude DesktopstdioCompatible (same MCP config format)
CursorstdioCompatible (same MCP config format)
Any MCP stdio clientstdioCompatible
Architecture
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

Storage: SQLite + FTS5 via better-sqlite3. BM25 ranking boosted by importance. Typed records with type, source, session_id.

Transport: stdio (standard MCP). Works with Claude Code out of the box.

Tests

npm test

64 tests: storage CRUD + FTS5 ranking, orientation domain (gap detection, scoring, service, rendering), MCP integration (all 7 tools), and performance (1000-memory search under 100ms).

Roadmap

v0.3: "It thinks in networks" — Spreading activation, semantic search via embeddings, open loops in boot reports, gap analysis tooling, eval harness.

License

MIT

Server Config

{
  "mcpServers": {
    "rekindle": {
      "command": "npx",
      "args": [
        "-y",
        "rekindle"
      ]
    }
  }
}
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
CursorThe AI Code Editor
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Playwright McpPlaywright MCP server
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Tavily Mcp
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Serper MCP ServerA Serper MCP Server
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
ChatWiseThe second fastest AI chatbot™
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
DeepChatYour AI Partner on Desktop
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
WindsurfThe new purpose-built IDE to harness magic
Amap Maps高德地图官方 MCP Server
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.