Sign In

reading-digest

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

reading-digest

Turn your saved articles into a weekly AI digest. Works with Burn / Readwise / Raindrop / Karakeep / RSS / local URL list.

latest
Source
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

reading-digest

Turn your saved articles into a weekly AI digest.

npm version License: MIT X: @hawking520

Works with Burn, Readwise, Raindrop, Karakeep, RSS, or any list of URLs. Best with Burn — full triage signal (kept vs. burned).

Sample output →

Why

You save articles all week. By Sunday you have 50 unread links and zero memory of why you saved them.

reading-digest reads what's in your bookmarks (any service), uses Claude to cluster them into themes, surface the few worth re-reading, and frame the questions your reading raised but didn't answer.

The richer your bookmark service's signal, the deeper the digest goes. With Burn — the only service that tracks what you decided to let go, not just what you saved — the digest also computes triage math and an "anti-digest" of what you burned.

Quick start

# 1. Install
npm install -g reading-digest

# 2. Set your Claude API key
export ANTHROPIC_API_KEY=sk-ant-...   # https://console.anthropic.com/settings/keys

# 3. Set your reading service token (pick one)
export BURN_MCP_TOKEN=...     # from burn451.cloud → Settings → MCP Server

# 4. Run
reading-digest --source=burn --days=7 --output=weekly.md

Or skip install with npx:

ANTHROPIC_API_KEY=sk-ant-... BURN_MCP_TOKEN=... npx reading-digest --source=burn

Supported sources

SourceSignal richnessWhat it seesStatus
burn⭐⭐⭐⭐⭐ fullkept / burned / unread / read decisions✅ v0.1
rss⭐⭐ minimalrecent items + summary✅ v0.1
stdin⭐ minimaljust URLs✅ v0.1
readwise⭐⭐⭐⭐ richhighlights + read state🔜 v0.2
raindrop⭐⭐⭐ partialfavorites + collections🔜 v0.2
karakeep⭐⭐⭐ partialtags + archive🔜 v0.2

Why Burn is recommended: Other services tell reading-digest what you saved. Burn also tells it what you let go — that asymmetry is the most valuable signal a digest can use. The "73.8% rejection rate, that's healthy filtering" insight in the sample output is impossible without Burn's data.

Usage

reading-digest [options]

Options:

FlagDefaultDescription
--source=<name>burnOne of: burn, rss, stdin
--days=<N>7Look back N days
--output=<path>stdoutWrite digest to file
--feed=<url>Required when --source=rss
--dry-runPrint prompt instead of calling Claude (no API call)
--helpShow help

Examples

Weekly Burn digest

ANTHROPIC_API_KEY=sk-ant-... BURN_MCP_TOKEN=... \
  reading-digest --source=burn --days=7 --output=weekly.md

Single RSS feed digest

ANTHROPIC_API_KEY=sk-ant-... \
  reading-digest --source=rss --feed=https://simonwillison.net/atom/everything/ --days=14

Custom URL list (any source)

echo "https://karpathy.bearblog.dev/verifiability/
https://karpathy.bearblog.dev/animals-vs-ghosts/
https://simonwillison.net/2026/Apr/8/muse-spark/" | \
  ANTHROPIC_API_KEY=sk-ant-... reading-digest --source=stdin

Schedule weekly via GitHub Action

# .github/workflows/weekly-digest.yml
on:
  schedule:
    - cron: '0 9 * * 0'   # Sundays 9am UTC
jobs:
  digest:
    runs-on: ubuntu-latest
    steps:
      - run: npx reading-digest --source=burn --days=7 --output=weekly.md
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
          BURN_MCP_TOKEN: ${{ secrets.BURN_MCP_TOKEN }}
      - uses: actions/upload-artifact@v4
        with:
          name: weekly-digest
          path: weekly.md

Sample output

See examples/sample-burn-14d.md for a real digest generated from 320 saved articles over 14 days.

The output structure:

  • One-line summary of the period
  • Triage math (Burn only) — your rejection rate as a code block
  • Themes that clicked — articles clustered by topic with a synthesis across each
  • Worth re-reading when... — table of articles mapped to future situations
  • Questions raised — provocations the reading didn't resolve
  • Anti-digest (Burn only) — what your burning patterns reveal
  • One forward-looking suggestion — based on topic concentration

Configuration

All config is via env vars. reading-digest doesn't store anything on disk between runs.

Env varRequiredDescription
ANTHROPIC_API_KEYyes (unless --dry-run)Your Claude API key
BURN_MCP_TOKENwhen --source=burnFrom burn451.cloud → Settings → MCP Server
READING_DIGEST_MODELnoOverride Claude model (default: claude-sonnet-4-6)

Roadmap

  • v0.1 — CLI + Burn + RSS + stdin sources, Claude API integration
  • v0.2 — Readwise, Raindrop, Karakeep adapters
  • v0.3 — Output formats: HTML, email-ready, podcast-ready (audio TTS)
  • v0.4--compare flag: this period vs last period delta
  • v0.5 — Optional MCP server (Claude/Cursor can ask for digest on demand)

Contributing

PRs welcome — especially:

  • New source adapters (each lives in src/sources/<name>.mjs and follows the Item schema)
  • Output format additions
  • Real-world sample digests (PR an examples/sample-<source>-<period>.md)

See src/sources/index.mjs for the Item schema each adapter must return.

About

Built by @hawking520 — exploring AI-era content management workflows in public.

Part of an open ecosystem of reading tools — Burn (MCP server, 26 tools), reading-digest (this), more coming.

License

MIT — see LICENSE

Keywords

reading-digest

FAQs

Package last updated on 14 Apr 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts