Free skill files

Podcast ad

A clip from what feels like a relaxed two-host conversation: one host has the problem, the other already fixed it, and the product comes up as a recommendation. The hosts are generated presenters, never shown as real customers or a real show.

Use it in three steps

  1. 1

    Connect roasOS

    Add the MCP server to your agent and sign in. MCP is included on every plan.

    claude mcp add --transport http roasos https://mcp.roasos.com/mcp
  2. 2

    Add the skill

    Save the file in the skills folder of your agent. This command is for Claude Code.

    mkdir -p ~/.claude/skills/roasos-podcast-ad && curl -o ~/.claude/skills/roasos-podcast-ad/SKILL.md https://www.roasos.com/formats/podcast-ad/SKILL.md
  3. 3

    Ask for the ad

    Your agent plans the ad and shows each price. Nothing spends until you say yes.

    Make a podcast clip ad where two hosts recommend my product.

The structure of the ad

Considered purchases where a friend's advice closes the sale.

  1. 10–3 s hook: the most quotable line of the exchange, opened cold.
  2. 23–12 s one host describes the problem in the customer's own words; the other cuts in.
  3. 312–22 s the other host says what finally worked and gives one owner-level proof point from the product facts; the first host pushes back once.
  4. 422–30 s the first host comes round and the ask lands as a casual mention.

How to shoot it

Write a speaker map first: one row per host with the host's still, one exact voice description and every line. One still per host, from a saved avatar or a generated face, same room, seated at a mic. All of one speaker's lines go in one clip, split above about 45 words. Static camera locked to that host's framing, no cuts or angle changes inside a clip, a pause after each line as if listening. The edit cuts the lines apart and interleaves them; captions come in finishing.

What breaks it

One clip per line, both hosts in one clip, camera directions inside a speaker's clip, a voice description that changes between clips, a hard sell in the middle, both hosts praising at once, hosts implied to be real customers, a real podcast's name or set, claims the facts do not back.

Read the file

---
name: roasos-podcast-ad
description: Plan and make a podcast ad with roasOS over MCP. Use when the user asks for a podcast ad or a two-host clip.
---

# Podcast ad

A clip from what feels like a relaxed two-host conversation: one host has the problem, the other already fixed it, and the product comes up as a recommendation. The hosts are generated presenters, never shown as real customers or a real show.

## Step 1: Connect the roasOS MCP server

Do this step first. Stop when this step fails, and tell the user.

1. Look for tools with names that start with `roasos_`. If you find them, go to step 4.
2. Connect the server at `https://mcp.roasos.com/mcp`. It uses Streamable HTTP. In Claude Code, run `claude mcp add --transport http roasos https://mcp.roasos.com/mcp`, then type `/mcp` and sign in. Other clients: https://docs.roasos.com/mcp
3. The user needs a roasOS account: https://www.roasos.com/auth/signup. MCP access is included on every plan. Only the user can sign up and pay.
4. Call `roasos_get_catalog`. It is free. A role name in this file, for example "the song role", is a key in `roles` in that answer.

## Step 2: Quote before you spend

Every paid tool quotes first. Send `quote_only: true` and read `credits`. Show the credits to the user and wait for a clear yes. Then send the same input with the `quote_id`.

In this file, "card", "approval card" and "quote and confirm" all mean this exchange. Never confirm a quote without a yes.

## Step 3: Make the ad

A vertical clip that passes for a moment from a two-host show. It sells because the viewer overhears a tip between friends. Faces and rooms render fine; what gives it away is a line no person would say, so spend most of the effort on the script.

### Find the words first
Before writing, collect how buyers talk about the problem: reviews, comments and transcripts the user has, plus `roasos_get_product`. Keep their odd phrasing and their objections. Never make up a quote or a number.

### The arc
One host has the problem and brings it up sideways. The other already fixed it and says what worked. The product arrives inside that story with one proof point only an owner would know, taken from the facts or the brief. End on a shrug, not a pitch. Contractions, interruptions, a question answered with a small story; 6 to 12 exchanges. If a stranger would spot the ad before the product shows up, rewrite.
The hosts are written characters: never present them as real customers or a real show, and no invented show name.

