Memory
Persistent cross-session memory that gives your AI assistant context about your project, preferences, and past decisions
Bootspring Memory is a local memory agent that gives your AI coding assistant persistent context across sessions. It remembers your project, your preferences, and your past decisions — so every new conversation starts where the last one left off.
How It Works
When you start a session in a supported AI assistant (Claude Code, Codex), the Memory agent activates automatically:
Bootspring Memory
::::::::
:: M ::
::::::::
Agent: Bootspring Memory
Mode: whisper
Session: 91336c8d-f368-4ea2-96f7-16654e8bfbc9
Storage: .bootspring/memory/
Memory is fully local — no external services.
On every prompt, Bootspring injects relevant memory into your AI assistant's context window — your project details, preferences, and accumulated notes from previous sessions.
Memory Blocks
Memory is organized into four persistent blocks:
| Block | What It Stores |
|---|---|
| Persona | How the AI should behave in your project |
| Project Context | Key facts about your codebase, stack, architecture |
| User Preferences | Your preferred tools, coding style, workflow habits |
| Session Notes | Accumulated insights from past sessions |
These blocks persist across sessions in .bootspring/memory/blocks.json. Your AI assistant can read and update them as it learns about your project.
Operating Modes
| Mode | Behavior | Best For |
|---|---|---|
| Whisper (default) | Injects memory once at session start | Minimal overhead, works for most users |
| Full | Injects memory on every prompt + tracks changes | Power users who update blocks frequently |
| Off | Memory disabled | When you don't need cross-session context |
Set the mode in .bootspring/memory/config.json:
Or via environment variable:
Privacy & Storage
All memory is stored locally in your project directory under .bootspring/memory/. No data is sent to external services. Memory files are plain JSON that you can inspect, edit, or delete at any time.
.bootspring/memory/
blocks.json # Your persistent memory blocks
config.json # Memory agent configuration
conversations/ # Per-session conversation logs
sessions/ # Session sync state
Add .bootspring/memory/ to .gitignore if you don't want memory committed to your repo. Or commit it to share project context with your team.
Git-Based Memory (CLI)
In addition to the hook-based memory agent, Bootspring provides CLI commands that extract learnings from your git history:
Cross-Session Recall
Save and retrieve decisions across sessions:
Setup
Install hooks for all supported assistants with a single command:
This writes the correct config for each assistant:
| Assistant | Config written |
|---|---|
| Claude Code | .claude/settings.local.json |
| Codex | .codex/hooks.json |
Each event calls bootspring hook dispatch <event>, which runs memory (and other intelligence features) in deterministic order. You don't need to configure individual hook scripts.
To verify memory is active, start a new session — you should see the Memory banner. To check hook status:
Comparison with Assistant-Native Memory
| Feature | Bootspring Memory | Claude Code Auto-Memory | Conversation Resume |
|---|---|---|---|
| Storage | .bootspring/memory/ | ~/.claude/projects/.../memory/ | Assistant-managed |
| Structure | 4 typed blocks (persona, context, prefs, notes) | Freeform markdown | Full conversation |
| Scope | Cross-session project context | Cross-session notes | Single conversation |
| Customizable | Agent name, mode, custom blocks | Limited | No |
| Shareable | Commit to repo for team use | Per-user only | Per-user only |
| Multi-assistant | Claude Code + Codex | Claude Code only | Assistant-specific |
These systems work simultaneously. Bootspring Memory provides structured project context, while assistant-native memory captures freeform notes and resume restores a specific conversation.
Related
- Telemetry — Session analytics and cost tracking
- CLI Reference — Full command reference
- MCP Tools — Memory MCP tool reference