rss-agent-viewer — Claude Code skill: what it does, how to install
This skill gives an agent a CLI reader for RSS and Atom feeds with discovery, search, caching and OPML import and export, run straight from the terminal.
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a claude-codeWhat rss-agent-viewer does
The skill wraps the rss-viewer CLI: init sets up config and a database, discover finds feed URLs on a given site, add subscribes to a feed, and read pulls articles from every subscription in parallel or from cache with --cached. A separate search command runs full-text lookups against the local database, while discover-search runs a web query, surfaces matching feeds, and can add and read them in one pass.
cleanup removes broken or duplicate feeds, with --dry-run, --broken and --duplicates flags to narrow what gets deleted. Subscriptions move in and out through import and export using OPML files. Web search defaults to the agent's own search, but switching to Exa requires setting EXA_API_KEY or the exaApiKey field in ~/.config/rss-viewer/config.json.
Slow or numerous feeds are handled with --timeout and --overall-timeout flags, or their config equivalents RSS_FEED_TIMEOUT and overallTimeout.
What it helps with
- locate RSS and Atom feed URLs on a given website
- subscribe to a feed and read its articles from the terminal
- run full-text search across every subscribed feed at once
- find new feeds on a topic through web search and add them automatically
- move subscriptions in or out through OPML files
Example prompts for the agent
- Discover the RSS feeds on vercel.com and subscribe to them
- Pull the latest article from every feed I follow, one per feed
- Run discover-search for Rust programming feeds and auto-add the results
How to install rss-agent-viewer
1Skills CLI (Vercel)
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a claude-code2Manually: put the files in place
~/.claude/skills/rss-agent-viewer/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/rss-agent-viewer/
1Skills CLI (Vercel)
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a codex2Manually: put the files in place
.agents/skills/rss-agent-viewer/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a cursor2Manually: put the files in place
.cursor/skills/rss-agent-viewer/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install brooksy4503/rss-agent-viewer rss-agent-viewer2Manually: put the files in place
.github/skills/rss-agent-viewer/SKILL.md1Skills CLI (Vercel)
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a gemini-cli2Platform CLI
gemini skills install https://github.com/brooksy4503/rss-agent-viewer --path skills/rss-agent-viewerManually: put the files in place
.devin/skills/rss-agent-viewer/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about rss-agent-viewer
How do I install rss-agent-viewer in Claude Code?
Run npx skills add brooksy4503/rss-agent-viewer --skill rss-agent-viewer -a claude-code; the skill lands at ~/.claude/skills/rss-agent-viewer/SKILL.md.
What does rss-agent-viewer do?
It's a CLI feed reader built for agents: it finds RSS and Atom feeds on a site, subscribes to them, reads and full-text searches articles, and moves subscriptions in or out via OPML.
Does rss-agent-viewer need an API key to work?
No, web search for feed discovery runs through the agent's built-in search by default. An EXA_API_KEY is only needed if you switch the search provider to Exa.
Source text
SKILL.md · MIT
---
name: rss-agent-viewer
description: 'AI agent-friendly CLI RSS/Atom feed viewer with discovery, search, and OPML import/export. Use when an agent needs to manage RSS feeds, read articles, or run feed discovery from the terminal. Triggered by: "read RSS feeds", "view RSS", "RSS reader CLI", "rss-viewer", "discover RSS feeds", "import OPML", "search feeds", or "discover-search feeds".'
license: MIT
---
# RSS Agent Viewer
CLI RSS/Atom feed viewer with built-in discovery, caching, and search.
## Quick start
```bash
npx -y rss-agent-viewer init
npx -y rss-agent-viewer discover https://vercel.com
npx -y rss-agent-viewer add https://vercel.com/atom
npx -y rss-agent-viewer read
```
## Core workflow
```bash
# Initialize config + database
rss-viewer init
# Discover feeds for a site
rss-viewer discover https://example.com
# Subscribe to a feed (optional: --timeout for slow feeds)
rss-viewer add https://example.com/feed.xml
rss-viewer add https://slow-site.com/feed.xml --timeout 30000
# List feeds and read articles
rss-viewer feeds
rss-viewer read
```
## Common commands
```bash
rss-viewer init
rss-viewer add <url>
rss-viewer discover <url>
rss-viewer feeds
rss-viewer remove <url>
rss-viewer read [url]
rss-viewer search <query>
rss-viewer discover-search <query>
rss-viewer import <file>
rss-viewer export
rss-viewer cache <action>
rss-viewer cleanup
```
## Usage patterns
### Discover and subscribe
```bash
rss-viewer discover https://example.com
rss-viewer add https://example.com/rss.xml
```
### Read a single feed
```bash
rss-viewer read https://example.com/rss.xml
```
### Read all feeds (fetches fresh by default)
```bash
# Fetches fresh articles from all feeds in parallel
rss-viewer read
# Use cached data only (skip network requests)
rss-viewer read --cached
# Limit results
rss-viewer read --limit 10
# One latest article per feed (feed-diverse results)
rss-viewer read --latest-per-feed --limit 10
# Timeouts (for slow feeds or many feeds)
rss-viewer read --timeout 15000 --overall-timeout 180000
```
### Clean up invalid feeds
```bash
# Remove broken and duplicate feeds
rss-viewer cleanup
# Preview what would be removed
rss-viewer cleanup --dry-run
# Only remove broken feeds
rss-viewer cleanup --broken
# Only remove duplicates
rss-viewer cleanup --duplicates
```
### Search across all feeds
```bash
# Local database search (enhanced with full-text search)
rss-viewer search "open source"
# Web search + discovery + add + search in one command
rss-viewer discover-search "Rust programming" --auto-add --read
# Using Exa API (BYOK)
rss-viewer discover-search "AI safety" \
--provider exa \
--max-results 5 \
--auto-add \
--read
```
### Import OPML
```bash
rss-viewer import feeds.opml
```
### Export feeds
```bash
rss-viewer export
```
## Search Options
### Local Database Search
```bash
rss-viewer search "React 19" --limit 10
rss-viewer search "TypeScript" --author "Dan" --since "2024-01-01"
```
### Web Search with Discovery
```bash
# Use agent's built-in search (default)
rss-viewer discover-search "micro-frontends" --auto-add --read
# Use Exa API (requires EXA_API_KEY)
export EXA_API_KEY="your-api-key"
rss-viewer discover-search "WebGPU" \
--provider exa \
--max-results 5 \
--category Development \
--auto-add \
--read \
--limit 20
```
### Configuration
**Environment Variables:**
```bash
EXA_API_KEY="your-api-key" # Exa API key (optional)
RSS_FEED_TIMEOUT=10000 # Per-feed fetch timeout (ms)
RSS_VIEWER_SEARCH_PROVIDER="agent|exa" # Search provider (default: agent)
RSS_VIEWER_MAX_WEB_RESULTS=10 # Max web search results
RSS_VIEWER_SEARCH_LIMIT=20 # Max article results
RSS_VIEWER_BOOST_RECENT=false # Boost recent articles in search
EXA_API_URL="https://api.exa.ai/search" # Custom Exa endpoint (optional)
```
**Config File (~/.config/rss-viewer/config.json):**
```json
{
"webSearchProvider": "exa",
"exaApiKey": "your-api-key",
"feedTimeout": 10000,
"overallTimeout": 120000,
"maxWebResults": 10,
"searchResultsLimit": 20,
"boostRecentSearch": false
}
```
## When to use this tool
- Manage and read RSS/Atom feeds from the terminal
- Discover feed URLs from a website
- Search across multiple subscriptions with full-text search
- Discover new feeds from web search queries
- Automate feed discovery and subscription workflow
- Import or export subscriptions via OPML
- Clean up broken or duplicate feeds from database
## More information
- GitHub: https://github.com/brooksy4503/rss-agent-viewer
© brooksy4503 · MIT · brooksy4503/rss-agent-viewer