Skip to Content
SkillsAd Campaigns

Ad Campaigns

Category: Marketing · Difficulty: High · Tags: campaigns · ads · metrics · anomalies

What it does

Launch paid ad campaigns from a prepared marketing plan, monitor daily metrics, detect anomalies, and apply gated remediations. Two-phase design:

  • Phase A — Build & Launch: validate prerequisites → pick channels → get budget approval → build creatives → build audiences → launch → verify.
  • Phase B — Monitor & Iterate: pull daily metrics → detect anomalies → recommend actions → apply remediations (with approval gates) → weekly synthesis.

The agent switches phases automatically based on whether a launched sheet already exists in the workbook.

Steps

#StepWhat happens
1Validate prerequisitesConfirms marketing-plan exists, positioning is locked, budget is set, creative brief is ready.
2Select + budget channelsRanks channels (Google, Meta, LinkedIn, TikTok) against ICP + budget.
3Get budget approvalPosts approval request to the user/boss node before spending.
4Build ad creativesDrafts copy variants, sources images, writes headlines + CTAs.
5Build target audiencesDefines look-alike / interest / retargeting audiences per channel.
6Launch campaignsSubmits campaigns via platform dashboards (Firefox inside the agent’s desktop VM).
7Verify launch + handoffConfirms campaigns are live, tracking URLs fire, no setup errors.
8Pull daily metricsScrapes platform dashboards daily — CTR, CPC, CPA, ROAS, impressions, spend pace.
9Detect anomaliesFlags pacing off >20%, CPA 1.5× target, CTR decay, creative fatigue, audience exhaustion.
10Recommend actionsProposes pauses, budget shifts, creative rotations, audience refreshes.
11Apply remediationsExecutes approved actions on the platforms.
12Weekly synthesis + reflectionRolls up the week, logs learnings, proposes next week’s plan.

Guardrails built in

  • Real-money guardrail — every spend decision above the node’s starting-context threshold triggers request_approval. The skill blocks until approved.
  • Positioning lock — if an anomaly suggests positioning is broken (e.g. CTR below 0.5% across all audiences), the skill routes the failure back upstream to market-company instead of throwing more money at broken creatives.
  • Never source metrics from training data — all dashboards are scraped live via Firefox.

How to invoke from Claude Desktop

do("Launch this week's paid campaigns from our marketing-plan. Target budget $10k/wk split Google + LinkedIn. Monitor daily and flag anything over 1.5x our $85 CPA target.")

Or conversationally:

“Kick off the ad-campaigns skill for this week. Prioritize LinkedIn.”

Artifacts produced

  • ad-campaigns.xlsx — workbook with planned, launched, metrics, anomalies, actions sheets.
  • Screenshots of each platform’s launch confirmation in screenshots/ad-campaigns/.
  • Daily metric snapshots attached to the node’s activity timeline.
  • Weekly synthesis reports with recommended next-week actions.

Full source

The authoritative workbook lives at cto-gui-libvirt-backend/app/services/agent_skills/ad-campaigns.md in the OpenFactory monorepo — the agent loads this directly into context when you invoke the skill.

Last updated on