Files
robbyczgw-cla_topic-monitor/CHANGELOG.md

2.6 KiB

Changelog

[1.5.0] - 2026-03-26

Added

  • RSS/Atom feed monitoring as first-class source alongside web search
  • Feed auto-discovery from any URL
  • OPML import/export support
  • ETag/Last-Modified caching for efficient feed polling
  • Boolean query filters: exclude_keywords and required_keywords per topic
  • Sentiment analysis (positive/negative/neutral/mixed) in importance scoring
  • alert_on_sentiment_shift config option per topic
  • Sentiment history tracking in state
  • GitHub release monitoring via github_repos config
  • Vendored feedparser (zero pip install needed)
  • Feed discovery via manage_topics.py discover-feed
  • OPML import via manage_topics.py import-opml

[1.3.5] - 2026-03-03

Changed

  • Hardened subprocess handling and synced monitor docs/metadata.

[1.3.3] - 2026-02-11

Changed

  • Subprocess env hardening: monitor.py now uses an allowlist for web-search-plus subprocess environment (PATH, HOME, LANG, TERM + search provider keys only).
  • Discord delivery flow: Removed webhook-style delivery from skill docs/flow; Discord alerts are now emitted as structured JSON (DISCORD_ALERT) for OpenClaw agent delivery (same pattern as Telegram).
  • No direct HTTP calls: Alerting/search integration is documented as agent-mediated JSON output + subprocess execution, without direct outbound HTTP from topic-monitor skill code.

[1.3.2] - 2026-02-11

🆕 Real Alerting System

The alerting system is now fully functional (was a stub before):

  • Telegram Alerts: Send immediate alerts for high-priority findings
  • Multi-Channel Support: Telegram, Discord, and Email
  • Smart Filtering: Importance scoring determines what gets alerted

Changed

  • State Files: Now stored in .data/ directory (configurable via TOPIC_MONITOR_DATA_DIR)
  • Telegram ID: Configured via TOPIC_MONITOR_TELEGRAM_ID environment variable (no hardcoded values)
  • web-search-plus Path: Now relative by default, configurable via WEB_SEARCH_PLUS_PATH
  • No Hardcoded Paths: All paths and IDs are now configurable

Environment Variables

New environment variables for configuration:

Variable Default Description
TOPIC_MONITOR_TELEGRAM_ID Telegram chat ID for alerts
TOPIC_MONITOR_DATA_DIR .data/ State and findings directory
WEB_SEARCH_PLUS_PATH Relative Path to web-search-plus script

Migration

If you had hardcoded paths in config.json, update to use environment variables:

export TOPIC_MONITOR_TELEGRAM_ID="your_telegram_id"

[1.2.1] - 2026-02-04

  • Privacy cleanup: removed hardcoded paths and personal info from docs