Skip to content
CLI commands

recall command families

Grouped by what each one does to your data and your tokens.

  • Readno writes, no spend
  • Writetouches your db
  • Tokensspends claude budget
  • Daemonbackground process

Read

No writes, no spend · 8 commands
recall list / show

Browse your indexed history. Pretty transcript pager.

recall search

Full-text with #tag tokens. BM25 plus RRF fusion on Pro.

recall context

Condensed markdown of any session. Pipe into a new claude.

recall locate

Find a past session by topic, id or an old alias. Claude and Codex. Pro.

recall neighborhood

Parents, children, citations, similar in one bundle.

recall stats

Tokens and dollars by session, project, or window.

recall infer bug-patterns

Cluster signatures into recurring bug groups.

recall audit-secrets

Scan DB for leaked secrets. Read-only by default.

Write

Touches your DB · 6 commands
recall bucket

Your own .md and .txt files, ingested once and searchable.

recall threads

List, show, link, sync. Auto-detect parent-child links.

recall semantic

On-device 768-d embeddings. Install, status, reindex.

recall paste

Archive clipboard. Secret-scan blocks unsafe content.

recall license / activate

Pro tier activation. One-time HTTPS call.

recall install-extension

Sideload the VS Code, Cursor, or Windsurf VSIX.

Tokens

Spends Claude budget · 1 command
recall infer outputs

Per-session sub-agent extracts bug snippets.

Daemon

Background process · 3 commands
recall start / stop / open

Daemon lifecycle. Loopback HTTP plus watcher.

recall doctor / optimize

Health check, WAL truncate, FTS5 segment merge.

recall mcp

Stdio MCP server for Claude Desktop or Claude Code.

CLI commands

Hero above color-codes commands by safety. Reference:

#Index & daemon

bash
recall index                              # scan + ingest changed sessions
recall index --force                      # reindex from scratch
recall start / stop / open                # daemon lifecycle
recall status                             # db path, size, counts
recall update                             # update the CLI itself (see Install & updating)

#Browse

bash
recall projects                           # project list with counts
recall list -p Tools -n 100               # filter by project, limit
recall show abc12345                      # pretty transcript (paged)
recall show abc12345 --raw                # raw JSONL
bash
recall search "zod schema"                # full-text
recall search "auth flow" -p MyProject    # scope to project
recall search bug -n 50                   # up to 50 hits
recall locate "auth flow" --json          # historical context + messaging reachability (Pro)
recall locate "old name" -p MyProject     # current and previous aliases, both agents

The Find sessions and terminals help section covers the same lookup through the CLI, MCP, VS Code and the web app, including messaging status and handoffs.

#Context (the moat)

bash
recall context abc12345 | pbcopy          # condensed → clipboard
recall context abc12345 | claude          # pipe into a fresh Claude
recall context abc12345 --since 2h        # last 2 hours only
recall context abc12345 --prelude "continue this" | claude
recall neighborhood abc12345              # parents/children/citations bundle
recall neighborhood abc12345 -b 8000      # raise token budget (default 4000)

#Threads

bash
recall threads sync                       # capture running terminals
recall threads scan -p MyProject --apply  # auto-detect parent-child
recall threads link <sid> --thread <tid>  # manual link
recall threads link <sid> --thread <tid> --parent <pid>  # link as child
recall threads show <id>                  # ASCII tree
recall threads new "Auth refactor"        # create a thread
recall threads merge <source> --into <dest>
recall threads split <id> --sessions s1,s2 --name "New"

recall threads <sub> and recall thread <sub> both work.

#Stats & health

bash
recall stats abc12345                     # per-session
recall stats --days 7                     # 7-day rollup
recall fleet                              # live context-window usage, every open terminal
recall statusline                         # Claude usage caps in the Claude Code status line
recall doctor                             # DB + pipeline + tab-name invariant audit
recall optimize                           # WAL truncate + FTS5 merge

#Semantic, buckets, paste, audit

bash
recall semantic install                   # bge model (~110MB)
recall semantic status                    # backfill progress
recall vectorize                          # embed everything not yet vectorized; resumes from the last mark, low CPU priority, --pace throttle
recall similar <id> -n 5                  # top 5 related (Pro)
recall bucket create <name>               # a searchable bucket of your own local docs
cp ~/notes/*.md ~/.recall/buckets/<name>/ # drop docs in the folder create printed
recall bucket ingest <name>               # explicit and manual; nothing embeds in background
recall bucket search <name> --query "..." # search it from any repo (--query is required)
recall bucket list                        # every bucket, with doc and chunk counts
recall paste --label "fix"                # archive clipboard, secret-scan first
recall audit-secrets                      # scan db for leaked keys

#Maintenance & retention

bash
recall archive list                       # what retention would act on
recall archive run --before 2026-01-01 --dry-run
recall archive restore <session-id>       # archiving is reversible; nothing is deleted
recall purge-phantoms                     # drop rows from historical background claude -p spawns
recall db drop-table <name>               # only tables recall doctor flagged as reclaimable
recall sweep                              # list stale DB snapshot/backup files; --apply deletes (never the live DB)
recall mcp-prune                          # kill stuck MCP children holding SQLite open

Only three commands need the daemon stopped. Run recall stop first, and recall start when you are done:

CommandWhy
recall db drop-tablerewrites the file; a concurrent writer risks corruption
recall purge-phantomsneeds an exclusive write lock. A --dry-run is fine with the daemon up
recall optimize --vacuumfull rewrite. Plain recall optimize is safe while running

Stop the daemon yourself rather than relying on the command to stop you. Only db drop-table reliably refuses to start while the daemon is up; on the other two the thing that actually protects your database is SQLite's own write lock, which shows up as a slow command or a database is locked error rather than a clean refusal.

archive list, archive run, archive restore, sweep and mcp-prune all run fine with the daemon up. mcp-prune in particular exists so you can free a pinned database without restarting the daemon at all.

recall archive auto on is the opposite case: it needs the daemon running, because the daemon is what performs the pass on its next tick.

None of these touch the source JSONLs in ~/.claude/projects/.

#Bug patterns

bash
recall infer outputs --project <name>     # extract bug snippets (LLM, costs tokens)
recall infer bug-patterns --semantic      # local clustering with embedding fuzz

#License & extension

bash
recall activate <key>                     # one-time HTTPS, then offline forever
recall license status                     # tier check
recall trial                              # start a 7-day Pro trial, or redeem a promo code
recall upgrade                            # open the pricing page (NOT a CLI update)
recall install-extension                  # sideload VS Code/Cursor/Windsurf VSIX
recall telemetry status                   # the opt-in install ping; OFF unless you turned it on

#MCP server

bash
recall mcp                                # stdio MCP server
recall mcp --allow-writes                 # enable write tools (off by default)

#Git correlation

bash
recall correlate                          # link sessions to commits in their cwd
recall blame <sha>                        # reverse lookup: commit to session

Last updated