agentsclimarketplace

Marketing studio

Skill ucsandman/marketing-studio/skills/marketing-studio

Use when generating any brand video, animation, image, or audio asset (logo reveal, social clip, product demo, launch video, OG image, README GIF, music, voiceover) for any product/repo, or when working inside the marketing-studio engine repo. Required background for /logo-reveal, /social-clip, /product-demo, /launch-video, /og-assets, /audio-track.From its SKILL.md

Install
npx -y skills add ucsandman/marketing-studio --skill marketing-studio

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

SKILL.md

3.3 KB, as published. Nobody here has run it

Marketing Studio

All brand video/animation/image assets render in ONE engine repo (Remotion + Blender + Playwright + ComfyUI feeders). Its root is:

${CLAUDE_SKILL_DIR}/../..

That path is substituted when this skill loads, so it is correct wherever the engine is installed. Call it ENGINE below. Never generate animation code inside a product repo — work in ENGINE, then copy the finished artifact into the calling repo.

REQUIRED READING before any asset work: ${CLAUDE_SKILL_DIR}/../../docs/PLAYBOOK.md — engine map, brand onboarding steps, and the verified gotchas (Blender 5.1.2 API traps, camera math, seamless-loop rules, capture-feeder lessons). Those were expensive to discover; do not re-derive or second-guess them.

Workflow shape (every asset skill follows this)

  1. Shared-repo guard: git -C "${CLAUDE_SKILL_DIR}/../.." status --short. If the tree has uncommitted modifications you did not make, ANOTHER session is likely mid-flight in the engine repo — tell the user what you found and ask whether to wait or proceed (scope-lock if proceeding in parallel). Never build on top of a stranger's uncommitted edits silently.
  2. cd "${CLAUDE_SKILL_DIR}/../.." && python launch.py --check — verify the toolchain.
  3. Brand check: does brands/<id>.json exist for the product? If not, run the PLAYBOOK's "Onboarding a new brand" section first (tokens from the product repo's DESIGN.md/tailwind/CSS vars; mark component; registries). Ask the user only for values you cannot derive.
  4. Execute the asset recipe (per-skill).
  5. Rendered proof: inspect 2-4 stills (Read tool) at key frames BEFORE any full render.
  6. Full render to out/<brand>/; run node scripts/smoke.mjs if you touched studio code.
  7. Deliver: copy the artifact into the calling repo (ask once for the destination; default its existing media/marketing dir) and SEND the file to the user. Not done until the user has seen it.
  8. Commit the engine repo: any code/config/props changes your run made in ENGINE get committed there (tests + lint + smoke first). Renders under out/, assets/, studio/public/ stay uncommitted (gitignored). An uncommitted engine tree strands your work and blocks the next session.

Non-negotiables

  • Brand values only from brands/<id>.json via getBrand(brandId); never literal hex in templates. Honor the brand's stated color rules (noban: profit gold, never green).
  • Nullable asset props + placeholder fallbacks (clean-clone smoke stays green).
  • Copy: no em dashes, no hype words.
  • Fail loudly; generated props files are edited via their builder scripts only.

Token discipline

Recipes are solved — execute, don't explore. Render logs: | tail -2. Inspect stills, never videos (extract frames via npx remotion ffmpeg when needed). Subagent any visual-tuning loop so iteration images land in discarded context. Routine runs work fine on Opus/Sonnet; escalate model tier only for new template design or visual bugs the PLAYBOOK doesn't cover.

Keep looking

Skills are one crate of 627,801. 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.