Skip to content

psandis/feedclaw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Feedclaw

πŸ¦€ Feedclaw

npm

RSS/Atom feed reader and AI digest builder. Fetch feeds, store articles locally, generate AI-powered summaries. Works standalone or as an OpenClaw skill.

What It Does

  • keeps your feeds and articles in local SQLite
  • ships with curated default feeds (AI, dev, news, OpenClaw ecosystem)
  • fetches RSS and Atom feeds with conditional requests (etag / 304)
  • generates AI-powered digests via Anthropic or OpenAI
  • outputs as terminal, markdown, HTML, or JSON
  • imports and exports OPML for feed migration
  • --json flag on most commands for agents and scripts

Requirements

  • Node 22+
  • pnpm
  • ANTHROPIC_API_KEY or OPENAI_API_KEY for digest generation
  • Windows: Visual Studio Build Tools (C++ workload) for native SQLite compilation

Install

git clone https://github.com/psandis/feedclaw.git
cd feedclaw
pnpm install
pnpm build

Quick Start

After install and build:

pnpm cli init
pnpm cli fetch
pnpm cli digest

Set your API key before running digest. See Configuration.

Storage

Default root:

~/.feedclaw/

Important paths:

  • DB: ~/.feedclaw/feedclaw.db
  • Config: ~/.feedclaw/config.json

Override the root:

export FEEDCLAW_HOME=/path/to/custom/root

CLI

All commands are run with pnpm cli <command>.

Set up default feeds

pnpm cli init

βœ“ MIT Technology Review
βœ“ OpenAI Blog
βœ“ Google AI Blog
βœ“ Hugging Face Blog
βœ“ Simon Willison
βœ“ Lil'Log (Lilian Weng)
βœ“ GitHub Blog
βœ“ Cloudflare Blog
βœ“ Stripe Engineering
βœ“ Meta Engineering
βœ“ Peter Steinberger (steipete)
βœ“ OpenClaw Newsletter
βœ“ Hacker News
βœ“ Techmeme
βœ“ Ars Technica
βœ“ The Verge

16 feeds added. Run fetch to pull articles.

Notes:

  • --bundle ai|dev|openclaw|news|all picks a subset (default: all)
  • --from my-feeds.json loads feeds from a custom JSON file
  • default feeds live in feeds/default.json β€” edit the file or submit a PR

Add and remove feeds

pnpm cli add https://blog.rust-lang.org/feed.xml --category dev
pnpm cli remove 3
pnpm cli remove https://example.com/feed.xml

Notes:

  • --category <cat> sets the feed category (default: default)
  • remove accepts a feed ID or URL

List subscribed feeds

pnpm cli list

[ai]
  1  MIT Technology Review Β· fetched 2026-03-20 17:30:12
     https://www.technologyreview.com/feed/
  2  OpenAI News Β· fetched 2026-03-20 17:30:13
     https://openai.com/blog/rss.xml
  5  Simon Willison's Weblog Β· fetched 2026-03-20 17:30:12
     https://simonwillison.net/atom/everything/

[dev]
  7  The GitHub Blog Β· fetched 2026-03-20 17:30:12
     https://github.blog/feed/

[openclaw]
  11  Peter Steinberger Β· fetched 2026-03-20 17:30:12
     https://steipete.me/rss.xml

Notes:

  • titles are populated after first fetch
  • --category <cat> filters by category

Fetch new articles

pnpm cli fetch

βœ“ MIT Technology Review: 10 new
βœ“ OpenAI News: 891 new
βœ“ Simon Willison's Weblog: 30 new
βœ“ The GitHub Blog: 10 new
βœ“ The Cloudflare Blog: 20 new
βœ“ Hacker News: Front Page: 20 new
βœ“ Peter Steinberger: 107 new
βœ“ Openclaw Newsletter: 30 new

Notes:

  • --feed <id|url> fetches a single feed
  • uses etag and last-modified headers to skip unchanged feeds

Generate AI digest

pnpm cli digest --since 24h --category ai --format terminal

Notes:

  • --since <duration> sets the time window: 24h, 7d, 2w (default: 24h)
  • --category <cat> filters by category
  • --provider anthropic|openai picks the AI provider (default: anthropic)
  • --model <model> overrides the model
  • --format terminal|markdown|html|json sets the output format
  • --max-articles <n> limits articles included (default: 50)
  • only includes unread articles; marks them as read after generating

Import and export OPML

pnpm cli opml-import feeds.opml
pnpm cli opml-export > feeds.opml

Typical Workflow

  1. run init to load default feeds or init --from with your own list
  2. run fetch to pull articles
  3. run digest to get an AI summary
  4. add or remove feeds as needed
  5. run fetch and digest on a schedule

Configuration

Optional config file at ~/.feedclaw/config.json:

{
  "defaultProvider": "anthropic",
  "defaultModel": "claude-sonnet-4-20250514",
  "defaultFormat": "terminal",
  "digestSince": "24h"
}

Environment variables:

Variable Description
ANTHROPIC_API_KEY Anthropic API key for digest generation
OPENAI_API_KEY OpenAI API key for digest generation
FEEDCLAW_HOME Custom data directory (default: ~/.feedclaw/)
# macOS / Linux
export ANTHROPIC_API_KEY=sk-ant-...

# Windows (cmd)
set ANTHROPIC_API_KEY=sk-ant-...

# Windows (PowerShell)
$env:ANTHROPIC_API_KEY="sk-ant-..."

Agent Integration

Most commands support --json for structured output (except opml-export which outputs OPML directly):

pnpm cli --json list
pnpm cli --json fetch
pnpm cli --json digest --format json

OpenClaw Skill

Once installed globally (npm install -g feedclaw), add a SKILL.md to your workspace:

---
name: feedclaw
description: Fetch RSS feeds and generate AI news digests
version: 1.0.0
requires_binaries:
  - feedclaw
---

When the user asks about news, feeds, or digests, use the `feedclaw` CLI:

- To check feeds: `feedclaw --json fetch`
- To get a digest: `feedclaw --json digest --format markdown`
- To add a feed: `feedclaw --json add <url>`

Default Feeds

Default feeds live in feeds/default.json. Edit the file or submit a PR to add feeds.

Bundle Feeds
ai MIT Technology Review, OpenAI, Google AI, Hugging Face, Simon Willison, Lil'Log
dev GitHub Blog, Cloudflare, Stripe Engineering, Meta Engineering
openclaw Peter Steinberger (steipete), OpenClaw Newsletter
news Hacker News, Techmeme, Ars Technica, The Verge

Development

git clone https://github.com/psandis/feedclaw.git
cd feedclaw
pnpm install
pnpm build
pnpm test
pnpm lint
pnpm cli --help

Testing

pnpm test

Current bar:

  • 28 tests across feeds, fetcher, and digest modules
  • temp SQLite databases per test, cleaned up automatically

Related

  • πŸ¦€ Dustclaw β€” Find out what is eating your disk space
  • πŸ¦€ Driftclaw β€” Deployment drift detection across environments
  • πŸ¦€ OpenClaw β€” The open claw ecosystem

License

See MIT

About

RSS/Atom feed reader and AI digest builder for the OpenClaw ecosystem

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors