media-production

$npx mdskill add langchain-ai/design-agent/media-production

Pick the pipeline from what the person will receive, then open its skill.

SKILL.md

.github/skills/media-productionView on GitHub ↗
---
name: media-production
description: Route any design or motion request to the right pipeline and skill, from a single still to a launch film. Use first for every new ask.
---

# Media production

Pick the pipeline from what the person will receive, then open its skill.

| They will receive | Pipeline | Skill |
| --- | --- | --- |
| One image, an ad set in several sizes, a social card, a banner, a paged PDF | HTML still rendered in the browser, every size recomposed | `stills` |
| A deck | HyperFrames `slideshow` (animated) or HTML-to-PDF (static) | `stills`, `slideshow` |
| A chart, stat card or diagram | JSON spec through ECharts or D2 with brand tokens | `data-viz` |
| An edited image: crop, resize, cut-out, composite, format | `img.mjs` operations on the file | `image-ops` |
| A generated image, texture or plate | `generate_image`, then image-ops | `image-generation` |
| A GIF | a short render or clip, palette-optimized | `gif-edit` |
| Thumbnails | a set of stills with legibility checks | `thumbnails` |
| A storyboard | frames from HTML or HyperFrames snapshots, one contact sheet | `storyboard` |
| A video, animation or motion graphic | storyboard, animatic, HyperFrames composition, render | `storyboard`, `motion-direction`, `hyperframes` |
| A 1-3 minute launch film | the `launch_film` pipeline (`run_pipeline`) | `launch-film` |
| Voice, music or sound | host audio tools, then the mixer | `sound` |
| A teardown of a reference film | cuts, timing and audio measured, then compared | `film-breakdown` |
| What to learn from a film someone shares | a frame-by-frame study written to `workspace/references/` | `reference-study` |

If the ask is vague, use `content-brief` first: at most two questions, each with its reason;
otherwise decide and say what you decided.

Judgment sits beside every pipeline: `brand-design` for the concept gate, ground, accent and type,
and for keeping a supplied reference's structure; `design-wiki` for hierarchy, typography, colour,
layout, platform specs and the review rubric. For a job with several outputs or a hard requirement,
write `artifact-contract.json` from
[brand-design's example](../brand-design/references/artifact-contract.example.json) and check it
with `artifact-contract.mjs` at plan and final.

## Where work lives

Each job gets `/workspace/projects/<slug>/` with `BRIEF.md` (the ask in your words), `PLAN.md`
for anything longer than a few minutes, sources, compositions, `renders/` and `review/`. Files
people drop in the thread are in `/workspace/attachments/`.

## Before you deliver

1. `node /workspace/tools/brand-lint.mjs <composition.html>` passes (exit 0). Exit 1 means fix
   the composition; exit 2 means the gate could not run, which you report, not ignore.
2. Look at every output yourself (`look` with the files and one question; `visual-verify` says
   how). Fix what is off.
3. Check outputs against the ask: `node /workspace/tools/artifact-contract.mjs --expect
   <file>:<W>x<H> ...`.
4. Deliver with `upload_files`, then reply in one or two lines naming the calls you made.

Motion adds `node /workspace/tools/video-gate.mjs <index.html>` and `hyperframes check` (it lints
too) before any render, and a storyboard sign-off before production.

The sandbox has no network. Copy what a composition loads next to it: GSAP from
`/opt/design-agent/render/node_modules/gsap/dist/gsap.min.js`, the brand's `tokens.css` and logos
from `/workspace/brand/`. Upstream HyperFrames examples load libraries from a CDN; that fails here.

## Paper

When Paper is connected and the work is something people will want to nudge (layouts,
storyboards, thumbnails), draft it on the canvas as well (`paper-design`). The thread always gets
an image people can approve, whether or not Paper is connected.

More from langchain-ai/design-agent

SkillDescription
brand-designVisual judgment for a new asset or a restyle of a supplied one. The concept gate, choosing ground, accent and type from the brand pack, and preserving a supplied reference.
brand-onboardingBuild the active brand pack in workspace/brand/ from a brand guide, website, files or a Paper file, validate it, and have a person review it.
content-briefTurn a vague or multi-asset design ask into a brief. Pull what is already known, ask at most two questions with reasons, decide the rest and say what you decided.
data-vizCharts, stat cards, flywheels and diagrams (flows, architectures, hierarchies) rendered on brand from a JSON spec to PNG and SVG. Use for any visual whose job is numbers or relationships, including restyling an attached chart or diagram.
design-agent-customizeChange what Design Agent knows and does. Teach it a new deliverable with a runtime skill, change its instructions, design doctrine or checks, connect MCP servers and tools, or change models and cost caps. Use when someone wants it to make something new, follow a new rule, or use another tool.
design-agent-deployPut Design Agent in a team's Slack. Deploy it to Managed Deep Agents (one command, managed Slack app) or self-host it with Docker Compose, verify it with a real request, ship updates, and keep a separate test copy. Use when someone wants the agent running for their team.
design-agent-evalsFind out whether a change made Design Agent better or worse. Run the eval set or a few tasks before and after against the same model, read the reports, look at the files, and turn a real request that went wrong into a task. Use after changing instructions, skills, checks or models, or when someone asks how good it is.
design-agent-onboardingInstall and configure Design Agent, add a brand, connect Paper, choose MDA or self-hosting, and diagnose setup without exposing credentials.
design-agent-troubleshootDiagnose Design Agent when something fails. Setup, a render, a deploy, Slack or a model call. Run doctor and the connection tests, read logs and traces, match the symptom to its fix, and never print credentials. Use when a command errors, a reply never comes, or a file looks wrong.
design-agent-updateBring a fork or clone of Design Agent up to date with the upstream repository while keeping the team's brand, skills and edits, rebuild what changed, and redeploy safely. Use when someone asks to update, upgrade or pull the latest Design Agent.