Ask "where did we figure out that auth bug?" and your current agent searches your past coding chats across all three tools, then pulls the relevant messages into your new chat. Start fresh, switch agents, or come back weeks later without explaining everything again.
Quick Start · Try it · Privacy · More plugins
Requires Node.js 22.13 or newer. Follow the section for each agent where you want to use it.
Run these inside Claude Code:
/plugin marketplace add JCodesMore/jcodesmore-plugins
/plugin install agent-recall@jcodesmore-plugins
Fully restart Claude Code so the new skill loads.
From a terminal:
git clone https://github.com/JCodesMore/agent-recall.git
cd agent-recall
node scripts/install.mjs --agents-onlyRestart Codex or OpenCode if it was already running.
That's it. Invoke Agent Recall directly, followed by your query:
| Agent | Invocation |
|---|---|
| Claude Code plugin | /agent-recall:agent-recall <query> |
| Claude Code standalone skill | /agent-recall <query> |
| Codex | $agent-recall <query> |
| OpenCode | Use the agent-recall skill: <query> |
The first search builds a private local index; later searches refresh only what changed.
Replace <query> with something like:
- "What did we do in the past 24 hours?"
- "Where did we fix that Postgres connection issue?"
- "What did we decide about the new auth flow?"
- "Find where I compared those proxy APIs and summarize the result."
- "Catch me up on this project from yesterday."
- "What did I discuss in Codex about this feature last week?"
- "Find where we debugged the checkout page and show me the screenshot I shared."
You do not need to remember which agent you used, what the chat was called, or where the session file lives. Just describe what you remember.
One question can search all three chat histories. Results show the app, project, time, and surrounding messages, so you can see the earlier decision in context. Your agent can also catch you up on recent sessions and reopen supported local images or files from a matching chat.
Attachment support covers inline images from Claude Code, input images from Codex, and locally stored OpenCode file parts. It does not download files from remote URLs.
Searching and indexing happen on your computer. Agent Recall does not upload your chat history to its own server, and you do not need a separate API key, account, or embedding service.
Only user and assistant conversation text, including supported subagent chats, is indexed by default. System prompts, private reasoning, tool logs, patches, and other background data are skipped. Common credentials and private keys are redacted before text reaches the index.
When your agent opens a matching excerpt or attachment, that content is handled by the AI service you are currently using, just like anything else you type or attach in that chat.
The first search reads your existing chat history. Later searches only refresh files that changed. Your agent starts with a few likely matches, opens the surrounding messages when needed, and can pull a longer transcript or an attached image.
| App | Conversation history read by default |
|---|---|
| Claude Code | ~/.claude/projects/**/*.jsonl |
| Codex | ~/.codex/sessions/**/*.jsonl and ~/.codex/archived_sessions |
| OpenCode | ${XDG_DATA_HOME:-~/.local/share}/opencode/opencode*.db |
OpenCode databases are opened read-only. Credential and account tables are never read.
Use the CLI directly
Every command supports --json output for agents and scripts:
node scripts/recall.mjs doctor --json
node scripts/recall.mjs search --json --cwd . --limit 5 -- "database migration"
node scripts/recall.mjs context --json <hit-id>
node scripts/recall.mjs session --json <session-key>
node scripts/recall.mjs transcript --json --limit 20 --offset 0 <session-key>
node scripts/recall.mjs attachments --json <message-key>
node scripts/recall.mjs attachment --json --output ./attachment.png <attachment-key>
node scripts/recall.mjs recent --json --cwd . --limit 10
node scripts/recall.mjs status --json
node scripts/recall.mjs sync --jsonRun node scripts/recall.mjs --help for all options.
Search and attachment details
- Search uses local SQLite FTS5 ranking with current-project-first behavior.
- If every search term does not appear together, Agent Recall retries with a broader match.
- Results are limited and grouped by conversation so one long chat does not crowd out everything else.
- Context windows and transcripts are bounded and paginated.
- Claude Code inline images, Codex input images, and OpenCode base64 file parts can be recovered on demand.
- Remote attachment URLs are never fetched.
- Individual attachments are limited to 16 MiB and are written only to a new local file you choose.
The local index follows your operating system's application-data convention. Set AGENT_RECALL_HOME to override it.
Install or remove the standalone skill
From a checkout:
node scripts/install.mjs # Claude Code, Codex, and OpenCode
node scripts/install.mjs --agents-only # Codex and OpenCode only
node scripts/install.mjs --dry-run
node scripts/install.mjs --uninstallThis installs agent-recall into:
~/.agents/skills/agent-recallfor Codex and OpenCode~/.claude/skills/agent-recallfor Claude Code
Claude Code can also load the checkout directly:
claude --plugin-dir /path/to/agent-recall
Discord · Issues · More plugins
npm test
npm run doctorTests use synthetic conversation history only. They never read your real chats.
Apache License 2.0 - © 2026 JCodesMore
Part of jcodesmore-plugins.