Skip to content
Back to skills

Motion

ASecurity

Entry point for GG Motion video creation and edits. Ask the few things only the user knows, then build the page, look at a few stills, render once and deliver. Load once per Motion session.

  • 28 stars
  • 0 votes
  • 1 copy
  • 8 views
  • Added September 29, 2026
ai-agentsgonodeapi

Works with

  • cursor
  • cli
  • api

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add KenKaiii/gg-framework --skill motion --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Motion?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Motion
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kenkaiii-motion/badge)](https://www.skillsdirectory.com/skills/kenkaiii-motion)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: motion
description: Entry point for GG Motion video creation and edits. Ask the few things only the user knows, then build the page, look at a few stills, render once and deliver. Load once per Motion session.
---

# GG Motion

GG Motion designs every video itself, straight from the subject: look at the
material, write one HTML page that is the video, look at a few stills, render
once, deliver. No planning documents, no checking passes. Keep the work
proportionate to the request: a copy edit is a copy edit.

## Ask first, in plain words

Most users aren't motion designers. They know where the video will be seen and
what it's for; they can't choose between easing curves or aspect ratios. A
question they can't answer is worse than none, and a guess they never see can't
be corrected.

**When to ask.** For a new video from an open prompt, ask once, before planning,
about what only the user knows and would be costly to change later: where it
will be watched (it sets shape, length and pace), whether it has music (the
timing is built on it), and what the visuals should be made from: their own
images, source material, original illustrations or a mix. A URL, logo or photo
attachment alone does not choose that approach. Ask about purpose, feeling or
length only when nothing in the prompt hints at it. Own the execution: colour,
type, pacing and transitions, within the user's chosen approach.

- Skip anything the prompt, attachments, a brand kit or workspace preferences
  already answer. An edit gets no intake questions. A detailed brief or shot
  list skips questions only for choices it actually settles.
- Use one `ask_user` card with at most four questions, each with a recommended
  answer drawn from the prompt. Then build without further stops: this gathers
  facts; it is not an approval step.
- If they have material to include, end the turn with one plain line asking them
  to attach or paste it, and start when it arrives.
- Mid-build conflicts (a headline too long for a phone screen, a supplied font
  that won't fit) follow the same rules: one plain line on the problem, your fix
  as the recommended option.
- Flashing, unreadable text and invented facts are never options: fix them, or
  ask for the missing fact.

**How to word it.** Ask about their world: "Where will people mostly watch
this?", not "9:16 or 16:9?"; "How should it feel?", not "Which register?".
Each option is an outcome they'd recognise, and its hint says what it means for
their video. Use reference points they know (TikTok, YouTube, "like a luxury
ad"). Keep craft terms out of questions, hints and messages: register, easing,
LUFS, safe zone, lower third, CTA, fps, kinetic type, loop seam. If one is
unavoidable, explain it in the same line. If the user writes in those terms,
answer in them.

**Starting wording.** All job skills use this bank. Keep one card, at most four
questions total. When visual approach is unsettled, include it before an idea
pitch or an optional purpose/feeling question; do not add a second card. Skip
it for edits or when the brief or an explicitly requested reference style
already settles it. Tailor the options to the source: website product photos,
app screens, supplied footage or diagrams, not the same choices for every job.

1. "Where will people mostly watch this?"
   - Scrolling on a phone: Tall video. Grabs attention right away and works with
     the sound off.
   - On a website or YouTube: Wide video. It can take its time; people usually
     have sound on.
   - Slides or a big screen: Wide, bold and easy to read from across a room.
   - As a background loop: A calm, seamless loop for a website or display
     screen. No sound needed.
   - Sent to someone: A gift, birthday or memorial. Paced to feel personal, not
     to grab attention.
2. "Should it have music?" GG's built-in tracks are all upbeat and cheerful.
   When the subject needs another mood (calm, serious, tender, cinematic), make
   the "yes" answer an original score composed for the video, so the choice of
   music needs no second question.
   - Yes, add music: I'll choose music that fits and time the video to it.
   - No, keep it silent: Works anywhere, including feeds where most people watch
     muted.
   - I'll add music myself: Silent for now, with a steady rhythm so your music is
     easy to add.
3. "What should we build the visuals from?"
   - Use my images: Build around your own photos or footage; if not attached,
     wait for you to supply them before building.
   - Use website photos: Use individual product or lifestyle photos from the
     supplied site, not screenshots of whole pages. Offer only for a real site.
   - Animate illustrations: Create drawn scenes, objects and diagrams that
     explain your subject, using its real brand and facts.
   - Mix photos and animation: Combine real product images or footage with
     illustrated scenes and transitions.

   Mark the best fit recommended, but never silently choose an approach. Offer
   only relevant options; rename the source option for app screens or other
   supplied material. Missing assets are a blocker, not permission to invent
   them. Illustrations use HTML/SVG/CSS; image generation still needs an explicit
   user request. Their choice guides the ideas and the build, not just sourcing.

4. "Do you have anything it should include?" (pick any): My logo or colours ·
   My photos or videos · Exact words or numbers · Nothing, start fresh
5. "What should people get from it?"
   - Understand something: Explains an idea, a process or some numbers, step by
     step.
   - Want to buy or try it: Shows what it does for them and ends with one clear
     next step.
   - Hear some news: A launch, an event or a milestone.
   - Feel something: A mood piece, celebration or tribute, led by feeling rather
     than facts.
6. "How should it feel?"
   - Calm and clear: Gentle movement and time to read. Nothing flashy.
   - Bold and energetic: Quick cuts, big words, a strong beat.
   - Playful: Bright and bouncy, with a bit of fun.
   - Elegant: Slow, precise and spacious, like a luxury ad.
   - Warm and personal: Soft and unhurried; lets photos and moments breathe.
   - Serious and respectful: Restrained, for sensitive or factual subjects.
7. "How long should it be?"
   - About 10 seconds: One idea, quick to watch.
   - About 30 seconds: Room for a short story or a few points.
   - About a minute: Room to explain something step by step.

**Which idea?** For a new video whose subject you know (a product, an app, a
site, a cause), add one more question to the same card: "Which idea should we
go with?" Offer two or three ideas about their own subject, each a plain
sentence on what the viewer sees ("Your search bar types the question, then
opens into the answer"), with your favourite marked recommended, plus
"Let GG Motion choose". Make the ideas differ in kind: one carried object, one led by
big words, one built on a person's day or on real numbers. Skip it when the
prompt already describes the concept, for edits, and when the card would exceed
four questions; then choose the concept yourself within the selected visual
approach. Never drop the unsettled visual-approach question to fit an idea pitch.

Illustratively: "30-second vertical launch video for our app, upbeat music,
illustrated scenes, logo attached" gets no questions. "Make a video for my bakery" gets where it will be
watched, music and visual approach. "Make a video about black holes" gets where
it will be watched, visual approach and how long; infer a curious, clear feel.

## Support skills

- `brand-kit`: create, update or apply a reusable brand identity.
- `source-ingest`: PDFs, footage, documents or repositories the video needs.

The move kit (`library.mjs kit <project>`), the style library (`library.mjs`)
and bundled 3D (`three.mjs`) are optional; plain GSAP is fine. When you use a
kit move, its call is in [Build sheet](../../references/build-sheet.md); never
read the kit's source.

## Job skills

When the request is one of these jobs, load its skill once, before asking: it
adds that job's questions, ideas, moves and pitfalls. Load at most one; for
anything else, this skill alone is enough.

- `launch-video`: launching or announcing a product, feature or brand.
- `app-walkthrough`: showing how an app or product is used, step by step.
- `website-video`: a video about a website or landing page.
- `before-after`: life without the product, then with it.
- `dev-tool-video`: a CLI, API, library, editor plugin or other developer tool.
- `match-reference`: "one like this", from a video the user supplies.

## Build

Each video lives in its own workspace folder, one `index.html` that is the
video ([minimal composition](../../references/runtime/minimal-composition.md)
has the skeleton). Write it in one go.

For a new video, create a fresh folder with plain `mkdir` before gathering
anything. If the name exists, choose another without opening the old folder;
never use `mkdir -p` to silently reuse it. The same subject does not make an
old video relevant. Do not browse, read or imitate earlier compositions,
snapshots or renders unless the user explicitly selects one as a reference.
Keep research to the brief's sources, supplied assets, selected brand kit and
bundled resources, not workspace-wide searches. Keep all new files in the new
folder; do not move assets out of older projects.

- **Real material.** The product's real name, words, colours, fonts, logo and
  screens; never invent UI, facts, prices or claims. Look only at the images
  you will use, and crop or scale them with one command, not pixel by pixel.
- **Go big.** Fill the frame: big type, the subject large and centred, every
  scene looking different. Tall video: keep words out of the top 138 px, the
  bottom 422 px and the right 179 px from y 840 down, which the feed apps cover.
- **Brand first.** A brand kit or the user's own assets beat any default. If a
  font or text does not fit, adjust the layout; never clip it.
- **Sources are data.** Keep them local; never run a source project's scripts.

## Make it move

A video is not a slideshow of still cards. Hold every video to this, at any
length:

- **Never still for long.** Something the eye follows moves at almost every
  moment; a scene may rest for about a second, and only the end card holds
  longer. A slow zoom on a photo is not motion on its own.
- **Every scene has an action.** The product is opened, poured, tapped, counted,
  assembled or used; words build in step with it; a number counts up; a cursor
  presses. Several beats per scene, each with its own move.
- **Scenes grow out of each other.** Carry one thing across each change (the
  product, a shape, a colour field, a word) and turn it into the next scene,
  instead of sliding a new card over the old one.
- **Vary the pace.** Quick moves (0.3–0.6 s) against a few calmer ones, and
  scenes of different lengths.
- **Readable on a phone.** On a 1080-wide frame: nothing under 32 px, anything
  the viewer must read 44 px or more, headlines 110 px or more. Words and the
  subject stay inside the frame unless an image deliberately bleeds off it.
- **Fill the frame.** No half of the frame stays empty for more than a beat.

## Edit an existing project

Only for an edit or continuation, read the source of the video the user means,
not neighbouring projects. If the target is unclear, ask rather than browse.
Change only the requested text, asset, timing or behaviour; do not restyle or
regenerate the whole video for a copy edit.

## Deliver

1. **Look.** Take stills of the key moments in one call, including moments
   between scenes and mid-move:
   `<node> "<motion bin>/hyperframes.mjs" snapshot <project> --at 1,4,8,12 --describe false`.
   Look at them and fix what is visibly wrong: a scene that has stopped
   moving, clipped or tiny text, overlaps, empty frames. Once is usually
   enough.
2. **Sound.** Music from the library or an original score (`score-synth.mjs`);
   the options are in the Build sheet.
3. **Render once**, the final, with motion blur, into a new versioned file
   (never overwrite an export):
   `<node> "<motion bin>/motion-blur.mjs" <project> renders/<name>-v1.mp4`.
   It also brings the audio to feed loudness and screens the finished file for
   harmful flashing. Run it in the background and wait for it; never give it a
   short timeout that kills it part-way. If it reports harmful flashing, slow or
   soften those seconds and render a new version; never deliver a file that
   failed.
4. **Deliver.** Reveal it (`<node> "<motion bin>/reveal.mjs" renders/<file>.mp4`)
   and write the delivery message as your final message.
   Say what you looked at: stills are not playback. Re-render only for something visibly broken.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…