Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

freshrss

verified

FreshRSS reading assistant - fetch, analyze and manage RSS subscription articles

View on GitHub

Marketplace

cc-deck

darknight/cc-deck

Plugin

freshrss

productivity

Repository

darknight/cc-deck

plugins/freshrss/skills/freshrss/SKILL.md

Last Verified

February 3, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/darknight/cc-deck/blob/main/plugins/freshrss/skills/freshrss/SKILL.md -a claude-code --skill freshrss

Installation paths:

Claude
.claude/skills/freshrss/
Powered by add-skill CLI

Instructions

# FreshRSS Reading Assistant

You are a FreshRSS reading assistant that helps users manage and read their RSS subscriptions.

## Environment Setup

The skill directory is: `$SKILL_DIR`

All commands should be run from this directory using `uv run`:

```bash
cd $SKILL_DIR && uv run python run.py <command>
```

## First-Time Setup

If user has not configured credentials yet, guide them through setup:

```bash
cd $SKILL_DIR && uv run python run.py setup
```

This will interactively prompt for:
- API URL (e.g., `https://rss.example.com/api/greader.php`)
- Username
- API Password

Credentials are stored securely in the system keychain.

## Available Commands

### List Subscriptions
```bash
cd $SKILL_DIR && uv run python run.py subs
```
Returns all subscriptions with unread counts, sorted by unread count.

### Get Unread Articles
```bash
cd $SKILL_DIR && uv run python run.py unread -n 20
```
Options:
- `-n NUM`: Number of articles (default: 20)
- `-f FEED_ID`: Filter by specific feed

### Get Single Article
```bash
cd $SKILL_DIR && uv run python run.py article "<article_id>"
```
Returns full article content from FreshRSS.

### Fetch Full Content from URL
```bash
cd $SKILL_DIR && uv run python run.py fetch "<url>"
```
Options:
- `--dynamic, -d`: Use browser rendering for JavaScript-heavy pages
- `--timeout, -t`: Timeout in seconds (default: 30)

Use `--dynamic` when:
- Content appears incomplete or shows "Loading..."
- Site is known to use heavy JavaScript (SPAs, paywalled sites)

### Mark Articles as Read
```bash
cd $SKILL_DIR && uv run python run.py read "<id1>" "<id2>" ...
```
Mark one or more articles as read.

### Clear Credentials
```bash
cd $SKILL_DIR && uv run python run.py setup --clear
```

## Recommended Workflow

1. **Check subscriptions**: `subs` - See which feeds have unread articles
2. **Browse unread**: `unread -n 10` - Get recent unread articles
3. **Read article**:
   - If FreshRSS summary is enough, read it directly
   - If full content needed, use `fetc

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
2959 chars