Communitygithub.com

8533502-dev/deepseek-opus-motion-skill

Make DeepSeek (or any model) produce motion-design videos that match what Claude Opus 5.5 makes from the same prompt, for any request in any style — brand films, showreels, kinetic typography, explainers and data stories, product and UI promos, character stories and music videos, abstract loops, title sequences. It reads the prompt like Opus, derives an art direction from it, plans before coding, builds a Remotion (React + SVG) project on a tested starter with generated sound, and reviews its own work with a five-juror critique. Triggers on 动效, 动态设计, 视频, 短片, 动画, 复刻 opus 效果, 扩写提示词, Remotion, motion graphics, showreel, MV.

deepseek-opus-motion-skill 是什么?

deepseek-opus-motion-skill is a Claude Code agent skill that make DeepSeek (or any model) produce motion-design videos that match what Claude Opus 5.5 makes from the same prompt, for any request in any style — brand films, showreels, kinetic typography, explainers and data stories, product and UI promos, character stories and music videos, abstract loops, title sequences. It reads the prompt like Opus, derives an art direction from it, plans before coding, builds a Remotion (React + SVG) project on a tested starter with generated sound, and reviews its own work with a five-juror critique. Triggers on 动效, 动态设计, 视频, 短片, 动画, 复刻 opus 效果, 扩写提示词, Remotion, motion graphics, showreel, MV.

兼容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/8533502-dev/deepseek-opus-motion-skill/tree/HEAD/motion-design-prompt-generator

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Opus-parity motion films (Remotion)

Goal: the same prompt, given to Opus 5.5 and to the model running this skill, gives films that look, move and sound almost the same, whatever the subject or style.

The gap is rarely taste. It is behaviour. Opus:

  • honours every value in a long prompt;
  • turns vague words into concrete design decisions;
  • designs every element properly instead of settling for a placeholder;
  • plans the whole timeline before coding;
  • builds one shared system, so things stay consistent;
  • looks at its own output and fixes it.

A weaker model skips each of these unless it is made explicit. This skill makes them explicit, on the Open Design architecture:

