Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add devcsde/oatda-skills --skill oatda-video-ad-creatorgit clone --depth 1 https://github.com/devcsde/oatda-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/devcsde/oatda-skills/oatda-video-ad-creator)<a href="https://agentmods.dev/skills/devcsde/oatda-skills/oatda-video-ad-creator"><img src="https://agentmods.dev/badge/skills/devcsde/oatda-skills/oatda-video-ad-creator.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00064 | $0.01973 |
| Opus 5 | $0.00032 | $0.00986 |
| Sonnet 5 | $0.00013 | $0.00395 |
| Haiku 4.5 | $0.00006 | $0.00197 |
Grade A, and why
oatda-video-ad-creator scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- Final: `POST https://oatda.com/api/v1/llm/generate-video` via direct curl (see pitfalls), ~100–120s generation, `provider` field REQUIRED How it starts
The opening of the file, as written. The whole thing — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
OATDA Video Ad Creator
Build a short (15–30s) branded video ad for the user's product from start to finish: script → OATDA TTS voiceover → OATDA AI video hook clip → product screenshots → Remotion composition → ffmpeg mux → QA gate.
Audience & Inputs
The user brings their own brand — logo, colors, fonts — plus product screenshots and the message they want to convey. Collect before starting:
- Brand kit: primary/accent colors (hex), logo file, preferred font
- Product screenshots or URLs to capture
- Key message: 3–4 short claims and one call to action (CTA)
- Target duration and aspect ratio (default 16:9, 1080p, ~20–25s)
The Remotion scaffold lives in this repo at templates/video-ad-remotion/ — copy it into a local project folder (e.g. ~/video-ad/) and work there.
Scene Types
| Scene | Visual | Use for |
|---|---|---|
HookScene |
AI-generated video clip (OffthreadVideo) + text overlay, or pure motion graphics |
Opener, 3–5s |
ScreenshotScene |
Real product screenshot, slow zoom + gradient + text | Feature proof |
CodeScene |
Two terminal/editor cards, line-by-line reveal | API/SDK/technical claims |
OutroScene |
Logo + URL + tagline + CTA button | Closer |
Production Workflow
- Script first. Write VO sentences (short, punchy). Calibrate duration: a typical TTS voice at speed 1.0 reads ≈ 36 words in ≈ 21s; speed 1.2 ≈ 17s. Target: VO duration + 0.7s inter-sentence gaps ≤ ad length limit.
- AI hook clip (e.g.
seedance-1-5-pro):- Render a draft first (480p, roughly 40% cheaper) → verify via frame extraction + image model review before paying for 1080p
- Final:
POST https://oatda.com/api/v1/llm/generate-videovia direct curl (see pitfalls), ~100–120s generation,providerfield REQUIRED model_params:{"ratio":"16:9","resolution":"1080p","watermark":false,"generate_audio":false,"draft":false}- Prompt rule: motion only, no text or logos in the AI clip — text comes as a Remotion overlay
- TTS voiceover:
generate_speechper sentence → download immediately (signed URLs expire ~8 min) → concat with 0.7s gaps + 0.3s lead + 0.5s tail (ffmpeg -f concat, paths relative to the .txt!) → master chain → MP3 256k - Music mix: voice + licensed track @ ~0.28 volume,
amix normalize=0, fade out over the last 1.5s - Screenshots:
google-chrome --headless --virtual-time-budget=10000(client-rendered pages need it). Auth-walled pages → screenshot manually in a logged-in browser, or build aCodeScenemock instead - Remotion render:
npx remotion render src/index.ts <composition-id> out/raw.mp4(~2 min) - Mux:
ffmpeg -i raw.mp4 -i mixed.mp3 -map 0:v -map 1:a -c:v copy -c:a aac -b:a 192k— never-shortest - QA gate: see below — mandatory before delivering any draft
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 109 lines · 64 tokens per session scan A 2d9ca2afe16b
oatda-video-ad-creator is a skill published in the GitHub repository devcsde/oatda-skills (0 stars, last pushed 8d ago), licensed Apache-2.0. It adds 64 tokens to every session and 1,973 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
9router-video
Generate videos via 9Router /v1/videos/generations using xAI Grok Imagine (grok-imagine-video). Async job flow - submit, poll requestid until done, download MP4. Use when the user wants to create, generate, or render a video, text-to-video (txt2vid), or image-to-video.
9router-image
Generate images via 9Router /v1/images/generations using OpenAI / Gemini Imagen / DALL-E / FLUX / MiniMax / SDWebUI / ComfyUI / Codex models. Use when the user wants to create, generate, draw, or render an image, picture, or text-to-image (txt2img).
9router-tts
Text-to-speech via 9Router /v1/audio/speech using OpenAI / ElevenLabs / Deepgram / Edge TTS / Google TTS / Hyperbolic / Inworld voices. Use when the user wants to convert text to speech, generate audio, voiceover, narrate, or read text aloud.
keirouter-image
Generate images via KeiRouter /v1/images/generations using OpenAI DALL-E / Gemini Imagen / FLUX / MiniMax / Stability AI / Fal.ai models. Use when the user wants to create, generate, draw, or render an image, picture, or text-to-image (txt2img).
keirouter-stt
Speech-to-text via KeiRouter /v1/audio/transcriptions using OpenAI Whisper / Groq / Gemini / Deepgram / AssemblyAI models. Use when the user wants to transcribe audio, convert speech to text, or get subtitles from audio files.
keirouter-tts
Text-to-speech via KeiRouter /v1/audio/speech using OpenAI / ElevenLabs / Deepgram / Edge TTS / Google TTS / Inworld voices. Use when the user wants to convert text to speech, generate audio, voiceover, narrate, or read text aloud.