agentsclimarketplace

Ad copy

Skill cgallic/kai-cmo-harness/legacy/ad-copy

Open-source AI CMO for Claude Code: marketing agent skills for SEO, content, email, ads, launches, CRO, AEO/GEO, and AI-search visibility.

Install
npx -y skills add cgallic/kai-cmo-harness --skill ad-copy

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Write platform-compliant ad copy for Meta, Google, TikTok, LinkedIn, Pinterest, Snapchat, Amazon, or X. Loads TOS rules automatically. Shows char counts and format preview.

SKILL.md

4.2 KB, as published. Nobody here has run it

/ad-copy — The Ad Manager

Write ad copy that's compliant with platform TOS from day one. Loads the full policy reference for the target platform (500-1000 lines of rules), generates copy within constraints, and shows a format preview with character counts.

Arguments

Required:

  • platform: meta | google | tiktok | linkedin | pinterest | snapchat | amazon | x
  • site: Site key (e.g., kaicalls)
  • offer: The offer or message in quotes

Example: /ad-copy meta kaicalls "Free 14-day trial — AI receptionist for law firms"

The Skill

Step 1: Load Platform Policy

Read the platform's TOS reference from the knowledge base:

PlatformPolicy File
metaharness/references/meta-ads-rules.md
googleharness/references/google-ads-policy-reference.md
tiktokharness/references/tiktok-ads-policy-reference.md
linkedinharness/references/linkedin-ads-rules.md
pinterestharness/references/pinterest-ads-rules.md
snapchatharness/references/snapchat-ads-policy-reference.md
amazonharness/references/amazon-ads-policy-reference.md
xharness/references/x-ads-policy-reference.md

Also load harness/references/advertising-compliance.md for cross-platform FTC/GDPR/CAN-SPAM rules.

Step 2: Load Site Context

Read site proof points and persona from the brief (if exists in ~/.kai-marketing/briefs/) or from config.

Step 3: Generate Ad Copy

Write ad copy variants following platform-specific constraints. Generate 3 variants per ad format:

Meta/Instagram:

  • Primary text (125 chars recommended, 2200 max)
  • Headline (40 chars max)
  • Description (30 chars max)
  • CTA button text

Google Ads:

  • Headlines (30 chars each, 3 required)
  • Descriptions (90 chars each, 2 required)
  • Display URL path

TikTok:

  • Ad text (100 chars recommended)
  • CTA text
  • Note: AI content disclosure required per TOS

LinkedIn:

  • Introductory text (150 chars recommended)
  • Headline (70 chars max)
  • Description (100 chars max)

Step 4: Platform Format Preview

Show each variant with character counts and truncation warnings:

AD COPY — Meta/Instagram
══════════════════════════════════════

VARIANT 1:
┌─────────────────────────────────────┐
│ Primary:    Stop losing calls to    │ 118/125 chars
│             voicemail. AI answers   │
│             in 0.4 seconds.         │
│                                     │
│ Headline:   Never Miss a Client    │ 21/40 chars
│ Desc:       Free 14-day trial      │ 19/30 chars
│ CTA:        [Start Free Trial]     │
└─────────────────────────────────────┘

VARIANT 2:
...

COMPLIANCE CHECK:
  [PASS] No prohibited claims
  [PASS] No before/after imagery references
  [PASS] No personal attributes addressed
  [PASS] FTC disclosure not required (no endorsement)
  [WARN] If targeting housing/employment/credit, enable Special Ad Category

Step 5: Compliance Gate

Check each variant against the platform's restricted content categories:

  • Prohibited content (hard block)
  • Restricted content (may need approval/certs)
  • Special categories (housing, employment, credit, political)
  • Required disclosures (AI content, endorsements, financial)

If any variant has compliance issues, flag them with specific TOS section references.

Step 6: Run Quality Gate

Run the standard quality gate with a lower threshold (10/16 Four U's for ads):

kai-gate score {draft_path} --format json

Error Handling

  • Unknown platform: List valid platforms
  • Policy file missing: Warn and generate without TOS constraints (clearly flagged)
  • Character overflow: Show which fields exceed limits with truncation suggestions

Chain State

Optional reads: ~/.kai-marketing/briefs/ (for site context) Standalone: Does not require prior chain steps

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.