Open Design pieceHere
A functional skill that owns the workflowThis file: priorities, the stages and the element playbooks
A DESIGN.md contract read by every renderThe design contract at the top of src/spec.ts; design-systems/*.md are seeds for it
Templatestemplates/remotion-starter/, tested (full source in REFERENCE.md)
A Design Jury critique gateStage 6: five jurors, fix until each scores ≥ 8
An anti-slop checklistThe ban list in stage 6
Deterministic renderingRemotion: every frame is a pure function of the frame number

Priority order

When rules compete for attention, keep them in this order:

  1. The prompt's own words: every value, beat, copy line and ban.
  2. Look and craft at the style's level: composition, palette, type, and every element designed properly (see the playbooks). Texture and light come in here too. This is what a viewer judges first.
  3. Continuity: real transformations, persistent identity, plausible physics.
  4. Rhythm and sound.
  5. Bookkeeping: ledgers, tables and checks. They serve 1–4 and never replace them.

Helpers and examples are mechanics, not style. motion.tsx decides where things are and how they move. It never decides what they look like. Never ship a helper's neutral default, such as a plain box or stick limbs, as the design. Never copy an example's subject, palette or layout into a different film. Every film gets its own designed look, at least as rich as it would be without the helpers.

Invocation

  • Any request for a motion piece runs the pipeline. Ask no questions: resolve gaps in stage 1 and state them in 解读.
  • Each new prompt is a new film, built fresh from the starter, even in a conversation that already made one. Reuse earlier code only when the user says to modify it (修改, 改一下, 在上一版基础上, fix this). In a file-tool host, create a new project folder for the film.
  • Modes. The default is to build. 只要提示词 / 扩写 / “prompt only” stops after stage 2 and outputs the expanded brief as one fenced text block.
  • Hosts. Chat-only: output files as code blocks (stage 7). With file and shell tools: write the files, run npx tsc -p ., npm run render and npm run check, look at the stills, fix, then report.
  • If the message contains no idea, reply only: “请给我一句话的创意或一段完整的提示词。”

Stage 0 — Read the prompt like Opus: three ledgers

  • Spec ledger S01…: one row per value or instruction, quoted exactly. This covers durations, sizes, colours, fonts, weights, copy, counts, angles, positions, timings, easing, bans, the loop or ending, characters, and every storyboard beat. FILM in spec.ts (duration, fps, size) comes from these rows; the starter's placeholder values must never survive. A truncated prompt is completed in the voice and density of its last full section, with those rows marked S##*.

  • Transformation ledger X01…: every becoming verb (becomes, turns into, gathers, dissolves, unfolds, grows into, 变成, 化成, 收拢, 汇聚, 展开) as source → target · mechanism · start–end s · what is conserved.

  • Element ledger E01…: every thing that is drawn, typed with its playbook (type, object, character, environment, data, UI, transition, texture-light, sound) and listing:

    • three or more structural features;
    • size and coordinates;
    • how it moves;
    • for characters, the design sheet and named poses;
    • for held things, the holder over time.

    Each scene also gets its back-to-front layer list.

Every value is binding: never round, rename, recolour, re-time or drop one. The last third of a long prompt counts as much as the first. If two rows conflict, keep the more specific one and note it in 解读. In code:

  • constants live in spec.ts, tagged // S07;
  • builders live in film.tsx, tagged // E03;
  • beats live in scene files, tagged // S31 X02.

Stage 1 — Fill gaps the way Opus does

Only for what the prompt leaves open; never override a ledger row.

GapOpus-like default
Format1920 × 1080; 60 fps for dense motion, 30 fps for calm or character pieces. A stated format is binding; for a quick look use npm run preview, never lower FILM
Duration and ending15 s for an idea, 30 s for a showreel or brand film. A seamless loop for reels and idents; a resolved final image or end card for stories and promos
RhythmTempo from the mood: calm 60–90 BPM, brand 110–128, energetic 128–140. Dense pieces have an event on every beat, calm pieces on every bar. Holds ≤ 0.5 s when dense, as long as the copy needs when calm
NarrativeOne motif or carrier connects the film; each scene grows out of the previous one; no unrelated title cards
CameraLocked and front-on unless the prompt implies movement. Story pieces open wide on the whole world
CompositionFrom the style's occupancy and whitespace. Nothing at rest within 150 px of the sides or 90 px of the top and bottom
TypographyOne family with character; the payoff word or number in the heaviest weight at the largest size. Latin: Inter, Geist, Space Grotesk, Fraunces; Chinese: Noto Sans SC, Noto Serif SC
Palette3–5 colours with roles; the accent foreshadows what comes next
Texture and lightMaterial per element, scaled to its size. Light comes from motivated sources
DetailThree recurring micro-details that make the film feel authored (labels, ticks, legends, timecodes, signage). They add no new claims, numbers or copy beyond the prompt, and use the prompt's wording where it gives one
CaptionsAny on-screen lines of speech, lyrics or subtitles: ≥ 40 px at 1080p, high contrast, lower third, whole line held for its reading window (≈ 0.25 s per Chinese character, ≈ 3 Latin words per second)
SoundA generated score that fits the mood, or ambience for an environment-led scene; silent only if asked

Stage 2 — Direction: derive a design contract from the prompt

Where the style comes from:

  1. The prompt states the style (palette, materials, type, references). The contract comes from the ledger alone.
  2. The prompt names a feeling, medium or reference (“like a newspaper”, “水墨”, “terminal”, “Swiss poster”, “Pixar-like”). Start from the closest seed in design-systems/ and adapt it.
  3. The prompt is a bare idea. Synthesise a new contract with the method below. Seeds are optional starting points, not defaults.

Style synthesis method (for any subject):

  1. Subject → world. What material world does this subject live in? Paper, ink, glass, metal, fabric, screens, nature, a city, a lab. Pick one, plus at most one contrasting world to transform into.
  2. Audience and mood → energy. Calm or punchy, warm or precise, playful or serious. This sets tempo, easing, overshoot and density.
  3. Make it concrete. Write the contract as values, not adjectives:
    • Palette: hex values with roles.
    • Type: family, weights, sizes, tracking.
    • Marks: how lines, fills and shapes are drawn, as SVG techniques.
    • Texture and light: per element.
    • Composition: occupancy, whitespace, edge rule.
    • Motion character: easing per move type.
    • Transition grammar: which mechanism changes which scene.
    • Signature details.
    • Sound palette.
    • Bans.
  4. Check against slop. Every choice must be traceable to the subject or the prompt. Generic gradients, glows and template layouts are what the contract exists to replace.

Seeds in design-systems/:

SeedFits
drafting-tableProcess, tools, engineering
swiss-kineticBrands, launches, statements
editorial-inkCulture, craft, heritage, East Asian themes
data-instrumentExplainers, finance, science
bold-posterMusic, sport, youth
riso-halftoneIndie, retro, playful
storybook-sceneCharacters, stories, MVs

Short prompts: write the full brief first, at Opus density. It has a direction paragraph, the contract, the structure (tempo, named scenes, scene changes), characters if any, and a scene-by-scene storyboard with timestamps and numbers. That brief becomes the ledgers. In prompt-only mode, output it and stop.

Stage 3 — Timeline before code

  1. Write one row per scene: start–end s · name · what the viewer learns · carried element in → out · transition out (X##).
  2. List every event as t: element (E##) · action · numbers · ids.
  3. Name the key times in a T block.
  4. Derive the sound cue list from the same events.

Checks before going on:

  • beats fall at multiples of 60/BPM;
  • each scene's exit state is the next scene's entry state;
  • no two actions drive one property at once;
  • everything finishes before the end;
  • for a loop, the virtual t = D frame equals frame 0, with all motion at rest.

Stage 4 — Design before motion

  1. Build each element's geometry from its structural features, at module level.
  2. For characters, make a character sheet first: one still with every character in every named pose, holding its props.
  3. Fix the key compositions as exact layouts in px: frame 0, the first full frame of each scene or material, and the final frame. Check each against the contract's occupancy and whitespace.
  4. Code these static states before the motion between them. A weak still is never rescued by motion. In a file-tool host, render and look at them first.

Element playbooks

Every request is made of these element types. For each element, apply its playbook.

ElementBuild itMove itCheck (common failure)
TypeOne family; hierarchy by weight and size; tracking set per size; big words on one line, fitted to their stated width; split words and letters keep their spaces; CJK can run verticalArrive with EASE.out; staggers 0.02–0.06 s; slot clips, slides on rails, scale reveals; readable hold before exitWords run together, orphan lines, captions too small or low contrast, the payoff not the heaviest type
Object (icons, props, products, symbols)Three or more structural features of the real thing; one shade side for volume; consistent outline policy; built once as a functionMotion from its nature: paper bends at a fold, liquid ripples, metal rotates on an axis, light switchesA symbol instead of the thing, floating parts, inconsistent scale between shots
CharacterA Body design sheet: silhouette, proportions, colours, face, marks, all designed through color, face and parts; named posesposeMix between named poses with settle; walk() for walking; small readable acting beats; props at grip() and drawn in heldA drifting look between shots, hands not on held props, limbs through the head, stick-figure default look, feet off the ground
Environment (rooms, cities, landscapes, weather)Layers from back to front: sky or wall, far, mid, ground, foreground. Motivated light sources and their light shapes. Weather across the frame in two depthsAmbient life that never stops (weather, lights, small loops); the camera stays still unless askedA flat backdrop, weather passing through solid objects, missing light logic, edge-to-edge clutter
Data (charts, counters, diagrams, maps)Axes and units first, values exact from the ledger, labels attached to marks, one chart per sceneAxes, then data, then annotation; counters roll with their mark; charts morph into each other through shared slotsWrong numbers, unlabelled axes, decoration over data, labels that ignore the prompt's wording
UI / productReal screens or faithful reconstructions with crisp rectangles, true proportions and a real hierarchyCursor-driven or state-driven changes; zooms into the region that changesStretched screenshots, fake interface noise, unreadable small text
TransitionPhysical mechanisms: morph (chain), merge (converge), mask or wipe (Reveal), material change (MaterialLayer twice under Reveal), unfold, match on a shared shapeHard edges, planned on a beat, with the source vanishing as the target formsCrossfades, cuts the prompt didn't ask for, things popping in, identity lost across a material change
Texture and lightPaper and ink as separate layers (Paper, InkFilter scaled with roughFor); halftone and hatching via patterns; light as shapes (cones, lit windows, reflections)Seeded and stable, or boiling at a fixed step rateUniform texture on everything, decorative glow or bloom, flicker from unseeded noise
Soundscripts/cues.json: a pitched bed and figure for music, or an ambience bed for environment-led scenes; an event on every visual hitSynced to the T block; a loop's tail folds into its startSilence by omission, noise used as music, hits out of sync

Universal rules

  1. Becoming is real. Every X row morphs the same object point by point (equal point counts; chain() for many shapes, converge() for many-to-one). The source is gone when the target forms. The target is fully reached: if the prompt says “becomes a bar chart”, it ends as bars. Parts are born at their source and travel. Merges and splits conserve quantity. Never fake a transformation with an overlay, a crossfade, or b

相关技能