Search past Claude Code, Codex, pi and Grok sessions. Triggers: /recall, "search old conversations", "find a past session", "recall a previous conversation", "search session history", "what did we discuss", "remember when we"
Install
npx skills add https://github.com/arjunkmrm/recall --skill recallSKILL.md
/recall — Search Past Claude, Codex, pi & Grok Sessions
Search all past Claude Code, Codex, pi and Grok sessions using full-text search with BM25 ranking.
Usage
python3 ~/.claude/skills/recall/scripts/recall.py [QUERY] [--project PATH] [--days N] [--source claude|codex|pi|grok] [--limit N] [--reindex]
Examples
# List every session in the last day (no text search)
python3 ~/.claude/skills/recall/scripts/recall.py --days 1
# List every pi session in the last week
python3 ~/.claude/skills/recall/scripts/recall.py --days 7 --source pi
# Simple keyword search
python3 ~/.claude/skills/recall/scripts/recall.py "bufferStore"
# Phrase search (exact match)
python3 ~/.claude/skills/recall/scripts/recall.py '"ACP protocol"'
# Boolean query
python3 ~/.claude/skills/recall/scripts/recall.py "rust AND async"
# Prefix search
python3 ~/.claude/skills/recall/scripts/recall.py "buffer*"
# Filter by project and recency
python3 ~/.claude/skills/recall/scripts/recall.py "state machine" --project ~/my-project --days 7
# Search only Claude Code sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source claude
# Search only Codex sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source codex
# Search only pi sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source pi
# Search only Grok sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source grok
# Force reindex
python3 ~/.claude/skills/recall/scripts/recall.py --reindex "test"
Query Syntax (FTS5)
- Words:
bufferStore— matches stemmed variants (e.g., "discussing" matches "discuss") - Phrases:
"ACP protocol"— exact phrase match - Boolean:
rust AND async,tauri OR electron,NOT deprecated - Prefix:
buffer*— matches bufferStore, bufferMap, etc. - Combined:
"state machine" AND test - CJK:
issue化— automatically uses trigram matching for Japanese/Chinese/Korean text
After Finding a Match
To resume a session, cd into the project directory and use the appropriate command:
# Claude Code sessions [claude]
cd /path/to/project
claude --resume SESSION_ID
# Codex sessions [codex]
cd /path/to/project
codex resume SESSION_ID
# Grok sessions [grok]
```bash
grok --resume SESSION_ID
Pi sessions [pi]
cd /path/to/project pi --session SESSION_ID # full or partial id; pi resolves prefix matches
Each result includes a `File:` path. Use it to read the raw transcript (auto-detects format):
```bash
python3 ~/.claude/skills/recall/scripts/read_session.py <File-path-from-result>
If results are missing File: paths, run --reindex to backfill.
Notes
- Index is stored at
~/.recall.db(SQLite FTS5, auto-migrated from~/.claude/recall.db) - Indexes four sources:
~/.claude/projects/(Claude Code),~/.codex/sessions/(Codex),~/.pi/agent/sessions/(pi), and~/.grok/sessions/**/chat_history.jsonl(Grok) - First run indexes all sessions (a few seconds); subsequent runs are incremental
- Only user and assistant messages are indexed (tool calls, thinking blocks, state snapshots skipped)
- Results show
[claude],[codex],[pi], or[grok]tags to indicate the source - Dual-table FTS: English queries use Porter stemming, CJK queries use trigram matching
- Omit the query argument for list mode — every session in the window, sorted by recency, no FTS
- Provide a query for full-text search; both modes accept
--project,--days,--source,--limit - Upgrading from 0.3.x: run
--reindexonce to pull in pi sessions - Upgrading from 0.4.x: run
--reindexonce to pull in Grok sessions - Upgrading from 0.2.x: run
--reindexonce to build the CJK index
Related skills
find-skillsvercel-labs3.6MHelps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.handoffmattpocock883KCompact the current conversation into a handoff document for another agent to pick up.microsoft-foundrymicrosoft618KBuild, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end. USE FOR: foundry, azd ai agent, azd provision/deploy, hosted agent scaffold/develop/run/deploy/troubleshoot, prompt agent create, create agent, update agent, add tool to agent, invoke agent, agent.yaml, agent insights, pull agent insights, evaluate agent, batch eval, continuous eval, continuous monitoring, agent CI/CD, optimize prompt, improve prompt, prompt optimizer, optimize agcavemanjuliusbrussee544KUltra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".