Communitygithub.com

blixvip/skills

Source, generate, and prepare the real assets that keep a motion-graphics edit from looking generated — sampling the palette from the footage, collecting style references, pulling 3D models/Lottie/SVG/textures/SFX, generating AI stills and b-roll, and the mandatory conform pass that grades every asset into one palette. Use when a scene needs an icon, logo, 3D object, texture, background, screenshot, chart source, sound effect, or generated image/video, and whenever output "looks flat", "looks stocky", "looks AI", or assets came from different places and no longer match.

skills 是什麼?

skills is a Codex agent skill that source, generate, and prepare the real assets that keep a motion-graphics edit from looking generated — sampling the palette from the footage, collecting style references, pulling 3D models/Lottie/SVG/textures/SFX, generating AI stills and b-roll, and the mandatory conform pass that grades every asset into one palette. Use when a scene needs an icon, logo, 3D object, texture, background, screenshot, chart source, sound effect, or generated image/video, and whenever output "looks flat", "looks stocky", "looks AI", or assets came from different places and no longer match.

相容平台~Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/blixvip/skills/tree/HEAD/motion-assets

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

motion-assets

An animation is only as good as what is in it. Three shapes and a font is a template no matter how well it is eased.

The rule that governs this whole skill: nothing enters the edit at the color, scale, or texture it arrived in. Every asset gets conformed. An un-conformed stock asset is the fastest way to make a frame read as assembled rather than designed.

1. Sample the palette before sourcing anything

Do this first. Every later decision depends on it.

  1. Pull 3–5 stills from the A-roll (ffmpeg -ss <t> -i in.mp4 -frames:v 1 out.png).
  2. Find the strongest non-skin, non-neutral hue — practical light, wall wash, jacket, product, set dressing.
  3. That hue is the accent. Build ground / surface / accent from it per motion-design.
  4. Write 04-design/tokens.css and palette.json. Everything downstream reads these files.

If there is no footage (pure motion piece), take the palette from the brand kit, or from the single strongest reference image — still sampled, never invented.

2. Collect references before generating anything

References are the highest-leverage input in the entire pipeline. Two or three images beat any amount of prose.

Ask the user for them. If they have none, go and find them: search the look by name ("Apple-style product animation", "editorial data documentary", "retro terminal UI"), pull frames from videos whose look matches, screenshot competitor sites.

Save each into 03-assets/refs/ named for what it teaches:

refs/
  glass-transparency.png      ← how transparent the panels should be
  type-pairing.png            ← the display/body relationship
  grain-and-vignette.png      ← the texture treatment
  camera-move.mp4             ← the pacing of the push

Naming them this way matters: at design time you attach the one that answers the current question, instead of dumping five images and hoping.

When a generated result is wrong, attach a reference and say what specifically differs. "Make it nicer" produces drift. "The glass in ref-1 is more transparent and has a visible edge highlight; match that" produces a fix.

3. Source the concrete assets

Per shot, the assets[] list in plan.json must resolve to real files. Categories and where they come from — full link catalogue in Appendix A.

NeedGet it from
Brand logothe client, as SVG. Never trace a PNG, never let a model redraw a logo.
Real product/company logosofficial brand/press kits. Models draw outdated or wrong logos — this is a frequent, visible error.
Iconsone icon set only, matched to the type weight. Mixing sets is instantly visible.
UI screenshotscapture the real thing (Playwright MCP, or a manual screen record). A mocked-up UI that differs from the product is worse than no UI.
3D modelsSketchfab, Poly Haven, NASA's model library, or generate (Meshy, Hunyuan3D, Rodin)
PBR textures / HDRIsPoly Haven, Adobe Substance 3D assets
Vector animationsLottieFiles (.json / .lottie)
Maps / globesMapbox (needs a token), or a 3D globe in Three.js
Chartsreal data. If the number is on screen, it must be the true number — verify it, cite the source in NOTES.md.
Photoreal stillsMidjourney / Nano Banana / GPT Image / Freepik-Magnific, always with a style reference
Photoreal motion b-rollimage-to-video (Seedance, Veo, Kling, Luma Ray, Runway)
Consistent recurring character/producttrain a LoRA (see Appendix A) — reference images alone drift across angles
VoiceoverElevenLabs or a cloned voice; feed it more source audio than feels necessary
SFXa proper library, or generated. Sparse and mixed low.
Musiclicensed library. Check the license before it reaches a client render.
Fontslicensed and self-hosted. Confirm the license permits video embedding.

Generating stills that do not look generated

  • Attach a style reference and keep the prompt short. A long prompt with no reference produces the model's average taste; a short prompt with a strong reference produces yours.
  • Generate the whole set from one anchor image rather than prompting each independently — independent prompts are why palettes drift between shots.
  • For any subject that recurs, build a reference sheet (multiple angles from one identity) and generate from that.
  • Upscale before compositing, not after.
  • Check every generated image for text. Garbled type is the single most recognizable artifact. Crop it out, cover it with real type, or regenerate.

