Install
$ agentstack add skill-cgallic-kai-cmo-harness-ad-render ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
/ad-render — The Video Producer
Turn a creative brief into rendered video ads. Uses Remotion to generate MP4 files in all major ad formats (vertical, square, landscape).
Chains naturally from /creative-brief → /ad-copy → /ad-render.
Prerequisites
- Node.js (v18+) — required for Remotion
- Brand config — run
kai-config set brand.name "YourBrand"and set colors
Arguments
Required:
- archetype: problem-agitation | social-proof | product-demo | lifestyle
Optional:
- --format: vertical | square | landscape | all (default: all)
- --copy: JSON string or file path with ad copy fields (hook, problem, solution, cta)
Example: /ad-render problem-agitation Example: /ad-render social-proof --format vertical
The Skill
Step 1: Load Brand Tokens
Read brand configuration:
kai-config get brand.name
kai-config get brand.colors.primary
If brand is not configured, prompt user: "Set your brand first: kai-config set brand.name 'YourBrand' and kai-config set brand.colors.primary '#yourcolor'"
Step 2: Check for Ad Copy
Look for the most recent creative brief or ad copy in ~/.kai-marketing/briefs/. If ad copy fields are provided via --copy, use those. If neither exists, prompt user to run /ad-copy or /creative-brief first.
Extract from the copy:
- hook: The attention-grabbing first line
- problem: The pain point being addressed
- benefit: What the product solves
- stat: A proof point (number, percentage, result)
- cta: The call to action text
Step 3: Scaffold Remotion Project
Run:
kai-render scaffold --archetype {archetype} --format {format}
This creates a Remotion project at ~/.kai-marketing/renders/{date}/ with:
src/config/brand.ts— Brand colors, fonts, assets from configsrc/config/scenes.json— Scene-by-scene composition configsrc/templates/— Remotion composition templatespackage.json— Dependencies and render scripts
Display the scene breakdown:
VIDEO AD — {archetype} ({format})
═══════════════════════════════════
Brand: {name} | Colors: {primary} / {secondary}
Scene 1: HOOK (3.0s)
Text: "{hook text}"
Animation: scale
Background: brand color
Scene 2: PROBLEM (4.0s)
Text: "{problem text}"
Animation: slide-up
Background: gradient
Scene 3: AGITATE (3.0s)
Text: "Sound familiar?"
Animation: fade-in
Background: gradient
Scene 4: CTA (3.0s)
Text: "{cta}"
Animation: spring
Background: brand color
Total: 13.0s | Format: 1080x1920 (9:16)
Step 4: Install & Render
If Node.js is available:
cd ~/.kai-marketing/renders/{date}
npm install
npx remotion render src/Root.tsx {CompositionName} out/{format}.mp4
If Node.js is NOT available: "Node.js required for video rendering. Install: https://nodejs.org. The Remotion project has been scaffolded — you can render it on any machine with Node."
Step 5: Show Output
VIDEO AD RENDERED
═════════════════
Archetype: {archetype}
Duration: {total_seconds}s
Files:
vertical: ~/.kai-marketing/renders/{date}/out/vertical.mp4 (1080x1920)
square: ~/.kai-marketing/renders/{date}/out/square.mp4 (1080x1080)
landscape: ~/.kai-marketing/renders/{date}/out/landscape.mp4 (1920x1080)
Platform destinations:
Meta Reels/Stories: vertical.mp4
Meta Feed: square.mp4
Google/YouTube: landscape.mp4
TikTok: vertical.mp4
LinkedIn: landscape.mp4 or square.mp4
Step 6: Offer Variants
"Want to render another archetype? Available: problem-agitation, social-proof, product-demo, lifestyle"
Archetypes
| Archetype | Best For | Duration | Scenes | |-----------|----------|----------|--------| | problem-agitation | Cold audiences, awareness | 10-15s | Hook → Problem → Agitate → CTA | | social-proof | Warm audiences, consideration | 8-12s | Stat → Explain → CTA | | product-demo | Retargeting, feature awareness | 15-20s | Intro → Demo → Benefit → CTA | | lifestyle | Brand building, emotional | 8-12s | Aspiration → Bridge → CTA |
Error Handling
- Node.js not installed: Scaffold only, provide instructions to render elsewhere
- Brand not configured: Direct to
kai-config set brand.* - No ad copy: Direct to
/ad-copyor/creative-brief - Remotion render fails: Show error, suggest checking Node version and dependencies
Chain State
Reads from: ~/.kai-marketing/briefs/, ~/.kai-marketing/config.yaml (brand) Writes to: ~/.kai-marketing/renders/{date}/ Chains from: /creative-brief → /ad-copy → /ad-render
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: cgallic
- Source: cgallic/kai-cmo-harness
- License: MIT
- Homepage: https://meetkai.xyz
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.