From sundial-org-awesome-openclaw-skills-4
CLI for browsing, reading, and managing Miniflux RSS/Atom feed articles: lists unread/new items, fetches content with limits/pagination, marks read, filters by status/feed/search, flexible output formats.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin sundial-org-awesome-openclaw-skills-4This skill uses the workspace's default tool permissions.
Browse, read, and manage Miniflux RSS/atom feed articles through a CLI.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Browse, read, and manage Miniflux RSS/atom feed articles through a CLI.
# 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 precedence (highest to lowest):
--url, --api-keyMINIFLUX_URL, MINIFLUX_API_KEY~/.local/share/miniflux/config.json (auto-created on first run)# 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
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:
--status={read,unread,removed} - Filter by status--feed=ID - Filter by feed ID--category=ID - Filter by category ID--starred - Show only starred--search=QUERY - Search articles--limit=N - Max number of entries--offset=N - Skip first N chars in content--content-limit=N - Max characters per article-b, --brief - Titles only-s, --summary - Title + excerpt-f, --full - Full content (default)--json - JSON output--plain - Single-line per entryFetch 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 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 one or more articles as unread.
uv run scripts/miniflux-cli.py mark-unread 123
List all configured feeds.
# Human-readable
uv run scripts/miniflux-cli.py feeds
# JSON format
uv run scripts/miniflux-cli.py feeds --json
List all categories.
uv run scripts/miniflux-cli.py categories
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
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
Convenient alias for list --search.
uv run scripts/miniflux-cli.py search "rust"
uv run scripts/miniflux-cli.py search "ai" --status=unread --brief
--brief / -b - Quick overview (titles + feed + date)--summary / -s - Title + content preview (200 chars)--full / -f - Complete article content (default)--json - Raw JSON output for machine processing--plain - Single-line per entry (tab-separated)For articles with large content (e.g., >5k words):
Check statistics first:
uv run scripts/miniflux-cli.py stats --entry-id=123
Shows 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
The CLI provides helpful error messages:
MINIFLUX_API_KEYlist to browse-v, --version - Show version-q, --quiet - Suppress non-error output-d, --debug - Enable debug output--no-color - Disable colored output--url=URL - Miniflux server URL--api-key=KEY - Miniflux API key# 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
# 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
# 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