main

readwise-reader

Fetch, analyze, and triage Readwise Reader documents.

Usage

# 1. Fetch all Inbox + Later documents from Readwise Reader API
readwise-reader fetch

# 2. Analyze with LLM (default: Claude Opus 4-6 via Vertex AI)
readwise-reader analyze

# Or use a different model:
readwise-reader analyze -m sonnet    # Claude Sonnet 4 (faster, cheaper)
readwise-reader analyze -m gemini    # Gemini 3 Pro Preview (fastest)
readwise-reader analyze -m gemini25  # Gemini 2.5 Pro

# Resume interrupted analysis (checkpoints automatically):
readwise-reader analyze

# Start fresh:
readwise-reader analyze --reset

# 3. Generate interactive HTML triage report
readwise-reader report
readwise-reader report --no-open    # Don't auto-open browser

Profile

User profile is loaded from $XDG_DATA_HOME/readwise/profile.toml (default: ~/.local/share/readwise/profile.toml).

The profile controls:

  • User interests — what topics are relevant to you
  • Favorite authors/sites — auto-boosted to 4★+ regardless of topic
  • Summary stylebrief or detailed

See the example in this directory or create your own.

Data

All data stored in $XDG_DATA_HOME/readwise/:

  • reader-latest.json — symlink to latest fetch
  • reader-analyzed.json — enriched with LLM analysis
  • analysis-checkpoint.json — resume point for interrupted analysis
  • triage-report.html — generated report
  • profile.toml — user profile

Requirements

  • passage — for Readwise API token (readwise/key)
  • gcloud — for Vertex AI auth (Opus/Sonnet models)
  • GEMINI_API_KEY env var or passage — for Gemini models
  • requests Python package

Report Features

  • Documents grouped by action (Must Read, Finish, Archive, Delete, etc.)
  • Within each group, clustered by topic (Nix, Go, Emacs, AI, etc.)
  • Relevance scores (1-5★) with LLM-generated summaries and reasons
  • Click summaries to expand full analysis
  • Filter by title, relevance, or tag
  • Collapsible sections
  • Dark theme