Blogwatcher

SkillMonitoring & ops

Monitor blogs and RSS/Atom feeds via blogwatcher-cli.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Blogwatcher skill

What this skill tells your AI

The instructions your AI receives, as published by hezaohezao/poirot in poirot/backend/agents/skill/builtin_skills/research/blogwatcher/SKILL.md and read by ahel’s review.

Track blog and RSS/Atom feed updates with the blogwatcher-cli tool. Supports automatic feed discovery, HTML scraping fallback, OPML import, and read/unread article management.

Prerequisites

blogwatcher-cli must be installed. Pick one method:

# Go install
go install github.com/JulienTant/blogwatcher-cli/cmd/blogwatcher-cli@latest

# Binary (Linux amd64)
curl -sL https://github.com/JulienTant/blogwatcher-cli/releases/latest/download/blogwatcher-cli_linux_amd64.tar.gz | tar xz -C /usr/local/bin blogwatcher-cli

# Docker
docker run --rm -v blogwatcher-cli:/data ghcr.io/julientant/blogwatcher-cli scan

All releases: https://github.com/JulienTant/blogwatcher-cli/releases

Verify installation:

blogwatcher-cli --version

When to Use

  • User wants to monitor blog updates
  • User wants to track RSS/Atom feeds
  • User wants to import OPML subscriptions
  • User wants a digest of new articles from tracked blogs

Common Commands

# Add a blog to track
blogwatcher-cli add https://example.com/blog

# Add with explicit feed URL
blogwatcher-cli add https://example.com/blog --feed https://example.com/feed.xml

# Scan for new articles
blogwatcher-cli scan

# List tracked blogs
blogwatcher-cli list

# List unread articles
blogwatcher-cli articles --unread

# Mark article as read
blogwatcher-cli read <article-id>

# Import OPML
blogwatcher-cli import subscriptions.opml

# Export OPML
blogwatcher-cli export > subscriptions.opml

Workflow

Setup (first time)

# Install blogwatcher-cli (see Prerequisites)
# Add blogs to track
blogwatcher-cli add https://blog1.com
blogwatcher-cli add https://blog2.com

# Or import existing OPML
blogwatcher-cli import my-subscriptions.opml

Daily check

# Scan for new articles
blogwatcher-cli scan

# Show unread
blogwatcher-cli articles --unread

# Read an article (marks as read)
blogwatcher-cli read <article-id>

Automated monitoring

Set up a cron job to scan periodically:

# Scan every morning at 8am
echo "0 8 * * * blogwatcher-cli scan" | crontab -

Docker with persistent storage

The database lives at ~/.blogwatcher-cli/blogwatcher-cli.db by default. In Docker, use a volume to persist:

# Named volume
docker run --rm -v blogwatcher-cli:/data -e BLOGWATCHER_DB=/data/blogwatcher-cli.db ghcr.io/julientant/blogwatcher-cli scan

# Host bind mount
docker run --rm -v /path/on/host:/data -e BLOGWATCHER_DB=/data/blogwatcher-cli.db ghcr.io/julientant/blogwatcher-cli scan

Pitfalls

  • blogwatcher-cli not installed: this skill requires the external tool. Install first (see Prerequisites).
  • Feed discovery fails: some sites don't expose <link rel="alternate"> tags. Use --feed to specify the feed URL explicitly.
  • Rate limiting: scanning many feeds rapidly may get you blocked. The tool handles this, but don't run scan too frequently.
  • Database location: if using Docker, always set BLOGWATCHER_DB to a volume-mounted path, or data is lost on container exit.
  • OPML encoding: ensure OPML files are UTF-8 encoded for proper import.

Signals

GitHub stars
220
Forks
19
Last commit
Jul 2026
Advanced
Catalog kind
skill
Gateway key
blogwatcher-hezaohezao
Source
github.com/hezaohezao/poirot