Skip to content

Scheduled Runs

Setup

The scheduled run uses the feeds and agent from config.toml, so set them once and schedule:

news-recap config set rss https://feed1.com/rss https://feed2.com/rss
news-recap schedule set

Changing config.toml later changes what the scheduled run does; no need to re-run schedule set.

To pin feeds or an agent into the scheduled run instead (they then override config.toml):

news-recap schedule set --rss https://your-feed.com/rss --agent claude

To change the daily run time (default 03:00):

news-recap schedule set --time 07:30

To use the current Python venv instead of global news-recap:

news-recap schedule set --venv

The command auto-detects the platform and installs:

  • macOS: LaunchAgent (~/Library/LaunchAgents/com.news-recap.daily.plist)
  • Linux: systemd user timer (~/.config/systemd/user/news-recap.timer)
  • Windows: Task Scheduler (news-recap-daily)

Re-running is safe — the previous configuration is replaced.

Checking the schedule

news-recap schedule get

Checking logs

macOS:

tail -f ~/Library/Logs/news-recap/news-recap-$(date +%Y-%m-%d).log

Linux:

journalctl --user -u news-recap.service -n 200 --no-pager

Windows:

Get-Content "$env:LOCALAPPDATA\news-recap\logs\news-recap-$(Get-Date -Format 'yyyy-MM-dd').log" -Tail 200

Removal

news-recap schedule delete

Troubleshooting

The errors below apply when using --agent claude.

If you see Agent command not found: claude — make sure claude runs in your regular terminal, then run news-recap schedule set again.

If you see Not logged in · Please run /login — run claude and /login in your regular terminal under the same user, then trigger the job manually:

macOS:

launchctl start com.news-recap.daily

Linux:

systemctl --user start news-recap.service

Windows:

Start-ScheduledTask -TaskName "news-recap-daily"