ops-competitors

GitHub

竞品情报仪表盘与管理系统,追踪品牌信号、页面差异、价格变动及App Store动态。提供概览、详情下钻、手动刷新和URL监控添加功能,基于定时管道生成周报。

claude-ops/skills/ops-competitors/SKILL.md Lifecycle-Innovations-Limited/claude-ops

Trigger Scenarios

查看竞品情报概览 查询特定竞品的详细动态 手动触发竞品数据更新 添加新的竞品监控URL

Install

npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-competitors -g -y
More Options

Non-standard path

npx skills add https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-competitors -g -y

Use without installing

npx skills use Lifecycle-Innovations-Limited/claude-ops@ops-competitors

指定 Agent (Claude Code)

npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-competitors -a claude-code -g -y

安装 repo 全部 skill

npx skills add Lifecycle-Innovations-Limited/claude-ops --all -g -y

预览 repo 内 skill

npx skills add Lifecycle-Innovations-Limited/claude-ops --list

SKILL.md

Frontmatter
{
    "name": "ops-competitors",
    "effort": "low",
    "maxTurns": 15,
    "description": "Competitor-intel dashboard and management UI. Tracks brand signals, page-diff alerts, pricing changes, App Store moves, and weekly synthesis reports. Powered by the competitor-intel cron pipeline.",
    "allowed-tools": [
        "Bash",
        "Read",
        "Edit",
        "AskUserQuestion"
    ],
    "argument-hint": "[brand-name|refresh [brand]|add-url <brand> <competitor> <kind> <url>|alerts|help]",
    "disallowedTools": [
        "Write",
        "NotebookEdit"
    ]
}

Runtime Context

Before rendering, load competitor context:

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.

# 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-competitor signal breakdown.

  1. Run competitor_context --brand "<brand>" --window-days 30
  2. Print brand metadata: category, competitor list, last_run, last_discovery
  3. Print per-competitor signal breakdown (group events by .competitor)
  4. Read latest report:
    SLUG=$(echo "<brand>" | tr '[:upper:] /' '[:lower:]--' | tr -cd 'a-z0-9-_.')
    REPORT="$OPS_DATA_DIR/reports/competitor-intel/latest-${SLUG}.md"
    [[ -f "$REPORT" ]] && head -80 "$REPORT"
    
  5. Print full high-severity event timeline sorted newest-first

Output format:

BRAND: [name]  category: [cat]  last run: [date]
competitors: [a, b, c, ...]

SIGNAL BREAKDOWN
  [competitor]   high: [n]  med: [n]  low: [n]

LATEST REPORT (excerpt)
  [first 80 lines of report]

EVENT TIMELINE (30d — [n] total)
  [timestamp]  HIGH  [competitor]  [source]  [snippet…]
  ...

Mode: refresh [brand]

Manually triggers the weekly intel cron immediately.

PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-...}"
CRON_SCRIPT="$PLUGIN_ROOT/scripts/ops-cron-competitor-intel.sh"

# If a specific brand is given, pass it via env override
if [[ -n "$BRAND_ARG" ]]; then
  BRAND_NAME="$BRAND_ARG" bash "$CRON_SCRIPT"
else
  bash "$CRON_SCRIPT"
fi

Stream output. Inform the user when done and show updated competitor_briefing_line.


Mode: add-url <brand> <competitor> <kind> <url>

Add a page-diff monitored URL to preferences.json. Valid <kind> values: pricing, features, changelog, careers.

  1. Validate args — if any missing, explain usage and stop.
  2. Show the proposed change:
    Add URL for [brand] → [competitor] ([kind]):
      [url]
    
  3. AskUserQuestion: [Add] / [Cancel]
  4. On confirm, merge via jq:
    PREFS="$OPS_DATA_DIR/preferences.json"
    jq --arg brand "$BRAND" --arg comp "$COMP" --arg kind "$KIND" --arg url "$URL" '
      .competitor_intel.urls[$brand][$comp][$kind] = $url
    ' "$PREFS" > /tmp/prefs-tmp.json && mv /tmp/prefs-tmp.json "$PREFS"
    
  5. Confirm written.