Generating b-roll that does not look generated

  • Prefer one longer continuous shot over chaining short clips. Chained first-frame/last-frame joins produce a visible stutter at every seam.
  • If you must chain, use the true last frame as the next first frame, then delete one duplicated frame at the seam.
  • Match the camera language of your real footage — if the A-roll is locked off, do not hand back a drifting orbit.
  • Keep generated clips short and cutaway-sized. The longer a generated shot holds, the more the viewer inspects it.

4. Conform — the pass nobody does

Every asset, without exception, before it enters a scene:

  • Re-grade into the palette. Hue-shift, duotone, or overlay-tint stock and generated images toward tokens.css. A stock photo at its original color temperature is visible from across the room.
  • Match black level and contrast to the plate.
  • Add the same grain/texture the rest of the edit carries.
  • Normalize scale — icons on one optical size, logos on one clear-space rule.
  • Cut out the background where it should sit in the scene (u2net / hyperframes remove-background / Runway), then give it a contact shadow.
  • Clean the edges — no white halo from a bad key, no JPEG mush on a logo.
  • 3D: render with the scene's light direction, matching the shadow direction used everywhere else.
  • Audio: normalize, trim the head, and duck under dialogue.

Log the conform in NOTES.md for anything non-obvious, so a re-render reproduces it.

5. Store it so the next agent can find it

