# Onetake

Make short product / skill motion videos (10, 30 s, narrated feature demos up to ~60 s)...

- Repository: https://github.com/feitangyuan/onetake (3608 stars)
- Category: Design
- License: see repository
- Last updated: 2026-10-21
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add feitangyuan/onetake --skill onetake -g -a claude-code -y`
Codex: `npx skills add feitangyuan/onetake --skill onetake -g -a codex -y`
Cursor: `npx skills add feitangyuan/onetake --skill onetake -g -a cursor -y`
Gemini CLI: `npx skills add feitangyuan/onetake --skill onetake -g -a gemini-cli -y`

## Description

Make short product / skill motion videos (10, 30 s, narrated feature demos up to ~60 s) the way high-end launch clips are made, kinetic type, real UI as the material, a hand that causes every reaction, beats that carry into each other instead of replacing each other, hard cuts only where they mean something, without HyperFrames or Remotion. A single HTML composition where every value is a pure function of time, built from a library of measured moves (springs, entrances, carries, contact, camera), rendered frame by frame with real shutter motion blur (1080p30 drafts, 4K60 final), with synthesised sound effects that share one room and an oracle that fails a slideshow before a human has to watch it. Use for 做个动效短片 / 产品宣传片 / 介绍视频 / 发布视频 / 15 秒 launch video / 给 skill 或 app 做个视频 / promo / teaser, for turning real pages or screen recordings into a cut, for product feature demos (产品功能演示 / 功能展示动效) where the UI is rebuilt in HTML from screenshots instead of screen-recorded (不录屏 / 复刻界面 / 截图还原 UI), for narrated cuts with voice-over and subtitles (配音 / 字幕 / 换配音) and for the same film in other languages (日语版 / 多语言 / 本地化), for adding motion vocabulary (动效库 / 转场 / 衔接), and for auditing why a motion video reads as a slideshow (像 PPT / 没节奏 / 一个一个展示 / 转场生硬).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# onetake

Short motion films about a product, built from the product. Not a video editor, not a slideshow
generator: a **composition** (one HTML file, `window.__seek(t)`), a **move library** (`lib/motion.js`),
**footage** recorded from the real thing, a **sound palette** that shares one room, and an **oracle**
that says whether the cut has a rhythm and whether it carries, before a human has to watch it.

Six films taught it. **motion-web** took three cuts: one and two were rejected as 「PPT 式一个一个展示」
for a uniform cadence, the rhythm half. **Pocket Weather Club** had the rhythm and was *still* PPT: its v1
passed every rhythm check and was rejected, because each beat replaced the one before. v3 was accepted when
every beat grew out of the last, the character lands on the headline, the page grows out of its card, a
stage opens from the character. That is the carry half. **One dot** added the operator: with a still camera it was
「就缺灵动的跟踪运镜」; with a camera that chases what each beat frames, lagging, leaning, settling, it was
「运镜、镜头和物理都没问题」. **knockon** carried by cause: a light tabletop machine where every beat is the collision
that starts the next. **clearing** carried by scale: one take from a year to a free half hour and back, a camera that
chases the anchor on screen so it lands the same at 1× and 300×. **overlap** was the meaning lesson: its first cut was
「美术挺棒但没看出来啥意思」, and adding labelled cursors made it worse; it read only once the idea was built into the
artwork, an & hidden in two noise plates that appears at the instant the passes come into register. Everything here
exists so the next film starts where those films ended.

## When this skill, and when not

The rest: https://github.com/feitangyuan/onetake/blob/HEAD//SKILL.md