Mode: alerts

Tail the last 20 lines of the alerts log:

ALERTS="$OPS_DATA_DIR/reports/competitor-intel/alerts.log"
if [[ -f "$ALERTS" ]]; then
  tail -20 "$ALERTS"
else
  echo "No alerts log found at $ALERTS"
fi

Mode: help / unknown args

Print available subcommands:

ops-competitors                           — dashboard (all brands)
ops-competitors <brand>                   — drill-down: events, report, breakdown
ops-competitors refresh [brand]           — run intel cron now (optional brand filter)
ops-competitors add-url <b> <c> <k> <url> — add page-diff URL to preferences.json
ops-competitors alerts                    — tail alerts.log (last 20 lines)
ops-competitors help                      — this message

Error states

  • configured == false → print "Competitor-intel not configured. Run /ops:setup competitor-intel to get started." and stop.
  • CRON_SCRIPT not found → print path and stop.
  • PREFS not writable for add-url → surface error, do not silently fail.

Version History

  • 64bad13 Current 2026-08-12 09:00

Same Skill Collection

claude-ops/skills/boss/SKILL.md
claude-ops/skills/flow/SKILL.md
claude-ops/skills/ledger/SKILL.md
claude-ops/skills/ops-accounts/SKILL.md
claude-ops/skills/ops-ar/SKILL.md
claude-ops/skills/ops-aws-audit/SKILL.md
claude-ops/skills/ops-comms/SKILL.md
claude-ops/skills/ops-credentials/SKILL.md
claude-ops/skills/ops-daemon/SKILL.md
claude-ops/skills/ops-dash/SKILL.md
claude-ops/skills/ops-deploy-fix/SKILL.md
claude-ops/skills/ops-deploy/SKILL.md
claude-ops/skills/ops-desktop/SKILL.md
claude-ops/skills/ops-doctor/SKILL.md
claude-ops/skills/ops-ecom/SKILL.md
claude-ops/skills/ops-feature-dev/SKILL.md
claude-ops/skills/ops-fires/SKILL.md
claude-ops/skills/ops-fleet/SKILL.md
claude-ops/skills/ops-go/SKILL.md
claude-ops/skills/ops-gtm/SKILL.md
claude-ops/skills/ops-home/SKILL.md
claude-ops/skills/ops-inbox/SKILL.md
claude-ops/skills/ops-integrate/SKILL.md
claude-ops/skills/ops-leadgen/SKILL.md
claude-ops/skills/ops-linear/SKILL.md
claude-ops/skills/ops-mac/SKILL.md
claude-ops/skills/ops-marketing/SKILL.md
claude-ops/skills/ops-mcp/SKILL.md
claude-ops/skills/ops-merge/SKILL.md
claude-ops/skills/ops-monitor/SKILL.md
claude-ops/skills/ops-next/SKILL.md
claude-ops/skills/ops-orchestrate/SKILL.md
claude-ops/skills/ops-package/SKILL.md
claude-ops/skills/ops-pocket/SKILL.md
claude-ops/skills/ops-projects/SKILL.md
claude-ops/skills/ops-recap/SKILL.md
claude-ops/skills/ops-release/SKILL.md
claude-ops/skills/ops-resume/SKILL.md
claude-ops/skills/ops-revenue/SKILL.md
claude-ops/skills/ops-rotate-setup/SKILL.md
claude-ops/skills/ops-rotate/SKILL.md
claude-ops/skills/ops-secret-sync/SKILL.md
claude-ops/skills/ops-settings/SKILL.md
claude-ops/skills/ops-ship/SKILL.md
claude-ops/skills/ops-speedup/SKILL.md
claude-ops/skills/ops-status/SKILL.md
claude-ops/skills/ops-triage/SKILL.md
claude-ops/skills/ops-unifi/SKILL.md
claude-ops/skills/ops-update/SKILL.md

Metadata

Files
0
Version
2dbf8cb
Hash
90cd96b2
Indexed
2026-08-12 09:00

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-12 23:16
浙ICP备14020137号-1 $Гость$