Skip to main content
Meta Ads Kit orchestrates a closed-loop workflow that replaces your entire daily ad management routine. From monitoring performance to detecting fatigue to generating fresh copy to uploading new ads — all without opening Ads Manager.
The system is read-only by default. All reporting runs automatically. Any action that affects spend (pause/resume/budget changes/ad uploads) requires your explicit approval.

The Full Loop

Here’s how the five skills chain together:
No Ads Manager required at any step.

Morning Briefing (Automated)

This is the daily routine that replaces 20 minutes of Ads Manager clicking.

How It Works

Scheduled: Every morning at 8am (configurable) What happens:
  1. Cron triggers daily check at configured time
  2. Agent pulls insights via the meta-ads skill
  3. Analyzes performance:
    • Spend pacing (on track? over/under?)
    • Active campaigns (anything that shouldn’t be running?)
    • 7-day trends (improving or declining?)
  4. Identifies issues:
    • Bleeders 🩸 — CTR < 1% or frequency > 3.5 + high spend
    • Winners 🏆 — Top CTR, low CPC, scaling headroom
    • Fatigue signals 😴 — CTR dropping day-over-day
  5. Generates summary with recommendations
  6. Delivers to you via Telegram/Slack/configured channel
  7. Waits for approval on any actions

Example Briefing

You (2 minutes over coffee):

  1. Read the summary
  2. Reply: “Approve 1, 2, and 3. Hold on 4 for now.”
  3. Done.
The agent executes approved actions and logs them.

Setting Up Automated Briefings

Via OpenClaw

The agent sets up the cron job automatically.

Via Cron (Manual)

Add to your crontab:
Or pipe to Slack/Telegram:

On-Demand Workflow (Interactive)

You can also run the workflow interactively throughout the day.

1. Monitoring

You ask:
Agent does:
  1. Runs appropriate report via meta-ads skill
  2. Pulls data via social-cli
  3. Interprets results in context of benchmarks from ad-config.json
  4. Presents findings with actionable recommendations

2. Budget Optimization

You ask:
Agent does:
  1. Runs efficiency analysis via budget-optimizer skill
  2. Ranks campaigns/adsets by CPA, ROAS, or CPC
  3. Identifies top and bottom performers
  4. Calculates recommended budget shifts
  5. Presents recommendations with reasoning
  6. Waits for approval before adjusting any budgets
Example:
You: “Approve” Agent: Adjusts budgets, logs the change.

3. Creative Refresh (When Fatigue Hits)

You ask:
Agent does:
  1. Analyzes current ad (via meta-ads)
    • Pulls creative details from Graph API
    • Confirms fatigue signal (CTR decline, frequency spike)
  2. Generates fresh copy (via ad-copy-generator)
    • Analyzes the image creative
    • Pulls account’s top-performing copy patterns from last 30 days
    • Writes 3-5 new headline + body variants
    • Outputs asset_feed_spec JSON ready for upload
  3. Shows you the copy
    • Presents variants with psychology labels (Money, Status, Fear, Time)
    • Explains how copy reinforces the image
  4. Waits for approval
You: “Looks good. Upload it.” Agent does:
  1. Uploads to Meta (via ad-upload)
    • Creates new creative with fresh copy
    • Attaches to existing ad ID (preserves metric history)
    • Sets status to PAUSED for final review
  2. Confirms completion
    • Returns ad ID and Ads Manager review URL
Example output:
You: Review in Ads Manager, activate when satisfied.

4. Launching New Ads

You ask:
Agent does:
  1. Analyzes the image (via ad-copy-generator)
    • Identifies format (notes app, receipt, tweet, chart, etc.)
    • Extracts on-image text
    • Determines psychology and funnel stage
  2. Pulls winning patterns from your account
  3. Writes matched copy (3-5 headlines, 3-5 bodies)
  4. Outputs asset_feed_spec JSON
You: “Upload it to ad set 23847000000001” Agent does:
  1. Uploads (via ad-upload)
    • Validates copy + image
    • Uploads image → gets hash
    • Creates creative
    • Creates ad in specified ad set (PAUSED)
  2. Returns ad ID
