Media Monitoring Skill

## Overview

14 stars

Best use case

Media Monitoring Skill is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

## Overview

Teams using Media Monitoring Skill should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/cfn-marketing-media-monitoring/SKILL.md --create-dirs "https://raw.githubusercontent.com/masharratt/claude-flow-novice/main/.claude/cfn-extras/skills/marketing/cfn-marketing-media-monitoring/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/cfn-marketing-media-monitoring/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How Media Monitoring Skill Compares

Feature / AgentMedia Monitoring SkillStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

## Overview

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Media Monitoring Skill

## Overview
Monitor brand mentions across media outlets, analyze sentiment, detect crises, and generate monitoring reports using Meltwater/Brandwatch.

## Operations

### 1. search-mentions.sh
Search for brand mentions across all media sources.

**Parameters**:
- `--query` (required): Search query (brand name, product, executive)
- `--timeframe` (optional): Time range (24h/7d/30d, default: 24h)
- `--sources` (optional): Source types (news/social/blogs/forums, default: all)
- `--limit` (optional): Result limit (default: 50)

**Example**:
```bash
./.claude/skills/cfn-marketing-media-monitoring/operations/search-mentions.sh \
  --query "Company Inc" \
  --timeframe "24h" \
  --sources "news,social"
```

**Response**:
```json
{
  "total_mentions": 127,
  "mentions": [
    {
      "id": "mention_123",
      "source": "TechCrunch",
      "source_type": "news",
      "title": "Company Inc Launches New Product",
      "url": "https://techcrunch.com/...",
      "published_at": "2025-10-29T10:00:00Z",
      "sentiment": "positive",
      "reach": 500000
    }
  ],
  "sentiment_breakdown": {
    "positive": 89,
    "neutral": 32,
    "negative": 6
  }
}
```

**Exit Codes**:
- 0: Success
- 1: Invalid parameters
- 2: API error

---

### 2. get-sentiment-analysis.sh
Analyze sentiment of brand mentions.

**Parameters**:
- `--query` (required): Search query
- `--timeframe` (optional): Time range (24h/7d/30d, default: 24h)
- `--breakdown` (optional): Breakdown dimension (source/source_type/date, default: source_type)

**Example**:
```bash
./.claude/skills/cfn-marketing-media-monitoring/operations/get-sentiment-analysis.sh \
  --query "Company Inc" \
  --timeframe "7d" \
  --breakdown "date"
```

**Response**:
```json
{
  "query": "Company Inc",
  "timeframe": "7d",
  "total_mentions": 456,
  "overall_sentiment": {
    "positive": 72.8,
    "neutral": 21.5,
    "negative": 5.7
  },
  "sentiment_by_date": [
    {
      "date": "2025-10-29",
      "positive": 45,
      "neutral": 12,
      "negative": 3
    }
  ],
  "sentiment_trend": "improving",
  "crisis_risk": "low"
}
```

**Exit Codes**:
- 0: Success
- 1: Invalid parameters
- 2: API error

---

### 3. create-crisis-alert.sh
Set up crisis detection alert based on sentiment thresholds.

**Parameters**:
- `--query` (required): Search query to monitor
- `--negative-threshold` (optional): Negative sentiment % threshold (default: 50)
- `--positive-threshold` (optional): Positive sentiment % threshold (default: 30)
- `--alert-email` (required): Email for crisis alerts
- `--check-interval` (optional): Check interval in minutes (default: 15)

**Example**:
```bash
./.claude/skills/cfn-marketing-media-monitoring/operations/create-crisis-alert.sh \
  --query "Company Inc" \
  --negative-threshold 50 \
  --positive-threshold 30 \
  --alert-email "pr@company.com" \
  --check-interval 15
```

**Response**:
```json
{
  "alert_id": "alert_xyz789",
  "query": "Company Inc",
  "status": "active",
  "conditions": {
    "negative_threshold": 50,
    "positive_threshold": 30
  },
  "alert_email": "pr@company.com",
  "check_interval_minutes": 15,
  "created_at": "2025-10-29T14:00:00Z"
}
```

**Exit Codes**:
- 0: Success
- 1: Invalid parameters
- 2: API error
- 3: Validation error

**Crisis Detection Requirements**:
- Alert latency: <15 minutes from negative mention
- Crisis response SLA: 2-hour tracking
- Sentiment threshold: <30% positive OR >50% negative

---

### 4. export-report.sh
Export daily/weekly brand mention report.

**Parameters**:
- `--query` (required): Search query
- `--report-type` (required): Report type (daily/weekly/monthly)
- `--format` (optional): Export format (json/csv/pdf, default: json)
- `--email` (optional): Email address to send report

**Example**:
```bash
./.claude/skills/cfn-marketing-media-monitoring/operations/export-report.sh \
  --query "Company Inc" \
  --report-type "weekly" \
  --format "pdf" \
  --email "marketing@company.com"
```

**Response**:
```json
{
  "report_id": "report_456",
  "query": "Company Inc",
  "report_type": "weekly",
  "format": "pdf",
  "period": {
    "start": "2025-10-22T00:00:00Z",
    "end": "2025-10-29T00:00:00Z"
  },
  "total_mentions": 456,
  "sentiment_summary": {
    "positive": 72.8,
    "neutral": 21.5,
    "negative": 5.7
  },
  "download_url": "https://reports.example.com/report_456.pdf",
  "sent_to": "marketing@company.com"
}
```

**Exit Codes**:
- 0: Success
- 1: Invalid parameters
- 2: API error

## Environment Variables
- `N8N_BASE_URL`: n8n instance URL
- `N8N_API_KEY`: n8n API authentication key

## Integration
All operations use n8n webhooks for Meltwater/Brandwatch integration.

Related Skills

Web Portal Skill - Monitoring & Visualization Interface

14
from masharratt/claude-flow-novice

**Version:** 1.0.0

Media Outreach Skill

14
from masharratt/claude-flow-novice

## Overview

supabase-schema-sync

14
from masharratt/claude-flow-novice

Introspects Supabase DB after migrations and updates project db-query skill with current schema. Run after any migration to keep agent context accurate.

commit

14
from masharratt/claude-flow-novice

Stage, commit, and push changes using a background github-commit-agent. Accepts optional args for message override or push control.

cfn-vote-implement

14
from masharratt/claude-flow-novice

MUST BE USED after cfn-dry-review or cfn-alpha-launch:manifest produces a manifest. Also the verification phase of /cfn-loop-task. Do not manually implement code review suggestions - always route through this skill. 3-agent specialized voting. Unanimous (3/3) auto-implemented with TDD. 2/3 routed to product-owner agent. 1/3 surfaced to user via AskUserQuestion (batched 4 per call, at end).

cfn-utilities

14
from masharratt/claude-flow-novice

Reusable bash utility functions for CFN Loop - logging, error handling, retry, file operations. Use when you need structured logging, atomic file operations, retry logic with exponential backoff, or standardized error handling in bash scripts.

CFN Test Runner Skill

14
from masharratt/claude-flow-novice

**Version:** 1.0.0

cfn-test-framework

14
from masharratt/claude-flow-novice

Test execution, running, and webapp testing for CFN

cfn-task-planning

14
from masharratt/claude-flow-novice

Classify tasks, initialize structured configs with scope boundaries, decompose complex tasks

Specialist Injection Skill

14
from masharratt/claude-flow-novice

## Purpose

!/bin/bash

14
from masharratt/claude-flow-novice

# cfn-task-intelligence.sh

Task Complexity Estimator

14
from masharratt/claude-flow-novice

**Version:** 1.0.0