buenomini

Yapkeeper

Finds your Claude Code, Codex and Pi sessions across projects and worktrees, and resumes them in the folder they ran in.

TUI and CLIgithubv0.1.1
status
v0.1.1, macOS and Linux
agents
Claude Code, Codex and Pi
built with
Rust, Ratatui, SQLite
install
Homebrew, install script or a release binary
license
MIT

Yapkeeper is a search palette for your coding agent sessions. It reads every Claude Code, Codex and Pi session in your history (including the ones you started without it), across projects, Git worktrees and plain folders, and resumes the one you pick with its own agent, in the directory it ran in.

You type words and filters into one query: @project or @project:worktree for a location, #codex for an agent, is:worktree or is:orphaned for a state, and ! to leave something out. A preview of the conversation sits next to the results, and Enter twice puts you back in the session. The same search works from the shell with yapkeeper search.

It never writes to your session histories. It reads them and keeps its own SQLite index, so the index can be rebuilt any time, and hidden sessions survive the rebuild because they live in a separate preferences file. When a session's folder is gone, the session stays in the list marked as orphaned, and resuming it somewhere else takes an explicit keypress.

The targets are a cached launch under 200 ms and results under 50 ms per keystroke at p95, measured on a generated corpus of about 1 GB. Indexing runs in the background while you search.

It's Rust on Ratatui and SQLite, and I built it with vago. Install it with brew install julianbonomini/tap/yapkeeper or grab a binary from the releases page.

Written along the way