Loading...
Loading...
Use this skill when an AI agent needs to manage, audit, report on, create, pause, update, or troubleshoot Meta/Facebook/Instagram ads through Meta's official Ads CLI (`meta ads ...`). It is designed for any shell-capable agent, not just OpenClaw. It focuses on safe command planning, JSON output, confirmation gates, read-before-write behaviour, paused-by-default launches, reporting workflows, datasets/pixels, catalog/product operations, and failure handling.
npx skill4agent add tristanmanchester/agent-skills meta-ads-climeta ads <resource> <action> [options]meta ads campaign list
meta ads campaign create --name "Summer Sale" --objective OUTCOME_SALES --daily-budget 5000
meta ads adset create CAMPAIGN_ID --name "My Ad Set" --optimization-goal LINK_CLICKS --billing-event IMPRESSIONS --targeting-countries US
meta ads creative create --name "Hero Banner" --page-id 111222333 --image ./banner.jpg --body "50% off" --title "Shop Now" --link-url https://example.com/sale --call-to-action SHOP_NOW
meta ads ad create ADSET_ID --name "Hero Banner Ad" --creative-id CREATIVE_ID
meta ads insights get --campaign_id CAMPAIGN_ID --fields impressions,conversions,spend --date-preset last_7dpython3 scripts/meta_ads_agent.py doctor
python3 scripts/meta_ads_agent.py classify -- meta ads campaign list
python3 scripts/meta_ads_agent.py run -- meta ads campaign list --limit 25PAUSEDACTIVEactivatedeleteremove--forcemeta --output json ads ....env1. Classify request: read-only, ordinary write, budget/write, activation, destructive, regulated.
2. Run doctor/auth check if account access is uncertain.
3. Read current state with compact JSON output.
4. Produce a short plan with exact commands, risks, assumptions, and verification commands.
5. For read-only tasks: run commands and summarise.
6. For writes: wait for explicit approval, then run through scripts/meta_ads_agent.py.
7. Verify state after every write.
8. Report what changed, object IDs, before/after values, and any unresolved issues.# Meta docs list meta-ads as the package name.
python3.12 -m pip install meta-ads
# Confirm the CLI is available.
meta --help
meta ads --help
# Auth status. Meta docs show ACCESS_TOKEN for token-based auth.
export ACCESS_TOKEN=<ACCESS_TOKEN>
meta auth status
# Prefer an explicit ad account for every command until a default is proven.
meta ads --ad-account-id <AD_ACCOUNT_ID> campaign listmeta auth status
meta ads --help
meta ads <resource> --helppython3 scripts/meta_ads_agent.py doctorpython3 scripts/meta_ads_agent.py classify -- meta ads campaign update 123 --status ACTIVEpython3 scripts/meta_ads_agent.py run -- meta ads campaign list --limit 25python3 scripts/meta_ads_agent.py run \
--approved "User approved creating the paused campaign named Summer Sale in account act_123" \
-- meta ads campaign create --name "Summer Sale" --objective OUTCOME_SALES --daily-budget 5000python3 scripts/meta_ads_agent.py run \
--approved "User approved activating campaign 123 after reviewing it" \
--allow-active \
-- meta ads campaign update 123 --status ACTIVEpython3 scripts/meta_ads_agent.py lint-plan templates/weekly-report-plan.json
python3 scripts/meta_ads_agent.py run-plan templates/weekly-report-plan.json--approved ...| User intent | First action | Main workflow |
|---|---|---|
| “Show performance” | Read-only | |
| “What should I pause?” | Read insights, then propose | |
| “Pause this ad/campaign” | Read object + metrics | |
| “Increase budget” | Read currency, current budget, delivery | |
| “Launch campaign” | Build paused launch plan | |
| “Create catalogue/product set” | Check account/catalog context | |
| “Check pixel” | Dataset and insights audit | |
| “Use another endpoint” | Verify official CLI coverage first | |
- what was queried
- date range and attribution assumptions
- top findings with numbers
- caveats about missing/zero/odd metrics
- recommended next actions separated from actual changes- object IDs touched
- before/after values
- command(s) run, redacted where needed
- verification result
- anything still paused/not live
- any follow-up the user must perform in Ads Managerreferences/CRITICAL-ANALYSIS-v1.mdreferences/OFFICIAL-ADS-CLI.mdreferences/AGENT-OPERATING-MODEL.mdreferences/SAFETY.mdreferences/WORKFLOWS.mdreferences/REPORTING.mdreferences/COMMANDS.mdreferences/OPTIMISATION-DECISIONING.mdresources/command-catalog.jsonresources/risk-rules.jsonagent-prompts/AGENTS.mdreferences/TROUBLESHOOTING.mdreferences/PORTABILITY.mdtemplates/scripts/meta_ads_agent.pyevals/