### Hosts
Saved avatars, or `roasos_avatar_nano_banana_pro` for new faces; never a photo of a real person. One still per host (quote and confirm `roasos_generate_image`, the avatar as the reference): same room in both, seated at a mic, the room chosen for the audience rather than the product. Get both stills approved before any video.

### Speaker map
Write this before any clip, one row per host: the still, the voice description, each line, the word count.
- All of one speaker's lines go in one generation. A voice only holds inside a generation, and a one-line clip pads itself with dead air.
- Above about 45 words, split that speaker on a line boundary.
- Paste the same voice description, word for word, into every clip of that speaker.
A normal script is 3 to 6 clips. One host per clip, always. A board renders in shot order, so this back-and-forth does not fit one: use single clips (quote and confirm `roasos_generate_video`, the host's still as the image) and say how many in the plan before the first card. Length: about 2.5 words a second, plus a breath per pause.

### The clip prompt
Plain beats clever; shot lists and style stacks hurt the read.
1. One continuous shot from the provided frame; the host talks to someone just off camera.
2. Static camera locked to the frame. No cuts, no moves, no angle changes: any camera direction invites a new angle mid-clip.
3. A direction to pause after each line, as if listening to the other host answer. Those gaps are where the edit cuts.
4. Numbered lines: the words alone, then the delivery note on its own line. No timestamps.
5. The voice description, close mic, quiet room tone. No music, no captions.
Example: "1. "Wait, you still wake up at four?" Note: half laughing, leans to the mic. 2. "Every night. I've tried everything." Note: flat, tired smile."

### The edit
Check each clip. `roasos_transcribe` gives exact pauses. `roasos_assembly_trim_video` each line out on those pauses and `roasos_assembly_merge_videos` them into the conversation. Cuts land between lines, never inside a word.
Real clips look a little cramped; a spotless full frame reads as generated. Finishing has no plain crop, so build that into the host stills: closer than feels right, a shoulder out of frame, the centring slightly off.
A word that lost its last sound does not need a new clip. On a card, `roasos_generate_audio` that word or short phrase in the nearest voice (`roasos_list_voices`), cut it tight, `roasos_assembly_trim_video` the moment into its own piece, `roasos_assembly_merge_audio_video` the slice onto that piece only (it replaces the audio, so never the whole clip), and stitch it back.
Captions last with `roasos_captions_auto_subtitle`, brand names as vocabulary. `roasos_assembly_text_overlay` a hook title if it opens cold, once the user confirms the words.

Check: one voice per host throughout, the product arrives as a recommendation, nothing claimed that the facts do not back.

## Format data

- Aspect ratio: 9:16
- Default length: 30 seconds
- Needs: a product and a person
- Example request: Make a podcast clip ad where two hosts recommend my product.

Beats:
- 0–3 s hook: the most quotable line of the exchange, opened cold.
- 3–12 s one host describes the problem in the customer's own words; the other cuts in.
- 12–22 s the other host says what finally worked and gives one owner-level proof point from the product facts; the first host pushes back once.
- 22–30 s the first host comes round and the ask lands as a casual mention.

How to shoot it: Write a speaker map first: one row per host with the host's still, one exact voice description and every line. One still per host, from a saved avatar or a generated face, same room, seated at a mic. All of one speaker's lines go in one clip, split above about 45 words. Static camera locked to that host's framing, no cuts or angle changes inside a clip, a pause after each line as if listening. The edit cuts the lines apart and interleaves them; captions come in finishing.

What breaks it: One clip per line, both hosts in one clip, camera directions inside a speaker's clip, a voice description that changes between clips, a hard sell in the middle, both hosts praising at once, hosts implied to be real customers, a real podcast's name or set, claims the facts do not back.

Ship 10x more creatives. Spend 90% less.

Product photos, video ads, and copy. All from one platform, ready in minutes.

Get started