03-assets/
  brand/     logo.svg, fonts/, brand.json (hexes, clear-space, don'ts)
  refs/      named-for-what-they-teach.png
  gen/       image.png + prompt.txt beside it (model, seed, style ref)
  3d/        model.glb + renders/
  lottie/    name.json
  sfx/       impact-01.wav

prompt.txt beside every generated file is not optional. Without it you cannot regenerate a matching variant three weeks later, and the whole set drifts.

6. Licensing

Before anything reaches a client deliverable, confirm: fonts licensed for video, music licensed for the platform and territory, stock licensed for commercial use, 3D model license permits redistribution in a render, and no real person's likeness is generated without permission. Record it in NOTES.md. This is a client-facing risk, not a technicality.

When assets are the actual problem

If a frame is well designed and well animated and still looks generated, it is almost always one of these:

  1. Flat solid background — no gradient, no texture, no depth layer.
  2. Icons from a different family than the type.
  3. A stock or generated image left at its original color.
  4. A logo the model drew instead of the real SVG.
  5. Every asset centered at the same scale on a symmetric grid.

Fix the assets before touching the animation.


Appendix A · Asset source catalogue

Verify pricing and licensing at the source — both change. Links are canonical homepages; anything marked ~ is a search target rather than a URL to trust blindly.

3D models and scenes

SourceURLNotes
Sketchfabhttps://sketchfab.comHuge library; filter to Downloadable + free license. Check the license per model.
Poly Havenhttps://polyhaven.comCC0 models, HDRIs, PBR textures. No attribution required. Best default.
NASA 3D Resourceshttps://science.nasa.gov/3d-resources/Free spacecraft, terrain, mission assets. Often split into many parts — parent them to one null before animating.
Adobe Substance 3D Assetshttps://substance3d.adobe.com/assetsMaterials; a large free tier. Drops straight into After Effects' 3D layers.
Meshyhttps://meshy.aiText-to-3D and image-to-3D, plus texturing and humanoid/quadruped rigging with a stock animation library.
Hunyuan3D (Tencent)https://huggingface.co/tencentOpen-weights image-to-3D. Geometry is good; texturing is the weak point.
Hyper3D / Rodinhttps://hyper3d.aiText/image to 3D, available as an MCP inside the Blender integration.
Mesh-to-Motion~ search "mesh to motion rig"Rigging for non-humanoid meshes (birds, creatures) that humanoid riggers refuse.

Multi-view trick: a single front image produces a wrong back. Generate 90°/180° turns of the subject first, then feed the model 3–4 views. This is the difference between a usable asset and one you can only shoot from one angle.

Textures, HDRIs, backgrounds

Vector animation

Lotties are tiny, resolution-independent, and re-colorable — recolor them to tokens.css rather than using them as shipped.

Icons and fonts

SourceURL
Google Fontshttps://fonts.google.com
Fontsharehttps://fontshare.com (free for commercial use)
Lucide iconshttps://lucide.dev
Phosphor iconshttps://phosphoricons.com
Simple Icons (brand marks)https://simpleicons.org

Use one icon family per project, matched to the type weight. For real company logos use the company's own brand kit — never a model's redraw.

AI images

ToolURLBest at
Midjourneyhttps://midjourney.comAesthetic quality; style references are its superpower (--sref)
Google AI Studio / Gemini imagehttps://aistudio.google.comStrong prompt adherence, character/subject consistency, editing
Freepik + Magnifichttps://freepik.com , https://magnific.aiMany models side by side, upscaling, camera-angle change, spaces/node canvas
Higgsfieldhttps://higgsfield.aiMulti-model image + video, MCP integration into agents
Replicatehttps://replicate.comAPI access to most open models
fal.aihttps://fal.aiFast serverless inference; also runs LoRA training
ComfyUIhttps://comfy.org , https://github.com/comfyanonymous/ComfyUILocal, free, node-based, full control; runs your own LoRAs

AI video

ToolURLNotes
Runwayhttps://runwayml.comVideo-to-video restyling, object replacement, background removal, multi-shot edits
Luma Dream Machinehttps://lumalabs.ai/dream-machineStart-frame + end-frame interpolation
Klinghttps://klingai.comImage-to-video
Google Veovia https://aistudio.google.com / https://labs.googleNative audio generation
Seedancevia Higgsfield / fal / ReplicateLong single-take shots — fewer seams than chaining

Always prefer one long take over stitched clips. Every stitch is a visible hitch.

Audio

NeedSource
Voiceover / cloningElevenLabs — https://elevenlabs.io
Local TTSnpx hyperframes tts (Kokoro), or Piper
Music (licensed)Epidemic Sound https://epidemicsound.com , Artlist https://artlist.io
SFX (free)Freesound https://freesound.org (check per-file license)
TranscriptionWhisper — https://github.com/openai/whisper , whisper.cpp — https://github.com/ggerganov/whisper.cpp , or npx hyperframes transcribe

Data and web capture

NeedTool
Real screenshots of a live site/appPlaywright MCP — https://github.com/microsoft/playwright-mcp
Maps, satellite, 3D city fly-throughsMapbox — https://mapbox.com (free token tier)
Chartsreal source data; render with Remotion + a chart lib, or the dataviz skill

Utilities

NeedTool
Anything video, on the command lineFFmpeg — https://ffmpeg.org
Background removalu2net / rembg — https://github.com/danielgatis/rembg , npx hyperframes remove-background, or Runway
UpscalingTopaz — https://topazlabs.com , or Magnific

Consistent subjects: train a LoRA

When a face, product, or style must be identical across dozens of shots, reference images are not enough — they drift the moment the angle or lighting changes. Train a small LoRA instead.

Shape of the job:

  1. Collect 15–35 varied, high-quality images of the subject (angles, lighting, distances). Quality and variety beat count.
  2. Pick a rare trigger word — never a common word like face or style, or the model will fire on ordinary prompts. Use something like mkxr_person.
  3. Train against a base model (Flux, SDXL, Qwen-Image and similar). Roughly 1000 steps for a subject is a normal starting point.
  4. Train on rented GPU (fal.ai, Replicate) rather than locally unless you have the hardware — minutes and a couple of dollars versus hours.
  5. Output is a .safetensors file. Drop it in ComfyUI's models/loras/, load it in the workflow, set strength ~0.8–1.0, and include the trigger word in the prompt.

Where it pays off: thumbnails with your own face, a client's product across a campaign, one illustration style across a series, a recurring character in a short-form series.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

blixvip/skills

The motion vocabulary that separates premium animation from AI slop — text pop-blur-fade, sequential staggers, always-moving eased cameras, object entrances, and the timing/easing tables behind them. Includes ready code for Remotion (interpolate/spring) and HyperFrames (GSAP). Use when animating designed frames, when motion "feels stiff", "bouncy", "jittery", "too fast", "too uniform", or when writing any timing/easing code for video.

blixvip/skills

Design the actual frames for motion graphics and generated UI — palette derived from the footage, type pairing, one of five scene archetypes, and the layering order that produces depth instead of flat AI slop. Use when building scenes in Remotion, HyperFrames, After Effects, or any generated-image pipeline (Nano Banana / GPT Image / Seedream), and whenever output "looks AI-generated", "looks flat", "looks like a template", or needs to match a creator's branding.

blixvip/skills

The end-to-end runbook for turning raw footage plus a script into a finished, non-sloppy edit — stage order, quality gates, on-disk artifact layout, engine choice, parallel shot builds, and the ship checklist. Use this as the FIRST skill whenever the ask is "edit this video", "make me a video", "add motion graphics to this", "one-shot this edit", or any request that spans more than a single isolated animation. It sequences motion-plan, motion-assets, motion-design and motion-animate; do not run those ad hoc when a whole edit is in scope.

blixvip/skills

Turn a script or timestamped transcript into a shot-by-shot motion plan — which lines earn an on-screen visual, which stay bare A-roll rest, what each visual must show, and how long it holds. Use BEFORE designing or animating anything in Remotion, HyperFrames, or After Effects. Triggers on "plan this edit", "what should be on screen", "storyboard this script", "beat map", "where do the animations go", or any request to animate a video that arrives without a shot list.

相關技能