4.2k★proactive-research – OpenClaw Skill
proactive-research is an OpenClaw Skills integration for coding workflows. 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 weekly digests, and memory-aware contextual summaries.
Skill Snapshot
| name | proactive-research |
| description | 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 weekly digests, and memory-aware contextual summaries. OpenClaw Skills integration. |
| owner | robbyczgw-cla |
| repository | robbyczgw-cla/proactive-research |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @robbyczgw-cla/proactive-research |
| last updated | Feb 7, 2026 |
Maintainer

name: proactive-research description: 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 weekly digests, and memory-aware contextual summaries.
Proactive Research
Monitor what matters. Get notified when it happens.
Proactive Research 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
- Topic Configuration - Define subjects with custom parameters
- Scheduled Monitoring - Automated searches at configurable intervals
- AI Importance Scoring - Smart filtering: immediate alert vs digest vs ignore
- Contextual Summaries - Not just links—meaningful summaries with context
- Weekly Digest - Low-priority findings compiled into readable reports
- Memory Integration - References your past conversations and interests
Quick Start
# Initialize config
cp config.example.json config.json
# Add a topic
python3 scripts/manage_topics.py add "Dirac Live updates" \
--keywords "Dirac Live,room correction,audio" \
--frequency daily \
--importance medium
# Test monitoring (dry run)
python3 scripts/monitor.py --dry-run
# Set up cron for automatic monitoring
python3 scripts/setup_cron.py
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
{
"topics": [
{
"id": "ai-models",
"name": "AI Model Releases",
"query": "new AI model release GPT Claude Llama",
"keywords": ["GPT", "Claude", "Llama", "release", "announcement"],
"frequency": "daily",
"importance_threshold": "high",
"channels": ["telegram"],
"context": "Following AI developments for work",
"alert_on": ["model_release", "major_update"]
},
{
"id": "tech-news",
"name": "Tech Industry News",
"query": "technology startup funding acquisition",
"keywords": ["startup", "funding", "Series A", "acquisition"],
"frequency": "daily",
"importance_threshold": "medium",
"channels": ["telegram"],
"context": "Staying informed on tech trends",
"alert_on": ["major_funding", "acquisition"]
},
{
"id": "security-alerts",
"name": "Security Vulnerabilities",
"query": "CVE critical vulnerability security patch",
"keywords": ["CVE", "vulnerability", "security", "patch", "critical"],
"frequency": "hourly",
"importance_threshold": "high",
"channels": ["telegram", "email"],
"context": "DevOps security monitoring",
"alert_on": ["critical_cve", "zero_day"]
}
],
"settings": {
"digest_day": "sunday",
"digest_time": "18:00",
"max_alerts_per_day": 5,
"deduplication_window_hours": 72,
"learning_enabled": true
}
}
Scripts
manage_topics.py
Manage research topics:
# Add topic
python3 scripts/manage_topics.py add "Topic Name" \
--query "search query" \
--keywords "word1,word2" \
--frequency daily \
--importance medium \
--channels telegram
# List topics
python3 scripts/manage_topics.py list
# Edit topic
python3 scripts/manage_topics.py edit eth-price --frequency hourly
# Remove topic
python3 scripts/manage_topics.py remove eth-price
# Test topic (preview results without saving)
python3 scripts/manage_topics.py test eth-price
monitor.py
Main monitoring script (run via cron):
# Normal run (alerts + saves state)
python3 scripts/monitor.py
# Dry run (no alerts, shows what would happen)
python3 scripts/monitor.py --dry-run
# Force check specific topic
python3 scripts/monitor.py --topic eth-price
# Verbose logging
python3 scripts/monitor.py --verbose
How it works:
- Reads topics due for checking (based on frequency)
- Searches using web-search-plus or built-in web_search
- Scores each result with AI importance scorer
- High-importance → immediate alert
- Medium-importance → saved for digest
- Low-importance → ignored
- Updates state to prevent duplicate alerts
digest.py
Generate weekly digest:
# Generate digest for current week
python3 scripts/digest.py
# Generate and send
python3 scripts/digest.py --send
# Preview without sending
python3 scripts/digest.py --preview
Output format:
# Weekly Research Digest - [Date Range]
## 🔥 Highlights
- **AI Models**: Claude 4.5 released with improved reasoning
- **Security**: Critical CVE patched in popular framework
## 📊 By Topic
### AI Model Releases
- [3 findings this week]
### Security Vulnerabilities
- [1 finding this week]
## 💡 Recommendations
Based on your interests, you might want to monitor:
- "Kubernetes security" (mentioned 3x this week)
setup_cron.py
Configure automated monitoring:
# Interactive setup
python3 scripts/setup_cron.py
# Auto-setup with defaults
python3 scripts/setup_cron.py --auto
# Remove cron jobs
python3 scripts/setup_cron.py --remove
Creates cron entries:
# Proactive Research - Hourly topics
0 * * * * cd /path/to/skills/proactive-research && python3 scripts/monitor.py --frequency hourly
# Proactive Research - Daily topics
0 9 * * * cd /path/to/skills/proactive-research && python3 scripts/monitor.py --frequency daily
# Proactive Research - Weekly digest
0 18 * * 0 cd /path/to/skills/proactive-research && python3 scripts/digest.py --send
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:
- Tracks which alerts you interact with
- Adjusts scoring weights based on your behavior
- Suggests topic refinements
- Auto-adjusts importance thresholds
Learning data stored in .learning_data.json (privacy-safe, never shared).
Memory Integration
Proactive Research 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:
- Reads references/memory_hints.md (create this file)
- Scans recent conversation logs (if available)
- Matches findings to past context
- Generates personalized summaries
memory_hints.md (optional)
Help the AI connect dots:
# Memory Hints for Proactive Research
## AI Models
- Using Claude for coding assistance
- Interested in reasoning improvements
- Comparing models for different use cases
## Security
- Running production Kubernetes clusters
- Need to patch critical CVEs quickly
- Interested in zero-day disclosures
## Tech News
- Following startup ecosystem
- Interested in developer tools space
- Tracking potential acquisition targets
Alert Channels
Telegram
Requires OpenClaw message tool:
{
"channels": ["telegram"],
"telegram_config": {
"chat_id": "@your_username",
"silent": false,
"effects": {
"high_importance": "🔥",
"medium_importance": "📌"
}
}
}
Discord
Webhook-based:
{
"channels": ["discord"],
"discord_config": {
"webhook_url": "https://discord.com/api/webhooks/...",
"username": "Research Bot",
"avatar_url": "https://..."
}
}
SMTP or API:
{
"channels": ["email"],
"email_config": {
"to": "you@example.com",
"from": "research@yourdomain.com",
"smtp_server": "smtp.gmail.com",
"smtp_port": 587
}
}
Advanced Features
Alert Conditions
Fine-tune when to alert:
{
"alert_on": [
"price_change_10pct",
"keyword_exact_match",
"source_tier_1",
"high_engagement"
],
"ignore_sources": [
"spam-site.com",
"clickbait-news.io"
],
"boost_sources": [
"github.com",
"arxiv.org",
"official-site.com"
]
}
Regex Patterns
Match specific patterns:
{
"patterns": [
"version \\d+\\.\\d+\\.\\d+",
"\\$\\d{1,3}(,\\d{3})*",
"CVE-\\d{4}-\\d+"
]
}
Rate Limiting
Prevent alert fatigue:
{
"settings": {
"max_alerts_per_day": 5,
"max_alerts_per_topic_per_day": 2,
"quiet_hours": {
"start": "22:00",
"end": "08:00"
}
}
}
State Management
.research_state.json
Tracks:
- Last check time per topic
- Alerted URLs (deduplication)
- Importance scores history
- Learning data (if enabled)
Example:
{
"topics": {
"eth-price": {
"last_check": "2026-01-28T22:00:00Z",
"last_alert": "2026-01-28T15:30:00Z",
"alerted_urls": [
"https://example.com/eth-news-1"
],
"findings_count": 3,
"alerts_today": 1
}
},
"deduplication": {
"url_hash_map": {
"abc123": "2026-01-28T15:30:00Z"
}
}
}
.findings/ directory
Stores digest-worthy findings:
.findings/
├── 2026-01-22_eth-price.json
├── 2026-01-24_fm26-patches.json
└── 2026-01-27_ai-breakthroughs.json
Best Practices
- Start conservative - Set
importance_threshold: mediuminitially, adjust based on alert quality - Use context field - Helps AI generate better summaries
- Refine keywords - Add negative keywords to filter noise:
"keywords": ["AI", "-clickbait", "-spam"] - Enable learning - Improves over time based on your behavior
- Review digest weekly - Don't ignore the digest—it surfaces patterns
- 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 --verboseto 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.jsonfor 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
python3 scripts/manage_topics.py add "iPhone 17 Release" \
--query "iPhone 17 announcement release date" \
--keywords "iPhone 17,Apple event,September" \
--frequency daily \
--importance high \
--channels telegram \
--context "Planning to upgrade from iPhone 13"
Monitor Competitor
python3 scripts/manage_topics.py add "Competitor Analysis" \
--query "CompetitorCo product launch funding" \
--keywords "CompetitorCo,product,launch,Series,funding" \
--frequency weekly \
--importance medium \
--channels discord,email
Research Topic
python3 scripts/manage_topics.py add "Quantum Computing Papers" \
--query "quantum computing arxiv" \
--keywords "quantum,qubit,arxiv" \
--frequency weekly \
--importance low \
--channels email
Credits
Built for ClawHub. Uses web-search-plus skill for intelligent search routing.
Proactive Research
Never miss what matters. Get alerted when it happens.
Proactive Research transforms your assistant from reactive to proactive by continuously monitoring topics you care about and intelligently alerting you only when something truly important occurs.
Features
- 🔍 Automated Monitoring - Scheduled web searches for your topics
- 🧠 AI Importance Scoring - Smart filtering: alert vs digest vs ignore
- 📱 Multi-Channel Alerts - Telegram, Discord, Email
- 📊 Weekly Digests - Curated summaries of interesting findings
- 🧩 Memory Integration - Contextual alerts referencing your past conversations
- ⚡ Rate Limiting - Prevent alert fatigue
- 🎯 Custom Conditions - Fine-tune when to alert
Quick Start
# 1. Setup
cp config.example.json config.json
# 2. Add your first topic
python3 scripts/manage_topics.py add "AI Models" \
--query "new AI model release announcement" \
--keywords "GPT,Claude,Llama,release" \
--frequency daily \
--importance high \
--channels telegram
# 3. Test it
python3 scripts/manage_topics.py test ai-models
# 4. Set up automated monitoring
python3 scripts/setup_cron.py
Use Cases
📈 Price Monitoring
Track product prices, SaaS pricing changes, or market trends with alerts on significant changes.
🔧 Product Updates
Monitor software releases, patches, and feature announcements.
📰 News Tracking
Stay updated on specific topics without drowning in noise.
🏢 Competitor Analysis
Track competitor product launches, funding, and news.
🎓 Research Papers
Monitor arXiv, GitHub, or academic publications in your field.
How It Works
- Configure Topics - Define what to monitor and when to alert
- Scheduled Checks - Cron jobs run searches at your chosen frequency
- AI Scoring - Each result is scored for importance
- Smart Alerting - High priority → immediate alert, Medium → digest, Low → ignore
- Deduplication - Never get the same alert twice
Configuration
See SKILL.md for complete documentation.
Example Topic
{
"id": "ai-breakthroughs",
"name": "AI Research Breakthroughs",
"query": "artificial intelligence breakthrough research",
"keywords": ["AI", "LLM", "transformer", "AGI"],
"frequency": "daily",
"importance_threshold": "medium",
"channels": ["telegram"],
"context": "Following AI developments for work",
"alert_on": ["major_paper", "model_release"]
}
Commands
Manage Topics
# Add topic
python3 scripts/manage_topics.py add "Topic Name" \
--query "search query" \
--keywords "word1,word2" \
--frequency daily
# List topics
python3 scripts/manage_topics.py list
# Edit topic
python3 scripts/manage_topics.py edit topic-id --frequency hourly
# Remove topic
python3 scripts/manage_topics.py remove topic-id
# Test topic
python3 scripts/manage_topics.py test topic-id
Monitor
# Manual check (dry run)
python3 scripts/monitor.py --dry-run --verbose
# Check specific topic
python3 scripts/monitor.py --topic ai-models
# Check all hourly topics
python3 scripts/monitor.py --frequency hourly
Digest
# Preview this week's digest
python3 scripts/digest.py --preview
# Generate and send
python3 scripts/digest.py --send
Cron Setup
# Interactive setup
python3 scripts/setup_cron.py
# Auto-setup
python3 scripts/setup_cron.py --auto
# Remove cron jobs
python3 scripts/setup_cron.py --remove
Integration
Works With
- web-search-plus - Intelligent search routing (Serper, Tavily, Exa)
- personal-analytics - Get topic recommendations from your chat patterns
- OpenClaw message tool - Send alerts via Telegram, Discord
Channel Setup
Telegram
Configure in config.json:
{
"channels": {
"telegram": {
"enabled": true,
"chat_id": "@your_username"
}
}
}
Discord
Add webhook URL:
{
"channels": {
"discord": {
"enabled": true,
"webhook_url": "https://discord.com/api/webhooks/..."
}
}
}
Privacy
- All data stored locally
- No external services except search APIs
- Learning data stays on your machine
- State files are gitignored
Requirements
- Python 3.8+
- Optional: web-search-plus skill (for better search)
- Cron (for automated monitoring)
License
MIT
Credits
Built for ClawHub by the Moltmates team.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
- [1 finding this week]
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
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 ```json { "topics": [ { "id": "ai-models", "name": "AI Model Releases", "query": "new AI model release GPT Claude Llama", "keywords": ["GPT", "Claude", "Llama", "release", "announcement"], "frequency": "daily", "importance_threshold": "high", "channels": ["telegram"], "context": "Following AI developments for work", "alert_on": ["model_release", "major_update"] }, { "id": "tech-news", "name": "Tech Industry News", "query": "technology startup funding acquisition", "keywords": ["startup", "funding", "Series A", "acquisition"], "frequency": "daily", "importance_threshold": "medium", "channels": ["telegram"], "context": "Staying informed on tech trends", "alert_on": ["major_funding", "acquisition"] }, { "id": "security-alerts", "name": "Security Vulnerabilities", "query": "CVE critical vulnerability security patch", "keywords": ["CVE", "vulnerability", "security", "patch", "critical"], "frequency": "hourly", "importance_threshold": "high", "channels": ["telegram", "email"], "context": "DevOps security monitoring", "alert_on": ["critical_cve", "zero_day"] } ], "settings": { "digest_day": "sunday", "digest_time": "18:00", "max_alerts_per_day": 5, "deduplication_window_hours": 72, "learning_enabled": true } } ```
FAQ
How do I install proactive-research?
Run openclaw add @robbyczgw-cla/proactive-research in your terminal. This installs proactive-research into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/robbyczgw-cla/proactive-research. Review commits and README documentation before installing.
