topic-monitor

Monitor topics of interest and proactively alert when important developments occur. Use when user wants automated monitoring of specific subjects (e.g., product releases, price changes, news topics, technology updates). Supports scheduled web searches, AI-powered importance scoring, smart alerts vs

By sundial-org · 596 installs

npx skills add sundial-org/awesome-openclaw-skills --skill topic-monitor

Source repository · Upstream listing

Topic Monitor Monitor what matters. Get notified when it happens. Topic Monitor transforms your assistant from reactive to proactive by continuously monitoring topics you care about and intelligently alerting you only when something truly matters. Core Capabilities 1. Topic Configuration Define subjects with custom parameters 2. Scheduled Monitoring Automated searches at configurable intervals 3. AI Importance Scoring Smart filtering: immediate alert vs digest vs ignore 4. Contextual Summaries Not just links—meaningful summaries with context 5. Weekly Digest Low priority findings compiled into readable reports 6. Memory Integration References your past conversations and interests First Run When you first use Topic Monitor, run the interactive setup wizard: The wizard will guide you through: 1. Topics What subjects do you want to monitor? 2. Search queries How to search for each topic 3. Keywords What terms indicate relevance 4. Frequency How often to check (hourly/daily/weekly) 5. Importance threshold When to send alerts (low/medium/high) 6. Weekly digest Compile non urgent findings into a summary The wizard creates config.json with your preferences. You can always edit it later or use manage topics.py to add/remove topics. Example session: Quick Start Already know what you're doing? Here's the manual approach: Topic Configuration Each topic has: name Display name (e.g., "AI Model Releases") query Search query (e.g., "new AI model release announcement") keywords Relevance filters (["GPT", "Claude", "Llama", "release"]) frequency hourly , daily , weekly importance threshold high (alert immediately), medium (alert if important), low (digest only) channels Where to send alerts (["telegram", "discord"]) context Why you care (for AI contextual summaries) Example config.json Scripts manage topics.py Manage research topics: monitor.py Main monitoring script (run via cron): How it works: 1. Reads topics due for checking (based on frequency) 2. Searches using web search plus or built in web search 3. Scores each result with AI importance scorer 4. High importance → immediate alert 5. Medium importance → saved for digest 6. Low importance → ignored 7. Updates state to prevent duplicate alerts digest.py Generate weekly digest: Output format: setup cron.py Configure automated monitoring: Creates cron entries: AI Importance Scoring The scorer uses multiple signals to decide alert priority: Scoring Signals HIGH priority (immediate alert): Major breaking news (detected via freshness + keyword density) Price changes 10% (for finance topics) Product releases matching your exact keywords Security vulnerabilities in tools you use Direct answers to specific questions you asked MEDIUM priority (digest worthy): Related news but not urgent Minor updates to tracked products Interesting developments in your topics Tutorial/guide releases Community discussions with high engagement LOW priority (ignore): Duplicate news (already alerted) Tangentially related content Low quality sources Outdated information Spam/promotional content Learning Mode When enabled ( learning enabled: true ), the system: 1. Tracks which alerts you interact with 2. Adjusts scoring weights based on your behavior 3. Suggests topic refinements 4. Auto adjusts importance thresholds Learning data stored in .learning data.json (privacy safe, never shared). Memory Integration Topic Monitor connects to your conversation history: Example alert: 🔔 Dirac Live Update Version 3.8 released with the room correction improvements you asked about last week. Context: You mentioned struggling with bass response in your studio. This update includes new low frequency optimization. [Link] [Full details] How it works: 1. Reads references/memory hints.md (create this file) 2. Scans recent conversation logs (if available) 3. Matches findings to past context 4. Generates personalized summaries memory hints.md (optional) Help the AI connect dots: Alert Channels Telegram Requires OpenClaw message tool: Discord Webhook based: Email SMTP or API: Advanced Features Alert Conditions Fine tune when to alert: Regex Patterns Match specific patterns: Rate Limiting Prevent alert fatigue: State Management .research state.json Tracks: Last check time per topic Alerted URLs (deduplication) Importance scores history Learning data (if enabled) Example: .findings/ directory Stores digest worthy findings: Best Practices 1. Start conservative Set importance threshold: medium initially, adjust based on alert quality 2. Use context field Helps AI generate better summaries 3. Refine keywords Add negative keywords to filter noise: "keywords": ["AI", " clickbait", " spam"] 4. Enable learning Improves over time based on your behavior 5. Review digest weekly Don't ignore the digest—it surfaces patterns 6. Combine with personal analytics Get topic recommendations based on your chat patterns Integration with Other Skills web search plus Automatically uses intelligent routing: Product/price topics → Serper Research topics → Tavily Company/startup discovery → Exa personal analytics Suggests topics based on conversation patterns: "You've asked about Rust 12 times this month. Want me to monitor 'Rust language updates'?" Privacy & Security All data local No external services except search APIs State files gitignored Safe to use in version controlled workspace Memory hints optional You control what context is shared Learning data stays local Never sent to APIs Troubleshooting No alerts being sent: Check cron is running: crontab l Verify channel config (Telegram chat ID, Discord webhook) Run with dry run verbose to see scoring Too many alerts: Increase importance threshold Add rate limiting Refine keywords (add negative filters) Enable learning mode Missing important news: Decrease importance threshold Increase check frequency Broaden keywords Check .research state.json for deduplication issues Digest not generating: Verify .findings/ directory exists and has content Check digest cron schedule Run manually: python3 scripts/digest.py preview Example Workflows Track Product Release Monitor Competitor Research Topic Credits Built for ClawHub. Uses web search plus skill for intelligent search routing.