BM25 full-text search over Pi sessions.
Search coding-agent sessions with local BM25 full-text search (SQLite FTS5).
Sesame indexes Pi JSONL session files locally and lets you search them with ranked session, project, date, tool, and path filters.
~/.pi/agent/sessions by defaultsesame search "*"--tools, --tool, --path)brew tap aliou/toolbox
brew install sesame
Requires Node.js 25 or newer and pnpm.
pnpm install
pnpm run build
Index sessions:
pnpm run dev index
Search:
pnpm run dev search "nix infra simplify"
pnpm run dev search "package.json exports" --tools --tool write
pnpm run dev search "*" --limit 20
Check index:
pnpm run dev status
Watch for changes:
pnpm run dev watch
pnpm run dev watch --interval 30
Sesame reads ~/.config/sesame/config.jsonc by default and creates it if missing:
{
"piSessionPaths": ["~/.pi/agent/sessions"]
}
The SQLite index is stored at ~/.local/share/sesame/index.sqlite by default on macOS/Linux. Sesame also respects SESAME_*_DIR and XDG directory environment variables.
See docs/cli-usage.md.
docs/indexing.mddocs/library-usage.mddocs/README.mdMonorepo package:
skills/sesame/SKILL.md: pi skill for the Sesame CLI.pnpm run lint
pnpm test
pnpm run typecheck