Install
openclaw skills install competitor-watchKnow what your competitors ship before their customers do. Automated monitoring of competitor websites, product pages, pricing, content, and social presence. Detects changes, extracts new features, tracks pricing updates, and alerts you with digestible summaries. Your agent watches the competition 24/7 so you can focus on building. Configure competitor tiers (fierce rivals get deep monitoring, adjacents get high-level), set check frequency, define alert thresholds, and receive smart diffs highlighting what actually matters. Use when setting up competitive intelligence, tracking product launches, monitoring pricing changes, or staying ahead of market moves.
openclaw skills install competitor-watchThey ship a feature. You know in minutes, not weeks.
Competitor Watch monitors your competitive landscape automatically—websites, product pages, pricing, blog posts, social accounts—and alerts you when something changes. No more finding out your rival launched that feature you've been building after their customers already know about it.
What makes it different: Tiered monitoring (fierce rivals get deep tracking, adjacents get high-level), intelligent diffing (highlights what matters, filters noise), and digestible summaries that tell you so what instead of dumping raw HTML changes.
You're a founder or product leader. You have 3-5 direct competitors and maybe a dozen companies in adjacent spaces. They're all shipping, pricing, pivoting, and posting. You check manually when you remember (usually when a customer mentions it). By the time you notice a major move, it's too late to react strategically.
Manual competitive intelligence doesn't scale. Bookmarking competitor URLs and checking them weekly doesn't work. You need an agent that watches constantly and only interrupts when something actually matters.
scripts/setup.sh to initialize config and data directories~/.config/competitor-watch/config.json with your competitive landscapescripts/add-competitor.sh "CompanyName" https://example.com --tier=fiercescripts/check.sh --dry-runcheck.sh every 30-60 minutesConfig lives at ~/.config/competitor-watch/config.json. See config.example.json for full schema.
Key sections:
Fierce (direct competitors in every deal):
Important (frequent competitive overlap):
Watching (potential future threat):
Adjacent (different market, relevant trends):
| Script | Purpose |
|---|---|
scripts/setup.sh | Initialize config and data directories |
scripts/add-competitor.sh | Add a competitor (interactive or flags) |
scripts/check.sh | Run monitoring sweep (all or specific tier) |
scripts/diff.sh | Compare snapshots, generate change report |
scripts/report.sh | Format digest of recent changes |
All scripts support --dry-run for testing without storing snapshots.
Run scripts/check.sh on schedule (cron or heartbeat). The check:
diff.sh)diff.sh does intelligent comparison:
Filters out noise:
?v=123)Highlights signal:
Change scoring:
When a meaningful change is detected, report.sh generates a summary:
🚨 COMPETITOR CHANGE: Acme Corp (fierce rival)
Page: https://acme.com/pricing
Detected: 2026-02-11 13:45 EST
Change: MAJOR (pricing update + new tier)
What changed:
• New "Enterprise" tier added at $999/mo
• "Pro" tier price increased from $49 to $79 (+61%)
• Added "Custom AI workflows" feature to all plans
Raw diff: ~/.config/competitor-watch/data/snapshots/acme-corp/pricing/diff-2026-02-11-1345.txt
—
View full snapshot: check.sh --snapshot acme-corp pricing
Alerts respect cooldown (don't spam on every tiny update) and tier settings.
Interactive mode:
scripts/add-competitor.sh
# Prompts for: name, homepage, tier, pages to track, tags
Flag mode:
scripts/add-competitor.sh "Acme Corp" https://acme.com \
--tier fierce \
--pages pricing,features,blog \
--tags "direct-competitor,ai-tools" \
--twitter @acmecorp
# List all
scripts/check.sh --list
# Check specific competitor
scripts/check.sh --competitor "Acme Corp"
# Check tier only
scripts/check.sh --tier fierce
# View change history
scripts/report.sh --competitor "Acme Corp" --days 30
# Update tier
# (Edit ~/.config/competitor-watch/config.json, or re-run add-competitor)
~/.config/competitor-watch/
├── config.json # Competitor list and settings
├── data/
│ ├── snapshots/
│ │ ├── acme-corp/
│ │ │ ├── pricing/
│ │ │ │ ├── 2026-02-11-1000.txt
│ │ │ │ ├── 2026-02-11-1030.txt
│ │ │ │ └── diff-2026-02-11-1030.txt
│ │ │ └── features/...
│ │ └── competitor-b/...
│ ├── change-log.json # All detected changes
│ ├── last-checks.json # When each URL was last checked
│ └── alert-history.json # Sent alerts (for cooldown)
└── reports/
└── daily-digest-2026-02-11.md
# Check fierce rivals every 30 min
*/30 * * * * /path/to/skills/competitor-watch/scripts/check.sh --tier fierce
# Check important every 2 hours
0 */2 * * * /path/to/skills/competitor-watch/scripts/check.sh --tier important
# Daily digest report at 9 AM
0 9 * * * /path/to/skills/competitor-watch/scripts/report.sh --daily
Add to your HEARTBEAT.md:
## Competitor Watch
- Run `skills/competitor-watch/scripts/check.sh --tier fierce` (if >30 min since last)
- Check alert-history.json for unsent alerts
Alerts can be sent via:
Tier carefully:
Focus on delta:
Combine with human intel:
Avoid over-alerting:
Product team:
Sales/GTM:
Marketing:
Founders:
Know what they're shipping. Before their customers do.