| name | jasper-recall |
| description | Local RAG system for agent memory using ChromaDB and sentence-transformers. Provides semantic search over session logs, daily notes, and memory files. Use when you need persistent memory across sessions, want to search past conversations, or build agents that remember context. Commands: recall "query", index-digests, digest-sessions. |
Jasper Recall
Local RAG (Retrieval-Augmented Generation) system for AI agent memory. Gives your agent the ability to remember and search past conversations.
When to Use
- Memory recall: Search past sessions for context before answering
- Continuous learning: Index daily notes and decisions for future reference
- Session continuity: Remember what happened across restarts
- Knowledge base: Build searchable documentation from your agent's experience
Quick Start
Setup
One command installs everything:
npx jasper-recall setup
This creates:
- Python venv at
~/.openclaw/rag-env
- ChromaDB database at
~/.openclaw/chroma-db
- CLI scripts in
~/.local/bin/
Basic Usage
Search your memory:
recall "what did we decide about the API design"
recall "hopeIDS patterns" --limit 10
recall "meeting notes" --json
Index your files:
index-digests
Create session digests:
digest-sessions
digest-sessions --dry-run
How It Works
Three Components
- digest-sessions — Extracts key info from session logs (topics, tools used)
- index-digests — Chunks and embeds markdown files into ChromaDB
- recall — Semantic search across your indexed memory
What Gets Indexed
By default, indexes files from ~/.openclaw/workspace/memory/:
*.md — Daily notes, MEMORY.md
session-digests/*.md — Session summaries
repos/*.md — Project documentation
founder-logs/*.md — Development logs (if present)
Embedding Model
Uses sentence-transformers/all-MiniLM-L6-v2:
- 384-dimensional embeddings
- ~80MB download on first run
- Runs locally, no API needed
Agent Integration
Memory-Augmented Responses
results = exec("recall 'project setup decisions' --json")
Automated Indexing (Heartbeat)
Add to HEARTBEAT.md:
## Memory Maintenance
- [ ] New session logs? → `digest-sessions`
- [ ] Memory files updated? → `index-digests`
Cron Job
Schedule regular indexing:
{
"schedule": { "kind": "cron", "expr": "0 */6 * * *" },
"payload": {
"kind": "agentTurn",
"message": "Run index-digests to update the memory index"
},
"sessionTarget": "isolated"
}
CLI Reference
recall
recall "query" [OPTIONS]
Options:
-n, --limit N Number of results (default: 5)
--json Output as JSON
-v, --verbose Show similarity scores
index-digests
index-digests
Indexes markdown files from:
~/.openclaw/workspace/memory/*.md
~/.openclaw/workspace/memory/session-digests/*.md
~/.openclaw/workspace/memory/repos/*.md
~/.openclaw/workspace/memory/founder-logs/*.md
Skips files that haven't changed (content hash check).
digest-sessions
digest-sessions [OPTIONS]
Options:
--dry-run Preview without writing
--all Process all sessions (not just new)
--recent N Process only N most recent sessions
Configuration
Custom Paths
Set environment variables:
export RECALL_WORKSPACE=~/.openclaw/workspace
export RECALL_CHROMA_DB=~/.openclaw/chroma-db
export RECALL_SESSIONS_DIR=~/.openclaw/agents/main/sessions
Chunking
Default settings in index-digests:
- Chunk size: 500 characters
- Overlap: 100 characters
Troubleshooting
"No index found"
index-digests
"Collection not found"
rm -rf ~/.openclaw/chroma-db
index-digests
Model download slow
First run downloads ~80MB model. Subsequent runs are instant.
Links