ops-competitorslisted
Install: claude install-skill Lifecycle-Innovations-Limited/claude-ops
## Runtime Context
Before rendering, load competitor context:
```bash
PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-$(dirname $(which ops-competitors 2>/dev/null) 2>/dev/null)/..}"
OPS_DATA_DIR="${OPS_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}"
source "$PLUGIN_ROOT/scripts/lib/competitor/context.sh" 2>/dev/null || true
CTX=$(competitor_context 2>/dev/null || echo '{"configured":false,"reason":"lib_not_found"}')
```
# OPS ► COMPETITORS — Intel Dashboard
Parse `$ARGUMENTS` and dispatch to the matching mode below.
---
## Mode: No args — Dashboard
Show all tracked brands with last_run, alert counts, and recent activity. Use `competitor_briefing_line` for each brand row.
```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS ► COMPETITORS — [date]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TRACKED BRANDS ([n] total)
[brand] last run [date] [n] alerts · [n] med · [n] low
...
PENDING QUEUES
immediate: [n] daily: [n]
RECENT HIGH ALERTS (last 7d)
[timestamp] [brand] [competitor] [snippet…]
...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```
If `configured == false`: print setup hint and stop.
```bash
# Load context
source "$PLUGIN_ROOT/scripts/lib/competitor/context.sh"
competitor_context --window-days 7
competitor_briefing_line
```
Mobile mode (Rule 7): one line per brand, no banner, no box-drawing.
---
## Mode: `<brand-name>` — Drill-down
Full event timeline (last 30d), top competitors, latest report, per-competito