meta-ad-builder
Publish finished creatives as live Meta (Facebook/Instagram) ads via the Meta Marketing API, plus research and ad-copy support.
Skill by harperaa
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/harperaa-meta-ad-builder
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, devops, writing, marketing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/meta-ad-builder
What's inside
- Skill name
meta-ad-builder- Description
- Publish finished creatives as live Meta (Facebook/Instagram) ads via the Meta Marketing API, plus research and ad-copy support. Uploads an image or video, builds a multi-variant TEXT_LIQUIDITY creative, and creates a PAUSED ad in an existing ad set. Also pulls top-performing ads (ranked by ROAS) and competitor ads from the Ad Library to inform copy. Use when the user asks to deploy / publish / launch a creative as a Meta or Facebook ad, build a Meta ad, push a video or image into an ad set, pull their top ads, or research competitor ads. Not for generating creative (use the image/video skills) and not for writing AdTable/Airtable rows (use adtable-light).
- License
- MIT
- Instructions
- 133 lines in SKILL.md · view on GitHub
Files (4)
- SKILL.md
- copy-guide.md · prompting/
- deploy-patterns.md · reference/
- meta-api-cheatsheet.md · reference/
SKILL.md (first lines)
# Meta ad builder Turn a finished creative — typically the output of a generative-AI skill in this workspace — into a live Meta ad. The skill covers three phases: **research** (optional) → **copy** → **deploy**. It talks to the Meta Marketing API directly via ported, parameterized Python scripts. ## When to use this skill Trigger on phrases like: - "deploy this video to Meta" / "publish this as a Facebook ad" - "build/launch a Meta ad" / "push this creative into <ad set>" - "create a Meta ad with this image and copy" - "pull my top-performing ads" / "what are my best ads by ROAS" - "research competitor ads" / "pull <brand>'s ads from the Ad Library" Do **not** use this skill to *generate* creative — that's `pixar-style-ad`, `claymation-ad`, `generate-youtube-thumbnail`, `uni1-image-ad`, etc. Do not use it to write AdTable/Airtable rows — that's `adtable-light`. This skill is the *direct Meta Marketing API* deployment step. ## Read order 1. **This file** — workflow, decision tree, safety rules. 2. **[prompting/copy-guide.md](prompting/copy-guide.md)** — the 5-body / 5-title / 3-description frameworks and the `--copy-file` JSON shape. 3. **[reference/deploy-patterns.md](reference/deploy-patterns.md)** — creative spec mechanics, video polling, retry, failure modes. 4. **[reference/meta-api-cheatsheet.md](reference/meta-api-cheatsheet.md)** — the full Meta Marketing API reference (campaigns, ad sets, ads, enums, gotchas, Ad Library). Consult as needed; don't read end-to-end. ## Prerequisites - **Env** (in `.env` — see your repo's `.env.example`): - `META_ACCESS_TOKEN` (required) — long-lived token with `ads_management` scope - `META_AD_ACCOUNT_ID` (required) — with or without the `act_` prefix - `META_PAGE_ID`, `META_IG_USER_ID`, `META_PIXEL_ID` (optional defaults for deploy) - `META_API_VERSION` (optional, default `v23.0`) - **Python deps:** `python3 -m pip install -r scripts/requirements.txt` - **A target ad set** that already exists. The skill deploys ads into an existing ad set — it does not create campaigns or ad sets. If the user needs a new ad set, create it in Ads Manager or via the cheatsheet §3–§4 first. - **The finished creative on disk** — an image or video file path. Chat-pasted files are not accessible; ask the user for a real path. Run `bash scripts/check-meta-env.sh` to verify credentials before anything else. ## Workflow ### Phase 1 — Research (optional, when copy should model winners) ```bash # Rank the account's ads and pull the winning copy python scripts/pull-top-ads.py --date-preset last_30d --min-spend 100 --limit 15 # Pull a competitor's ads from the Ad Library python scripts/pull-competitor-ads.py --pages "BrandName" --limit 50 ``` Both write JSON under `OUTPUT_BASE` (or `./outputs/meta-ads/`). Read the top-ad `copy` fields to identify winning hook/proof/CTA patterns before writing new copy. ### Phase 2 — Copy Write a `copy.json` following **[copy-guide.md](prompting/copy-guide.md)**: 5 bodies (one per framework angle), 5 titles, 3 descriptions. If Phase 1 ran, mirror the voice and patterns of the winners — new creative + proven copy DNA. Save `copy.json` somewhere under `outputs/` so it isn't committed. ### Phase 3 — Deploy **Always dry-run first** — it prints the full creative payload, makes no API calls: ```bash python scripts/deploy-ad.py --dry-run \ --adset-id <AD_SET_ID> --copy-file copy.json --link <DESTINATION_URL> \ --image path/to/creative.png ``` Review the payload with the user, then deploy for real: ```bash python scripts/deploy-ad.py \ --adset-id <AD_SET_ID> --copy-file copy.json --link <DESTINATION_URL> \ --video clip-a.mp4 --video clip-b.mp4 --cta SIGN_UP --pixel-id <PIXEL_ID> ``` - `--image` / `--video` are repeatable — each becomes its own ad in the ad set. - Every ad is created **PAUSED**. Tell the user to review and un-pause in Meta Ads Manager. The skill never launches a spending ad automatically. - Results (ad IDs) are written to `deployment_results.json` under `OUTPUT_BASE`. ## Decision tree | User intent | Phases | |---|---| | "Deploy this creative to Meta" + copy provided | Phase 3 only | | "Build a Meta ad, write the copy too" | Phase 2 → 3 | | "Make ads modeled on my winners" | Phase 1 → 2 → 3 | | "What are my best ads / competitor research" | Phase 1 only | ## Safety rules - **Ads deploy PAUSED.** Never add an `--active` override or un-pause ads without an explicit user instruction. Confirm the user knows the ads are paused. - **Dry-run before every real deploy.** Show the payload; get a go-ahead. - **Confirm the target ad set and destination URL** with the user before deploying — an ad in the wrong ad set spends against the wrong budget. - **Deploying ads is a shared-state, money-adjacent action.** Treat the live `deploy-ad.py` run as something to confirm, not assume. - The skill creates ads only — it does **not** create or edit campaigns, ad sets, budgets, or audiences. Those stay manual. ## Quirks and pitfalls - **Video processing is async.** `deploy-ad.py` polls the uploaded video until Meta finishes processing before creating the ad — a video deploy can take a few minutes. See [deploy-patterns.md](reference/deploy-patterns.md).
From harperaa/hermes-plugin-short-form, MIT.
More from harperaa/hermes-plugin-short-form
- 0.524score
kie-external-api
harperaa
Creates and retrieves AI video and image assets via the KIE.ai API (Veo 3.1, Sora 2, Nano Banana 2, Kling, Seedance, and other models in the KIE marketplace).
SkillBFreshness: BClaude Code +9 - 0.520score
nano-banana-image-ad
harperaa
Generate one or more standalone Meta image-ad creatives via Nano Banana 2 / Nano Banana Pro (Gemini Flash Image family) through the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.520score
generate-youtube-thumbnail
harperaa
Generate high-CTR YouTube thumbnails using Nano Banana 2 via the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.520score
chatgpt-image-ad
harperaa
Generate one or more standalone Meta image-ad creatives via ChatGPT Image 2 (gpt-image-2) through the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.515score
remotion-best-practices
harperaa
Router for all Remotion skills
SkillBFreshness: BClaude Code +9 - 0.512score
remotion-create
harperaa
Create a new Remotion video
SkillBFreshness: BClaude Code +9 - 0.512score
remotion-render
harperaa
Export a Remotion video
SkillBFreshness: BClaude Code +9 - 0.512score
remotion-studio
harperaa
Preview a Remotion video
SkillBFreshness: BClaude Code +9 - 0.507score
remotion-multimedia
harperaa
Interacting with Mediabunny
SkillBFreshness: BClaude Code +9 - 0.499score
image-ad-clone
harperaa
Use when the user wants to reverse-engineer an existing image ad into a reusable prompt template.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 7, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from harperaa
- 0.524score
kie-external-api
harperaa
Creates and retrieves AI video and image assets via the KIE.ai API (Veo 3.1, Sora 2, Nano Banana 2, Kling, Seedance, and other models in the KIE marketplace).
SkillBFreshness: BClaude Code +9 - 0.520score
chatgpt-image-ad
harperaa
Generate one or more standalone Meta image-ad creatives via ChatGPT Image 2 (gpt-image-2) through the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.520score
generate-youtube-thumbnail
harperaa
Generate high-CTR YouTube thumbnails using Nano Banana 2 via the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.520score
nano-banana-image-ad
harperaa
Generate one or more standalone Meta image-ad creatives via Nano Banana 2 / Nano Banana Pro (Gemini Flash Image family) through the KIE.ai API.
SkillBFreshness: BClaude Code +9 - 0.515score
remotion-best-practices
harperaa
Router for all Remotion skills
SkillBFreshness: BClaude Code +9 - 0.512score
remotion-create
harperaa
Create a new Remotion video
SkillBFreshness: BClaude Code +9
Cite this page
meta-ad-builder skill. Agent Mart. https://agentmart.dev/skills/harperaa-meta-ad-builder (last updated 2026-10-24)