Awesome-openclaw-skills miniflux
Browse, read, and manage Miniflux feed articles. Use when Claude needs to work with RSS/atom feeds via Miniflux - listing unread/new articles, reading article content, marking articles as read, and managing feeds/categories. Provides CLI access with flexible output formats (headlines, summaries, full content).
git clone https://github.com/sundial-org/awesome-openclaw-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/miniflux" ~/.claude/skills/sundial-org-awesome-openclaw-skills-miniflux && rm -rf "$T"
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/miniflux" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-miniflux && rm -rf "$T"
skills/miniflux/SKILL.mdMiniflux Skill
Browse, read, and manage Miniflux RSS/atom feed articles through a CLI.
Quick Start
# List unread articles (brief format) uv run scripts/miniflux-cli.py list --status=unread --brief # Get article details uv run scripts/miniflux-cli.py get 123 # Mark articles as read uv run scripts/miniflux-cli.py mark-read 123 456 # Show article statistics (word count, reading time) uv run scripts/miniflux-cli.py stats --entry-id=123
Configuration
Configuration precedence (highest to lowest):
- CLI flags:
,--url--api-key - Environment variables:
,MINIFLUX_URLMINIFLUX_API_KEY - Config file:
(auto-created on first run)~/.local/share/miniflux/config.json
Setup
# Option 1: Environment variables (recommended for agents) export MINIFLUX_URL="https://miniflux.example.org" export MINIFLUX_API_KEY="your-api-key" # Option 2: CLI flags (one-time, saves to config) uv run scripts/miniflux-cli.py --url="https://miniflux.example.org" --api-key="xxx" list
Subcommands
list - List Articles
List articles with optional filtering.
# Unread articles (brief) uv run scripts/miniflux-cli.py list --status=unread --brief # From specific feed with summary uv run scripts/miniflux-cli.py list --feed=42 --summary # Search with limit uv run scripts/miniflux-cli.py list --search="python" --limit=10 # Starred articles uv run scripts/miniflux-cli.py list --starred
Flags:
- Filter by status--status={read,unread,removed}
- Filter by feed ID--feed=ID
- Filter by category ID--category=ID
- Show only starred--starred
- Search articles--search=QUERY
- Max number of entries--limit=N
- Skip first N chars in content--offset=N
- Max characters per article--content-limit=N
- Titles only-b, --brief
- Title + excerpt-s, --summary
- Full content (default)-f, --full
- JSON output--json
- Single-line per entry--plain
get - Get Article by ID
Fetch a single article with content control.
# Full article uv run scripts/miniflux-cli.py get 123 # First 2000 characters uv run scripts/miniflux-cli.py get 123 --limit=2000 # Read from character 1000 to 2000 (pagination) uv run scripts/miniflux-cli.py get 123 --offset=1000 --limit=1000
When content is truncated, shows:
[...truncated, total: N chars]
mark-read - Mark as Read
Mark one or more articles as read.
# Single article uv run scripts/miniflux-cli.py mark-read 123 # Multiple articles uv run scripts/miniflux-cli.py mark-read 123 456 789
mark-unread - Mark as Unread
Mark one or more articles as unread.
uv run scripts/miniflux-cli.py mark-unread 123
feeds - List Feeds
List all configured feeds.
# Human-readable uv run scripts/miniflux-cli.py feeds # JSON format uv run scripts/miniflux-cli.py feeds --json
categories - List Categories
List all categories.
uv run scripts/miniflux-cli.py categories
stats - Statistics
Show unread counts or article statistics.
# Article statistics (word count, character count, reading time) uv run scripts/miniflux-cli.py stats --entry-id=123 # Global unread counts per feed uv run scripts/miniflux-cli.py stats
refresh - Refresh Feeds
Trigger feed refresh.
# Refresh all feeds uv run scripts/miniflux-cli.py refresh --all # Refresh specific feed uv run scripts/miniflux-cli.py refresh --feed=42
search - Search Articles
Convenient alias for
list --search.
uv run scripts/miniflux-cli.py search "rust" uv run scripts/miniflux-cli.py search "ai" --status=unread --brief
Output Formats
/--brief
- Quick overview (titles + feed + date)-b
/--summary
- Title + content preview (200 chars)-s
/--full
- Complete article content (default)-f
- Raw JSON output for machine processing--json
- Single-line per entry (tab-separated)--plain
Long Article Handling
For articles with large content (e.g., >5k words):
-
Check statistics first:
uv run scripts/miniflux-cli.py stats --entry-id=123Shows word count, character count, reading time.
-
Use pagination to read in chunks:
# First 5000 chars uv run scripts/miniflux-cli.py get 123 --limit=5000 # Next 5000 chars (chars 5000-10000) uv run scripts/miniflux-cli.py get 123 --offset=5000 --limit=5000 -
For summarization: If article is >5000 words, use a subagent to read and summarize:
# Get stats to determine word count uv run scripts/miniflux-cli.py stats --entry-id=123 # If >5000 words, delegate to subagent for summarization
Error Handling
The CLI provides helpful error messages:
- Invalid credentials → Check
MINIFLUX_API_KEY - Article not found → Suggests using
to browselist - Missing config → Shows config file location
- No results → Clear message
Standard Flags
- Show version-v, --version
- Suppress non-error output-q, --quiet
- Enable debug output-d, --debug
- Disable colored output--no-color
- Miniflux server URL--url=URL
- Miniflux API key--api-key=KEY
Examples
Daily Workflow
# Check what's unread uv run scripts/miniflux-cli.py list --status=unread --brief # Read interesting articles uv run scripts/miniflux-cli.py get 456 # Mark as read uv run scripts/miniflux-cli.py mark-read 456
Research Mode
# Search for specific topics uv run scripts/miniflux-cli.py search "machine learning" --summary # Get full article content uv run scripts/miniflux-cli.py get 789
Batch Processing
# Get all unread as JSON for processing uv run scripts/miniflux-cli.py list --status=unread --json # Mark multiple as read uv run scripts/miniflux-cli.py mark-read 123 456 789
For complete help on any subcommand:
uv run scripts/miniflux-cli.py <subcommand> --help