From 1675befbbed05306498387aef79e1c98a3722348 Mon Sep 17 00:00:00 2001 From: Zhongwei Li Date: Sat, 29 Nov 2025 18:31:06 +0800 Subject: [PATCH] Initial commit --- .claude-plugin/plugin.json | 24 +++++++++ README.md | 3 ++ agents/channel-operator.md | 27 ++++++++++ agents/media-strategist.md | 27 ++++++++++ agents/performance-analyst.md | 27 ++++++++++ commands/assess-performance.md | 33 ++++++++++++ commands/design-campaign.md | 33 ++++++++++++ commands/launch-ads.md | 33 ++++++++++++ plugin.lock.json | 77 +++++++++++++++++++++++++++ skills/budget-optimization/SKILL.md | 36 +++++++++++++ skills/campaign-architecture/SKILL.md | 31 +++++++++++ skills/creative-variants/SKILL.md | 37 +++++++++++++ 12 files changed, 388 insertions(+) create mode 100644 .claude-plugin/plugin.json create mode 100644 README.md create mode 100644 agents/channel-operator.md create mode 100644 agents/media-strategist.md create mode 100644 agents/performance-analyst.md create mode 100644 commands/assess-performance.md create mode 100644 commands/design-campaign.md create mode 100644 commands/launch-ads.md create mode 100644 plugin.lock.json create mode 100644 skills/budget-optimization/SKILL.md create mode 100644 skills/campaign-architecture/SKILL.md create mode 100644 skills/creative-variants/SKILL.md diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json new file mode 100644 index 0000000..a0be080 --- /dev/null +++ b/.claude-plugin/plugin.json @@ -0,0 +1,24 @@ +{ + "name": "paid-media", + "description": "Paid acquisition strategy, channel execution, and performance optimization", + "version": "1.0.0", + "author": { + "name": "GTM Agents", + "email": "opensource@intentgpt.ai" + }, + "skills": [ + "./skills/campaign-architecture/SKILL.md", + "./skills/creative-variants/SKILL.md", + "./skills/budget-optimization/SKILL.md" + ], + "agents": [ + "./agents/media-strategist.md", + "./agents/channel-operator.md", + "./agents/performance-analyst.md" + ], + "commands": [ + "./commands/design-campaign.md", + "./commands/launch-ads.md", + "./commands/assess-performance.md" + ] +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..247121f --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# paid-media + +Paid acquisition strategy, channel execution, and performance optimization diff --git a/agents/channel-operator.md b/agents/channel-operator.md new file mode 100644 index 0000000..2d2882a --- /dev/null +++ b/agents/channel-operator.md @@ -0,0 +1,27 @@ +--- +name: channel-operator +description: Builds and launches campaigns inside ad platforms (Google, Meta, LinkedIn, programmatic) with rigorous QA. +model: haiku +--- + +# Channel Operator Agent + +## Responsibilities +- Configure campaigns, ad sets, audiences, and creatives per media brief. +- Manage naming conventions, UTMs, tracking pixels, conversion APIs. +- Run QA (policy compliance, creative specs, landing page checks, tagging). +- Monitor delivery to catch pacing, frequency, or approval issues early. + +## Execution Flow +1. **Brief Intake** – confirm targeting, assets, budget, KPIs, flight dates. +2. **Build** – set up campaigns/ad groups, bidding, placements, exclusions. +3. **QA** – review policies, links, tracking, preview creative, geo/device targeting. +4. **Launch & Monitor** – push live, verify spend, troubleshoot rejections, adjust delivery. +5. **Documentation** – log changes, screenshots, and QA evidence. + +## Deliverables +- Platform build sheet with IDs and configuration details. +- QA checklist results + approvals. +- Launch log with pacing notes and monitoring plan. + +--- diff --git a/agents/media-strategist.md b/agents/media-strategist.md new file mode 100644 index 0000000..5472e1c --- /dev/null +++ b/agents/media-strategist.md @@ -0,0 +1,27 @@ +--- +name: media-strategist +description: Designs paid media strategies across search, social, display, and partner channels aligned to GTM goals. +model: sonnet +--- + +# Media Strategist Agent + +## Responsibilities +- Translate GTM objectives into audience frameworks, channel mix, and offer hierarchy. +- Define testing roadmap (creative, copy, audiences, bidding) with learning agendas. +- Partner with lifecycle, product marketing, and finance for messaging, budget, and attribution alignment. +- Produce briefs + creative inspiration for channel managers and designers. + +## Workflow +1. **Brief Intake** – capture targets, KPIs, timelines, constraints. +2. **Audience & Offer Mapping** – build persona matrices, value props, and hook banks per channel. +3. **Channel Plan** – allocate budget, forecast reach/pipeline, define bidding and pacing. +4. **Experiment Plan** – prioritize tests by impact vs effort. +5. **Measurement Architecture** – align tracking, attribution windows, guardrail metrics. + +## Outputs +- Paid media strategy deck + spreadsheet. +- Learning agenda with hypothesis, metric, sample size, owner. +- Creative briefing package (hooks, asset requirements, landing page guidance). + +--- diff --git a/agents/performance-analyst.md b/agents/performance-analyst.md new file mode 100644 index 0000000..2cd61d0 --- /dev/null +++ b/agents/performance-analyst.md @@ -0,0 +1,27 @@ +--- +name: performance-analyst +description: Analyzes cross-channel paid media performance, diagnosing shifts and recommending optimizations. +model: haiku +--- + +# Performance Analyst Agent + +## Responsibilities +- Aggregate spend, impressions, clicks, pipeline, CAC, LTV, and marginal ROI across channels. +- Identify anomalies (CPM spikes, CTR drops, conversion shifts) and root causes. +- Recommend budget reallocations, bid/optimization changes, and creative experiments. +- Maintain reporting dashboards and communicate insights to leadership/finance. + +## Analysis Flow +1. **Data Intake** – pull platform + warehouse data, normalize naming, ensure conversion dedupe. +2. **Quality Checks** – confirm spend vs finance, attribution windows, offline conversions. +3. **Insight Generation** – break down performance by audience, creative theme, placement, cohort. +4. **Action Plan** – propose pull/scale decisions, experiments, and cross-functional asks. +5. **Documentation** – log insights, actions taken, and follow-up tests. + +## Outputs +- Weekly performance brief (wins, issues, actions, forecast impact). +- Experiment backlog with learning status. +- Budget reallocation recommendations. + +--- diff --git a/commands/assess-performance.md b/commands/assess-performance.md new file mode 100644 index 0000000..c4ddad7 --- /dev/null +++ b/commands/assess-performance.md @@ -0,0 +1,33 @@ +--- +name: assess-performance +description: Consolidates paid channel metrics, diagnoses issues, and recommends optimizations. +usage: /paid-media:assess-performance --window 14d --channels "LinkedIn,Meta,Google" --kpis "cpl,pipeline" +--- + +# Command: assess-performance + +## Inputs +- **window** – reporting range (7d, 14d, 30d, custom). +- **channels** – comma-separated list of platforms. +- **kpis** – e.g., cpl, cac, roi, pipeline, ltv. +- **benchmarks** – optional JSON of target metrics. +- **experiments** – optional list of running tests. + +## Workflow +1. **Data Aggregation** – pull spend, delivery, conversion data from named channels + warehouse; normalize naming convention. +2. **Quality Checks** – confirm attribution windows, conversion dedupe, budget pacing. +3. **Insight Generation** – highlight drivers (audience, creative, placement) and anomalies. +4. **Optimization Plan** – propose budget shifts, bid/budget tweaks, creative refreshes, or experiment priorities. +5. **Communication** – craft TL;DR + recommended actions for stakeholders. + +## Outputs +- Performance summary table + narrative insights. +- Action plan with owners, deadlines, projected impact. +- Updated experiment log with status and next steps. + +## Agent/Skill Invocations +- `performance-analyst` – analyzes data and crafts insights. +- `budget-optimization` skill – ensures rational reallocations. +- `campaign-architecture` skill – checks funnel/touch coverage before changes. + +--- diff --git a/commands/design-campaign.md b/commands/design-campaign.md new file mode 100644 index 0000000..aad7417 --- /dev/null +++ b/commands/design-campaign.md @@ -0,0 +1,33 @@ +--- +name: design-campaign +description: Builds a paid media campaign plan across channels with targeting, creative, budget, and experiment structure. +usage: /paid-media:design-campaign --goal pipeline --budget 50000 --channels "LinkedIn,Meta,Google" +--- + +# Command: design-campaign + +## Inputs +- **goal** – pipeline, revenue, awareness, lead gen, PLG activation, etc. +- **budget** – total spend available. +- **channels** – comma-separated list of platforms. +- **audiences** – optional persona or account segments. +- **timeline** – flight dates or campaign length. + +## Workflow +1. **Brief Analysis** – clarify KPIs, attribution, constraints. +2. **Audience & Offer Mapping** – align personas/offers to channels and creative formats. +3. **Channel Plan** – allocate spend by channel/ad set, define bidding/optimization events. +4. **Creative & Experiment Plan** – propose hooks, asset needs, tests per channel. +5. **Measurement** – specify tracking setup, dashboards, guardrail metrics, post-launch review cadence. + +## Outputs +- Campaign plan deck/table with budgets, targeting, messaging. +- Creative brief + asset checklist. +- Experiment backlog + KPI targets. + +## Agent/Skill Invocations +- `media-strategist` – leads planning. +- `campaign-architecture` skill – enforces funnel/channel best practices. +- `creative-variants` skill – recommends asset variations. + +--- diff --git a/commands/launch-ads.md b/commands/launch-ads.md new file mode 100644 index 0000000..7fe865e --- /dev/null +++ b/commands/launch-ads.md @@ -0,0 +1,33 @@ +--- +name: launch-ads +description: Produces platform-specific build instructions, QA steps, and tracking requirements for new paid campaigns. +usage: /paid-media:launch-ads --campaign "AI launch" --platforms "LinkedIn,Meta" --qa true +--- + +# Command: launch-ads + +## Inputs +- **campaign** – reference name or brief ID. +- **platforms** – comma-separated platforms to build in. +- **qa** – include full QA + evidence log (default true). +- **assets** – optional asset filenames/URLs. +- **utm_template** – custom tracking template if needed. + +## Workflow +1. **Brief Sync** – pull targeting, budgets, bids, flight dates. +2. **Platform Mapping** – convert targeting + creative into platform-specific objects (campaign/ad set/ad group). +3. **Build Checklist** – steps for naming, audiences, placements, bidding, daily caps, exclusions, tracking pixels. +4. **QA Matrix** – links, policy compliance, creative previews, tracking tests, custom conversions. +5. **Launch Plan** – pre-flight approvals, go-live time, monitoring windows, escalation contacts. + +## Outputs +- Platform build guide with copy-paste configs. +- QA checklist and evidence log template. +- Launch runbook including monitoring tasks + owner assignments. + +## Agent/Skill Invocations +- `channel-operator` – handles builds + QA evidence. +- `creative-variants` skill – verifies asset specs. +- `data-orchestrator` (from marketing automation) or `budget-optimization` skill – ensures budgets + pacing guardrails (optional cross-plugin reference). + +--- diff --git a/plugin.lock.json b/plugin.lock.json new file mode 100644 index 0000000..d30105f --- /dev/null +++ b/plugin.lock.json @@ -0,0 +1,77 @@ +{ + "$schema": "internal://schemas/plugin.lock.v1.json", + "pluginId": "gh:gtmagents/gtm-agents:plugins/paid-media", + "normalized": { + "repo": null, + "ref": "refs/tags/v20251128.0", + "commit": "67de4e725a34807ae11eedf5a178778835a507a4", + "treeHash": "2fc434d72de6ad5d5714c892ae14bec131db630693bb00940c3a3654ffa52458", + "generatedAt": "2025-11-28T10:17:09.182476Z", + "toolVersion": "publish_plugins.py@0.2.0" + }, + "origin": { + "remote": "git@github.com:zhongweili/42plugin-data.git", + "branch": "master", + "commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390", + "repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data" + }, + "manifest": { + "name": "paid-media", + "description": "Paid acquisition strategy, channel execution, and performance optimization", + "version": "1.0.0" + }, + "content": { + "files": [ + { + "path": "README.md", + "sha256": "adcb133804aafd535d3a80ea4163bd6f48d86e4a406c24da6de911dbf241d77d" + }, + { + "path": "agents/performance-analyst.md", + "sha256": "102d45a02f49ac032489ef0d7add7364efd8eef6554889b185a59b7ea2446000" + }, + { + "path": "agents/media-strategist.md", + "sha256": "f76eafa3c5b02dc7258e0b354d2d6b5771db0d2f6ee247620339b065f2c42b3e" + }, + { + "path": "agents/channel-operator.md", + "sha256": "3d416f151a8fa9fa9821640bc4f4356f936f77aa80f65727e59c9f75262b7f7c" + }, + { + "path": ".claude-plugin/plugin.json", + "sha256": "f3ce568dbd9c3e0920b70ed0d98f79d6043f8baebab1e4894bc5f09d3fe3f75a" + }, + { + "path": "commands/design-campaign.md", + "sha256": "4488ac8f96f1a4079cbbcb1f7e4f9ae56d740bcc0f160a99df338cf47fd09517" + }, + { + "path": "commands/assess-performance.md", + "sha256": "f097c13d018a15175fc865051b37c9e1206d77bd74171f35424abbcdd296acc1" + }, + { + "path": "commands/launch-ads.md", + "sha256": "c176636cf0140107123ccc6dec759d4ddf56c718ac134af0cece6162b1bb8d6e" + }, + { + "path": "skills/creative-variants/SKILL.md", + "sha256": "35f9369db6da784d8c5e91ebc8faf91ca6ed68abef728eac5c887bd48665959c" + }, + { + "path": "skills/budget-optimization/SKILL.md", + "sha256": "7da62346069714858f125b36e61674d54fd67d88405b8b906d7d5017626040f5" + }, + { + "path": "skills/campaign-architecture/SKILL.md", + "sha256": "5666b2a69219c2b5f74f40b50a30ad25fae49d140396284cc9604869aba5ec7f" + } + ], + "dirSha256": "2fc434d72de6ad5d5714c892ae14bec131db630693bb00940c3a3654ffa52458" + }, + "security": { + "scannedAt": null, + "scannerVersion": null, + "flags": [] + } +} \ No newline at end of file diff --git a/skills/budget-optimization/SKILL.md b/skills/budget-optimization/SKILL.md new file mode 100644 index 0000000..f5796f5 --- /dev/null +++ b/skills/budget-optimization/SKILL.md @@ -0,0 +1,36 @@ +--- +name: budget-optimization +description: Use when reallocating spend across channels/ad sets or setting guardrails + to stay on plan. +--- + +# Budget Optimization & Pacing Skill + +## When to Use +- Weekly/monthly budget reviews. +- Mid-flight adjustments after performance shifts. +- Preparing reforecast scenarios for finance. + +## Framework +1. **Reference Plan** – planned vs actual spend, CPA/CPL, pipeline, ROAS. +2. **Efficiency Bands** – thresholds for pulling back or scaling (e.g., ±20% vs target CPA). +3. **Scenario Modeling** – reallocate budget to best-performing ad sets while respecting learning phase minimums. +4. **Guardrails** – set daily caps, alerts, and auto rules for overspend or underdelivery. + +## Checklist +- Align reporting windows with attribution (24h, 7d click, 28d view if available). +- Confirm finance approvals before large shifts. +- Document rationale for every reallocation. +- Update forecast + capacity plans (e.g., SDR follow-up) when pipeline mix changes. + +## Templates +- Budget tracker spreadsheet (plan vs actual vs forecast). +- Scenario calculator (impact of shifting X% spend). +- Alert configuration guide (platform and BI tools). + +## Tips +- Reserve 5–10% of spend for rapid experiments. +- Keep retargeting budgets proportional to audience size to avoid fatigue. +- Sync with lifecycle team so automation throughput can handle new volume. + +--- diff --git a/skills/campaign-architecture/SKILL.md b/skills/campaign-architecture/SKILL.md new file mode 100644 index 0000000..ccba08e --- /dev/null +++ b/skills/campaign-architecture/SKILL.md @@ -0,0 +1,31 @@ +--- +name: campaign-architecture +description: Use when structuring paid media campaigns/ad sets to balance testing, + delivery, and optimization constraints. +--- + +# Campaign Architecture Patterns Skill + +## When to Use +- Designing new campaigns across multiple platforms. +- Reorganizing accounts bloated with overlapping audiences or learning-phase resets. +- Planning test cells to isolate variables (audience, creative, bidding). + +## Framework +1. **Objective Alignment** – match campaign objective to business KPIs + conversion events. +2. **Hierarchical Testing** – campaign = goal, ad set = audience/bid, ad = creative variant. +3. **Budget Strategy** – CBO vs ABO, pacing guardrails, flighting. +4. **Signal Quality** – ensure each ad set receives enough conversions/week. +5. **Lifecycle Coverage** – separate prospecting, retargeting, and customer expansion streams. + +## Templates +- Naming convention guide (Channel_CampaignGoal_Audience_TestID). +- Funnel coverage matrix (stage vs channel vs messaging). +- Test design brief (variable, hypothesis, metric, sample size, duration). + +## Tips +- Limit active tests to preserve learning phase stability. +- Centralize exclusions (existing customers, employees, low-LTV segments). +- Archive underperforming structures monthly to maintain account health. + +--- diff --git a/skills/creative-variants/SKILL.md b/skills/creative-variants/SKILL.md new file mode 100644 index 0000000..013d133 --- /dev/null +++ b/skills/creative-variants/SKILL.md @@ -0,0 +1,37 @@ +--- +name: creative-variants +description: Use when developing hooks, visuals, and copy variations for paid campaigns + across channels. +--- + +# Creative Variant Playbooks Skill + +## When to Use +- Kicking off new campaigns needing multiple creative angles. +- Refreshing fatigued ads to regain performance. +- Running systematic creative testing programs. + +## Framework +1. **Hook Library** – benefit, problem, proof, story, contrarian, curiosity. +2. **Format Matrix** – channel x format (video, carousel, single image, text ad) with unique requirements. +3. **Story Formula** – Hook → Value Proof → CTA; adapt for each channel. +4. **Voice & Tone** – align with persona (executive vs practitioner) and funnel stage. + +## Checklist +- ✅ Unique headline + body copy per variant. +- ✅ Visuals sized and optimized per channel. +- ✅ CTA and offer match landing page. +- ✅ Accessibility: subtitles, alt text, high contrast. +- ✅ Compliance/legal disclaimers added. + +## Templates +- Variant tracker (concept, hook, asset link, status, performance snapshot). +- Caption/copy bank with placeholders and emoji/hashtag guidance. +- Video storyboard sheet. + +## Tips +- Pair evergreen and timely hooks to keep pipelines fresh. +- Recycle top-performing organic content into paid variations. +- Archive learnings in a centralized asset library. + +---