360 Secure SkillHub
360 安全技能中心

Competitive Intelligence Agent

该技能按配置抓取竞品定价页、社交媒体、评价站点、产品与新闻页面,执行价格对比、情感与趋势分析,按日/周计划生成竞争情报简报并触发阈值告警,可投递到 Slack、邮件或 Telegram,或导出 CSV/JSON 与本地归档。

marcvanstad
marcvanstad
热度 25.73
最近更新 2026-05-21 01:13:40
分类:营销依赖:代码执行 / 联网浏览搜索 / 读写文件 / 第三方 API / 内部调用大模型应用场景:市场分析 / 报告撰写 / 社交媒体 / 数据处理 ...

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add competitive-intelligence-agent
Metadata
name
competitive-intelligence-agent
description
Monitors competitors across pricing, social media, online reviews, and product changes — distills everything into a concise weekly briefing.
version
1.0.0
metadata
{"openclaw":{"requires":{"bins":["python3","curl","wget"]},"category":"Automation"}}

Competitive Intelligence Agent

Name & Purpose

Monitors competitors across pricing, social media, online reviews, and product changes — then distills everything into a concise weekly briefing. No more manual tab-switching across 20 competitor pages.

Prerequisites

Requirement Version/Detail
OpenClaw v2.4+
Python 3 v3.10+
Playwright v1.40+ (for JavaScript-rendered pages)
curl/wget For API-based data sources
API key (opt.) BrightData/ScrapingBee for blocked sites

Installation

1. Copy skill files

