A light, local RAG that tracks Claude's bounty-work learnings and replays them on demand.
Ingests:
- Claude Code session transcripts (
~/.claude/projects/*/*.jsonl) - Your hand-written bounty notes (
~/bounty/**/*.md) - Bug bounty program scopes from bounty-targets-data (
~/bounty-targets-data/data/*_data.json)
Storage: SQLite + sqlite-vec, all local. Embeddings: fastembed (BGE-small, CPU). No data leaves the machine for indexing.
cd ~/prowlr-memory
uv sync# one-shot ingest
prowlr ingest sessions
prowlr ingest notes
prowlr ingest scopes
prowlr ingest all
# ask
prowlr ask "what did we learn about clearstreet's API rate limits?"
# tutor — humanized explanation grounded in your RAG
prowlr tutor "IDOR on GraphQL APIs"
prowlr tutor "clearstreet rate limits" --backend claude
prowlr tutor "what did we try on stubhub" --k 15
# stats
prowlr stats
tutoruses Ollama by default (free). If you have Claude Max, runclaude loginand kiln picks up your OAuth token — usage counts against your subscription, zero per-call cost.
Claude can call prowlr_recall mid-session once wired into ~/.claude.json:
{
"mcpServers": {
"prowlr-memory": {
"command": "/home/anon/prowlr-memory/.venv/bin/prowlr-mcp"
}
}
}~/prowlr-memory/ # this repo
~/bounty/ # per-target notes (watched)
<program>/<target>/notes.md
~/bounty-targets-data/ # public scopes dataset (ingested)
~/.prowlr/prowlr.db # SQLite index