rogrep

Search and analyze every coding-agent session.

rogrep supports Claude Code, Codex, Cursor, Grok, Hermes and OpenCode — on macOS and Linux.

$git clone https://github.com/agentpmhq/rogrep && cd rogrep && cargo install --path crates/rogrep
LicenseApache-2.0
LanguageRust
Versionv0.1.0
PlatformsmacOS · Linux

01Install rogrep

from sourceRust 1.85+ · builds to ~/.local/bin
$ git clone https://github.com/agentpmhq/rogrep
$ cd rogrep
$ cargo install --path crates/rogrep

Paste that in a terminal. Nothing runs as root, no daemon is installed, and no account is created. Then index what is already on disk:

$ rogrep sync# build the index
$ rogrep doctor# check provider coverage
$ rogrep tui# browse interactively

rogrep is open source under Apache-2.0. Read about other installation options.

02What does rogrep do?

Every coding agent writes its session history to disk in its own format. rogrep reads all of them, normalizes them into conversations, exchanges and turns, and makes the whole corpus searchable — so you can ask the history before you rebuild the work.

~/srclocal
$ rogrep x "fix the parser"
3 conversations · 11 exchanges · 21ms
claude-code · agentpm · 2d ago
"fix the parser for Codex rollouts"
codex · rogrep · 6d ago
incremental parser invariants

A match returns the whole exchange — the request and everything the agent did in response — not the single line that happened to contain your words. Known key:value facets narrow the evidence; unknown colon tokens stay searchable text.

What did the agent do about this, last time?

$ rogrep x "fix the parser"

One prompt and everything that followed it, whichever model answered — not just the message that matched.

Which commands failed, and in what context?

$ rogrep tool_status:failed tool_cmd:cargo

Known key:value facets filter evidence; unknown colon tokens stay searchable text.

How did this pull request actually happen?

$ rogrep trajectory --pr 48

Ranked by captured Git and GitHub operations, not by keyword luck.

03Where rogrep keeps things

rogrep won’t write outside its own data directory. It reads the session stores each provider already maintains, and stores only derived search and statistics data in ~/.local/share/rogrep — overridable with ROGREP_DATA_DIR. Source rollouts stay the durable truth, so anything derived can be deleted and rebuilt.

04Trajectories and statistics

Because rogrep captures Git and GitHub operations as part of the record, it can rank which conversation actually produced a branch, commit or pull request — prioritizing the conversation that created it, ranking matching Git operations above text-only mentions, then printing the exact rogrep show command to inspect the turn.

$ rogrep trajectory --pr 48
1. codex · rogrep · created PR #48   score 0.94
2. claude-code · rogrep · 3 commits  score 0.61
   rogrep show 4f2a1c --turn 12

Statistics come from SQLite over the same normalized record, so they are repeatable and computed without asking a model to interpret anything.

$ rogrep stats top --by tokens --since 7d// illustrative shape — replace with a real paste

05Speed, measured

Every command auto-syncs before it answers. That is only viable because a no-op sweep costs 16ms — which is the reason these numbers matter more than the cold-index figure.

MetricrogrepcassΔ
Cold full index20.9 s416.4 s19.9×
Warm no-op refresh16 ms3,728 ms~230×
Data dir on disk273 MB2.2 GB
Search latency, median21–36 ms33–101 ms1.2–4.2×

cass 0.6.22 built from source, default lexical-only config. Both tools indexed the same real ~730MB / ~275-session corpus into isolated throwaway data dirs. Single-machine July 2026 snapshot; measures indexing cost, refresh, footprint and latency — not relevance quality. Discovery semantics differ, and ~10–15ms of each search is process startup. Full methodology ↗

06Resources

Documentation

Query syntax, provider coverage, configuration and the full command reference.

docs ↗
Contributing

Add a provider, sharpen retrieval, improve the TUI, or test the incremental parsing invariants.

CONTRIBUTING.md ↗
Issues

Ask a question, report a problem or see what is being worked on.

issues ↗
Architecture

How normalization, indexing and the workspace layout actually work.

repository ↗
IndexesClaude CodeCodexCursorGrokHermesOpenCode