cp -r streams/01_ClawHub_Skills/03_Competitive_Intelligence_Agent/* ~/.openclaw/skills/

2. Install dependencies

cd ~/.openclaw/skills/competitive-intelligence
pip install -r requirements.txt
playwright install chromium

3. Configure competitors

Edit config/targets.yaml:

competitors:
  - name: "Competitor A"
    website: "https://competitor-a.com"
    pricing_url: "https://competitor-a.com/pricing"
    social:
      twitter: "@comp_a"
      linkedin: "competitor-a"
      facebook: "CompetitorAPage"
    review_sites:
      - "https://www.hellopeter.com/competitor-a"
      - "https://www.g2.com/products/competitor-a"
    monitoring:
      pricing_check: daily
      social_check: daily
      reviews_check: weekly
      product_check: weekly

4. Set up report delivery

Edit config/delivery.yaml:

delivery:
  channel: "slack" # Options: slack, email, telegram, file
  slack_webhook: "https://hooks.slack.com/services/..."
  email:
    to: "team@yourcompany.com"
    from: "ci-agent@yourcompany.com"
  schedule:
    weekly_report: "0 9 * * 1"  # Monday 9 AM
    daily_alerts: "0 8 * * 1-5" # Weekdays 8 AM

  # What triggers a real-time alert (not just in the weekly report)
  alerts:
    - type: price_change
      threshold_percent: 10
    - type: new_product_launch
    - type: review_drop
      threshold_stars: 1.5
    - type: leadership_change
    - type: funding_round

Usage

Run a full intelligence sweep

# Immediate sweep of all configured competitors
openclaw skill run competitive-intelligence --full-sweep

# Specific competitor only
openclaw skill run competitive-intelligence --target "Competitor A"

# Specific data source only
openclaw skill run competitive-intelligence --source pricing

Generate reports

# Weekly report (summary for all monitored metrics)
openclaw skill run competitive-intelligence --report weekly

# Pricing snapshot
openclaw skill run competitive-intelligence --report pricing

# Social media sentiment
openclaw skill run competitive-intelligence --report social

# Competitive landscape overview
openclaw skill run competitive-intelligence --report landscape

# Custom date range
openclaw skill run competitive-intelligence --report weekly --from "2025-01-01" --to "2025-01-07"

Watch mode (continuous)

# Start continuous monitoring (uses configured schedule)
openclaw skill run competitive-intelligence --watch

Workflow

Target Configuration (competitors + metrics + schedules)
  ├── Daily: Pricing Check → Compare → Alert on Δ > 10%
  ├── Daily: Social Monitor → Sentiment Analysis → Flag trends
  ├── Weekly: Review Scrape → Aggregate → Summary
  ├── Weekly: Product/Website Changes → Diff → Changelog
  └── Weekly: Generate Report → Deliver (Slack/Email/Telegram)

Available Commands

Command Description
/sweep Trigger full intelligence sweep now
/report Generate weekly briefing immediately
/alert <type> Show recent alerts (price, social, review, product)
/competitors List all monitored competitors
/add-competitor Interactive wizard to add a new competitor
/remove <name> Stop monitoring a competitor
/status Show monitor health, last sweep time, next scheduled sweep
/export <format> Export data as CSV or JSON (format: csv, json)
/config Show current monitoring configuration

Data Collection Methods

Pricing Scraping

# config/scraping.yaml extract
pricing:
  methods:
    - type: "css_selector"
      description: "Scrape pricing page with CSS selectors"
      example: "div.pricing-card span.price"
    - type: "api_endpoint"
      description: "Check for public pricing API"
      example: "https://api.competitor.com/v1/pricing"
    - type: "playwright"
      description: "Full browser render for JS-heavy pricing pages"
  comparison:
    price_fields:
      - plan_name
      - monthly_price
      - annual_price
      - features_included
      - user_limit

Prompt-Driven Analysis:

# config/analysis.yaml extract
analysis:
  - name: pricing_analysis
    description: "Compare own pricing vs competitors"
    prompt: |
      Compare {{our_pricing}} to {{competitor_pricing}}.
      Identify:
      - Where we're more expensive
      - Where we're cheaper
      - Feature gaps at each price point
      - Recommended pricing adjustments
      - Market positioning suggestions

Social Media Monitoring

social:
  platforms:
    - twitter
    - linkedin
    - facebook
  monitoring:
    frequency: daily
    metrics:
      - follower_count
      - engagement_rate
      - sentiment_score
      - top_posts
      - response_time
  alert_rules:
    - metric: sentiment_score
      direction: drop
      threshold: 0.3
      action: alert

Review Aggregation

reviews:
  sites:
    - hellopeter
    - g2
    - trustpilot
    - cacx (South Africa)
    - google_reviews
  aggregation:
    metrics:
      - average_rating
      - review_count
      - sentiment_breakdown
      - common_complaints_cloud  # most common complaint keywords
      - common_praise_cloud      # most common praise keywords
  alert_rules:
    - metric: average_rating
      direction: drop
      threshold: 1.5
      window: 7d
      action: alert

Weekly Report Template

The generated report follows this structure:

╔══════════════════════════════════════════╗
║  COMPETITIVE INTELLIGENCE BRIEFING      ║
║  Week 3 | Jan 13–19, 2025              ║
╚══════════════════════════════════════════╝

📊 EXECUTIVE SUMMARY
  - Key movements this week
  - Top 3 things to act on
  - Risk level: [Low/Medium/High]

💰 PRICING CHANGES
  Competitor A → Increased Enterprise by 15%
  Competitor B → Launched Freemium tier

📱 SOCIAL MEDIA
  Competitor A → Viral tweet about [topic]
  Competitor C → Follower growth +22% (attributed to campaign)

⭐ REVIEW CHANGES
  Competitor B → Hellopeter dropped 3.2 → 2.8
  Common complaints: [support wait time, uptime]

🚀 PRODUCT LAUNCHES
  Competitor A → New AI analytics feature
  Competitor C → Mobile app v2.0

📰 NEWS & HIRING
  Competitor B raised $5M Series A
  Competitor A hired new CMO from [company]

🎯 RECOMMENDATIONS
  1. Match dropdown on Enterprise tier pricing
  2. Highlight our 24/7 support (competitor weakness)
  3. Consider AI analytics feature for Q3 roadmap

────────────────────────────────────────
  Generated by Competitive Intelligence Agent
  Next report: Mon Jan 20, 2025

Example Prompts for Human Operators

"Hey Marvis, run a full competitive sweep and send me the briefing." "Add 'Competitor D' to monitoring — here's their website and social links." "Alert me if any competitor drops their price by more than 10%." "What are the common complaints about our competitors on Hellopeter?" "Show me the pricing comparison between us and Competitor A." "Send the weekly report to the #competitive-intel Slack channel." "Which competitor launched something new this week?"

Directory Structure

competitive-intelligence/
├── SKILL.md
├── README.md
├── config/
│   ├── targets.yaml           # Competitor profiles (websites, social, review sites)
│   ├── scraping.yaml          # CSS selectors, API endpoints, playwright config
│   ├── analysis.yaml          # Analysis prompts and comparison rules
│   ├── delivery.yaml          # Report delivery channels and schedules
│   └── alerts.yaml            # Alert thresholds and notification rules
├── collectors/
│   ├── pricing.py             # Price scraping logic
│   ├── social.py              # Social media monitoring
│   ├── reviews.py             # Review aggregation
│   ├── product_changes.py     # Website/product diffing
│   └── news.py                # News and hiring monitoring
├── analyzers/
│   ├── pricing_comparison.py
│   ├── sentiment.py
│   ├── product_gap.py
│   └── trend_analysis.py
├── templates/
│   └── weekly_report.md       # Weekly briefing template
├── output/
│   ├── reports/               # Generated reports (archived by week)
│   ├── data/                  # Raw data dumps (rotated after 90 days)
│   └── screenshots/           # Evidence snapshots (when alerts trigger)
├── scripts/
│   ├── full-sweep.sh          # Complete intelligence sweep
│   ├── test-collectors.sh     # Verify all collectors work
│   └── setup-cron.sh          # Install cron jobs for schedules
├── requirements.txt
└── package.json

Troubleshooting

Symptom Likely Cause Fix
Pricing page returns empty CSS selector changed Update config/scraping.yaml selectors
Social metrics stale API rate limit hit Increase check_interval in targets.yaml
Report not delivered Slack webhook URL wrong Check config/delivery.yaml
Playwright failing Headless browser issue Run playwright install chromium
"No data for competitor" Target URL unreachable Verify URL or add proxy in scraping config
Alerts not firing Threshold too conservative Lower threshold_percent in alerts.yaml
Reviews returning nothing Review site blocks scraping Add user_agent or rotate proxy
Memory grows over time Data not rotated Check output/data rotation schedule