You: Review and activate.

Approval Gates

The system has two operational modes:

Read-Only (No Approval Needed)

These actions run automatically:
  • Running reports and insights
  • Analyzing data
  • Generating recommendations
  • Logging learnings
  • Pulling account performance data

Write Actions (Approval Required)

These actions always ask first:
  • Pausing any ad, adset, or campaign
  • Resuming any ad, adset, or campaign
  • Changing any budget
  • Uploading new ads or creatives
  • Updating existing ad copy
The agent will:
  1. Present the action with full context
  2. Show the data justification
  3. Explain the expected outcome
  4. Ask: “Proceed?”
  5. Wait for explicit “yes” / “approve” / confirmation
  6. Execute on approval
  7. Log the action with timestamp and reasoning
Example:
You: “Yes” or “No” or “Not yet, let it run another day” If “Yes”, agent pauses the ad and logs:

Memory & Learning

The system builds institutional knowledge over time.

What Gets Logged

Every day, the agent logs to memory/YYYY-MM-DD.md:
  • Reports run and key findings
  • Actions taken (paused/resumed/budget changes/uploads)
  • Performance trends noted
  • Recommendations made and outcomes

What Gets Learned

Findings append to workspace/brand/learnings.md:
  • Creative fatigue patterns (how long do your creatives last?)
  • Winning copy traits (what hooks convert?)
  • Audience performance (which demos respond best?)
  • Budget efficiency (which campaigns deliver best ROI?)
Example learnings.md:

Using Learnings

The agent references learnings.md when:
  • Generating new copy (“Your top performers use question headlines — I’ll match that”)
  • Detecting fatigue (“Notes app creatives typically last 14 days. This one is on day 12.”)
  • Recommending budget shifts (“Retargeting has delivered 40% lower CPA historically — good scaling candidate”)
Over time, recommendations get smarter and more brand-specific.

Example: Full Day in the Loop

8:00am — Morning Briefing Arrives

Your phone buzzes. Telegram message from Meta Ads Copilot:
You’re at the coffee shop. You reply: “Approve 1 and 2. Hold on 3.”

8:02am — Agent Executes

  1. Pauses Ad #23847120
  2. Starts creative refresh workflow for Ad #23847111:
    • Analyzes the image
    • Pulls top-performing copy from your account
    • Generates 3 new headline + body variants
    • Sends you the copy for review

8:05am — Copy Review

You get another message:
You click the link, scan the copy. Looks good. You reply: “Upload it.”

8:07am — Upload Complete

You make a note to review in Ads Manager later.

11:30am — On-Demand Check

Between meetings, you wonder how the morning changes are performing. You message: “How’s Ad #23847111 doing with the new copy?” Agent:
You: “Activate it.” Agent:

5:00pm — End of Day

You message: “Daily summary?” Agent:
You’re done. Total time spent managing ads today: ~5 minutes.

Customizing the Workflow

Adjust Benchmarks

Edit ad-config.json to change what triggers alerts:

Change Briefing Time

Tell the agent:
Or edit cron directly.

Adjust Approval Requirements

By default, all write actions require approval. If you want the agent to auto-execute certain actions:
The agent updates its rules and logs the policy change.
Use auto-execution carefully. Start with full approval mode until you trust the system’s judgment.

What You Never Touch

With this workflow fully operational:
  • Ads Manager — Only for final creative review before activating new ads
  • Manual reporting — All insights delivered automatically
  • Budget micromanagement — Agent recommends, you approve in seconds
  • Creative performance tracking — Fatigue detected before you’d notice manually
  • Copy generation — AI writes matched to your image creatives and account data
  • Uploading ads — Push straight to Meta via API
Your job becomes strategic decision-making, not tactical clicking.

Next Steps

Daily Questions

Deep dive on the 5 questions that power the briefing

Skills Overview

Learn what each skill does and when to use it

Setup Guide

Get your ad account connected and run your first briefing

Configuration

Customize benchmarks, thresholds, and automation rules