Agent skill

Recreate

by KumarSashank in KumarSashank/motiscope

Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG.

MITAuto-check: notesFrontend & Design

Install Recreate

skills CLI
$ npx skills add KumarSashank/motiscope --skill recreate -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install KumarSashank/motiscope recreate --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/KumarSashank/motiscope.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/recreate .claude/skills/recreate && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
recreate
GitHub stars
122
Token cost
~1.8k tokens
SKILL.md length
895 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
MIT

At a glance

Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG.

  • Works in 6 steps: load the animation spec → choose the target → generate the code → …
  • Asks to build/recreate this animation in <framework
  • SKILL.md covers Resolve the plugin root, Step 1 — load the animation spec, Step 2 — choose the target and Step 3 — generate the code, plus 3 more sections
  • Calls python3; needs GEMINI_API_KEY

What it does

Recreate is an agent skill from KumarSashank/motiscope. Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG. Use after /motiscope:analyze, or when the user asks to "build/recreate this animation in <framework". Reads the motiscope animation spec and emits a runnable component.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design, covering Web animation and motion and Motion graphics. It works with GSAP, Lottie, Motion and React. The repository describes itself as: Recreate any web animation from a screen recording. A motion-design plugin: analyzes motion (timing, easing, stagger, loops) and rebuilds it as GSAP / CSS / Framer Motion /… The licence is MIT.

When your agent uses it

  • Asks to build/recreate this animation in <framework
  • Tasks that involve Web animation and motion
  • Tasks that involve Motion graphics

Example prompts

  • “build/recreate this animation in <framework”
  • “/recreate”

Requirements

  • Python 3
  • A credential in GEMINI_API_KEY
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Edit, AskUserQuestion

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. load the animation spec
  2. choose the target
  3. generate the code
  4. asset check (consent flow)
  5. write the output
  6. tell the user how to preview + what to tune

What it can do on your machine

Read from SKILL.md and the folder at commit c0ce3dd. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Edit
    • AskUserQuestion

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GEMINI_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Recreate loads about 1.8k tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 895 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~77
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Edit, AskUserQuestion

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from KumarSashank/motiscope at commit c0ce3dd, republished under its MIT licence (© KumarSashank). 895 words, ~1,806 tokens.

Download SKILL.mdSave it as .claude/skills/recreate/SKILL.md (or your agent's skills folder).
name
recreate
description
Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG. Use after /motiscope:analyze, or when the user asks to "build/recreate this animation in <framework>". Reads the motiscope animation spec and emits a runnable component.
allowed-tools
Bash, Read, Write, Edit, AskUserQuestion
argument-hint
[gsap|css|framer|lottie] [output-dir]
user-invocable
true

motiscope: recreate

Translate a motiscope animation spec into real, runnable animation code for one target framework. Timing and easing come from the measured spec; you render it faithfully.

<!-- motiscope:preamble:start -->

Resolve the plugin root

bash
ROOT="${CLAUDE_PLUGIN_ROOT:-}"
[ -f "$ROOT/scripts/config.py" ] || ROOT="<absolute dir of this SKILL.md>/../.."   # skills/recreate -> plugin root

SCRIPTS="$ROOT/scripts", REFS="$ROOT/references". On Windows use python for python3.

<!-- motiscope:preamble:end -->

Step 1 — load the animation spec

  • If /motiscope:analyze just produced a spec in this conversation, use it.
  • Otherwise locate the most recent analysis and read it:
    bash
    ls -t .motiscope/*/manifest.json 2>/dev/null | head -1
    Read that manifest.json (and its sibling motion.json for the raw energy curve / segments). If there is none, run /motiscope:analyze first.

Step 2 — choose the target

  • From $1 if given (gsap | css | framer | lottie).
  • Otherwise read the default and ask:
    bash
    python3 "$SCRIPTS/config.py"   # prints config incl. default_target
    Ask the user (AskUserQuestion) to confirm the target (offer all four; default from config).

Then Read the target guide and the easing map:

  • Read "$REFS/easing-map.md" — maps each neutral ease token to a concrete value in every target.
  • Read "$REFS/targets/<target>.md" — the rendering template for that target.
  • Read "$REFS/measurement-traps.md" — if you are deriving any number yourself (a velocity, a parallax ratio, a period) rather than reading it from report.md.

Step 3 — generate the code

Split of responsibility (mirror the spec):

  • Timing is measured — use it exactly. start_ms, dur_ms, the bezier, stagger each_ms, loop period_ms come from motiscope's analysis; wire them verbatim (prefer the exact cubic-bezier over a named ease).
  • The effect is yours — build what the spec's animation field and the frames describe. You are not limited to opacity/translate/scale. If the animation is a mask/clip-path reveal, an SVG path draw, a morph, a 3D flip, a text split/typewriter, a blur or color shift, a parallax, a spring/physics bounce, or particles — build that directly in the target, going beyond the spec's simple props when needed. Re-Read the frames if you need to confirm the effect.

Map each timeline entry to the target (per-element from/to, the measured dur_ms/start_ms/bezier, stagger), then implement the described effect.

<!-- motiscope:claude-only:gsap-skills:start -->

GSAP defers to the official GSAP skills — do not hand-roll GSAP guidance:

  • Invoke gsap-timeline to build the sequence (position parameter, nesting).
  • Invoke gsap-core for individual tweens, eases, and defaults.
  • Invoke gsap-scrolltrigger only if the spec has "scroll_driven": true.
  • Invoke gsap-react if the user's project is React/Next.
  • Invoke gsap-utils for stagger / interpolation helpers. Your job is to feed those skills the exact inputs from the spec; theirs is to produce idiomatic GSAP.
<!-- motiscope:claude-only:gsap-skills:end -->

For css, framer, lottie, follow the corresponding references/targets/<target>.md template.

Always include a prefers-reduced-motion: reduce guard that drops the element(s) into their final state.

If the spec is scroll_driven: bind the motion to scroll position, not to a timer. A layer with parallax factor f translates by scroll x (1 - f); at f = 0 it is pinned, at f = 1 it rides the page. A time-driven object inside a scroll-driven scene (a train, a marquee) can be bound to scroll too — derive its constant from the recorded ratio, and say in your summary that the binding is a design decision rather than something the source did.

A backdrop must not have an edge. Anything that reads as behind everything — a sky, a page gradient, a vignette — belongs to the container, not to a moving layer. A gradient drawn as a <rect> inside a parallax layer has a top edge, and any travel large enough slides that edge into frame. If you are clamping travel to keep a background from being uncovered, you are bounding the symptom; remove the edge instead. And beware composition you never chose: tracing a frame recovers ridge shapes and layer speeds, never where the horizon should sit. That part is yours — say so.

Verify in the substrate, not in your own render. Re-measuring pixels of your own output is a second chance to be wrong the same way. Ask the runtime what it actually resolved — getBoundingClientRect, getComputedStyle, getBBox, DOMMatrix — and check the numbers against the spec. A layer's on-screen speed relative to the page is its parallax factor; that is a proof, a screenshot is not.

Show full SKILL.md (265 more words)Show less

If the spec references an image/video asset (a hero image, a looping background, a texture), resolve it before writing code — ask the user (AskUserQuestion):

  1. Point at an existing file the user already has (preferred) — wire its path in.
  2. Generate one — check what's configured, then generate:
    bash
    python3 "$SCRIPTS/assetgen.py" --check
    python3 "$SCRIPTS/assetgen.py" generate --type image --provider <name> --prompt "<desc>" --out "<path>"
    If no key is configured, ask the user (AskUserQuestion) for the provider and hand off to /motiscope:doctor to store the key. Image generation is real via the gemini/imagen provider (Imagen through the Gemini API — set GEMINI_API_KEY); pass --aspect-ratio 16:9|4:3|1:1|3:4|9:16. Other providers still write a labeled placeholder — if you get one, tell the user to use gemini or swap in a real asset.
  3. Use a placeholder — a neutral colored box, and note it.

Never write API keys into generated code or commit them.

Step 5 — write the output

Write to [output-dir] ($2), default ./motiscope-output/<target>/. Include a minimal runnable harness so the user can preview immediately:

  • gsap / css → a self-contained index.html (CDN GSAP for the gsap target) that plays the animation on load.
  • framer → a .tsx component plus a one-line usage note (and the framer-motion install command).
  • lottie → the animated SVG (or .json) plus a note on how to embed/play it.

Step 6 — tell the user how to preview + what to tune

  • Give the exact preview step (e.g. "open motiscope-output/css/index.html").
  • List which values are exact (timing, easing, sequence — measured) vs estimated (transform magnitudes, colors, overshoot — eyeballed from frames) so they know precisely what to nudge. Offer to iterate.

© KumarSashank, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/recreate of KumarSashank/motiscope.

Open the folder on GitHubat commit c0ce3dd

Compare with similar skills

Recreate next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Recreate compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Recreate this skillKumarSashank/motiscope122—~1.8kAutomated safety check: NotesMIT
Motion DesignLottieFiles/motion-design-skill2k1 repos~3.1kAutomated safety check: PassMIT
Animate Textpixel-point/animate-text1491 repos~1.6kAutomated safety check: PassNone
Lottie Animation Integrationfreshtechbro/claudedesignskills994—~4.5kAutomated safety check: PassMIT
Gsap Framer Scroll Animationgithub/awesome-copilot40k1 repos~1.6kAutomated safety check: PassMIT
GSAP Core Animationgreensock/gsap-skills16k4 repos~3.7kAutomated safety check: PassMIT

Similar skills

  • Motion Design

    LottieFiles/motion-design-skill

    Applies motion design principles to create emotionally-driven, technically sound animations and transitions.

    2k GitHub starsUsed in 1 repo~3.1k tokens
    Frontend & DesignAuto-check passed
  • Animate Text

    pixel-point/animate-text

    Curated text animation catalog with exact JSON specs for headings, labels, counters, and text swaps.

    149 GitHub starsUsed in 1 repo~1.6k tokens
    Frontend & DesignAuto-check passed
  • Lottie Animation Integration

    freshtechbro/claudedesignskills

    Implements After Effects Lottie animations in web and React apps: picking JSON or dotLottie format, a rendering library, and a data source, with an optimizer script.

    994 GitHub stars~4.5k tokensUpdated 10 mo ago
    Frontend & DesignAuto-check passed
  • Gsap Framer Scroll Animation

    github/awesome-copilot

    Official

    A skill your agent uses whenever the user wants to build scroll animations, scroll effects, parallax, scroll-triggered reveals, pinned sections, horizontal scroll, text animations, or any motion…

    40k GitHub starsUsed in 1 repo~1.6k tokens
    Frontend & DesignAuto-check passed
  • GSAP Core Animation

    greensock/gsap-skills

    Covers the GSAP core API for tweens, easing, staggers, defaults and matchMedia, and when to choose GSAP over CSS animations or other JavaScript animation libraries.

    16k GitHub starsUsed in 4 repos~3.7k tokens
    Frontend & DesignAuto-check passed
  • Silk Design

    bendrape1-byte/silk-design

    Build websites and web UI with smooth, polished, high-end motion by default — the buttery feel of premium sites, not static slop.

    138 GitHub stars~1.8k tokensUpdated 1 mo ago
    Frontend & DesignAuto-check passed

More from KumarSashank/motiscope

All 8 skills in this repo
  • Analyze

    KumarSashank/motiscope

    Analyze a screen recording of an animation to characterize its motion — timing, easing, transforms, and sequencing — so it can be recreated as web code.

    122 GitHub stars~3.1k tokensUpdated 2 mo ago
    Auto-check: notes
  • Doctor

    KumarSashank/motiscope

    Check and configure motiscope — verify ffmpeg/ffprobe are installed and scaffold the API-key config used for optional (stubbed) asset generation.

    122 GitHub stars~736 tokensUpdated 2 mo ago
    Auto-check: notes
  • Motiscope Analyze

    KumarSashank/motiscope

    Analyze a screen recording of an animation to characterize its motion — timing, easing, transforms, and sequencing — so it can be recreated as web code.

    122 GitHub stars~3.3k tokensUpdated 2 mo ago
    Auto-check passed
  • Motiscope Doctor

    KumarSashank/motiscope

    Check and configure motiscope — verify ffmpeg/ffprobe are installed and scaffold the API-key config used for optional (stubbed) asset generation.

    122 GitHub stars~936 tokensUpdated 2 mo ago
    Auto-check: notes
  • Motiscope Rebuild Site

    KumarSashank/motiscope

    Rebuild a whole landing page / multi-section website from a screen recording that scrolls or walks through it.

    122 GitHub stars~2.1k tokensUpdated 2 mo ago
    Auto-check passed
  • Motiscope Recreate

    KumarSashank/motiscope

    Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG.

    122 GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Recreate

What does Recreate do?

Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG. Recreate is an agent skill from KumarSashank/motiscope. Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG.

When should I use Recreate?

Recreate fits situations like: asks to build/recreate this animation in <framework; tasks that involve Web animation and motion; tasks that involve Motion graphics.

How do I install Recreate in Claude Code?

Run `npx skills add KumarSashank/motiscope --skill recreate -a claude-code`. Or copy the skill folder (skills/recreate in KumarSashank/motiscope) into .claude/skills/recreate in your project. Claude Code loads it when a task matches its description.

How do I install Recreate in Codex?

Run `npx skills add KumarSashank/motiscope --skill recreate -a codex`. Or copy the skill folder (skills/recreate in KumarSashank/motiscope) into .agents/skills/recreate in your project. Codex loads it when a task matches its description.

Can I use Recreate in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add KumarSashank/motiscope --skill recreate -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/recreate, .gemini/skills/recreate, .github/skills/recreate and .opencode/skills/recreate in your project.

What does Recreate need to run?

Going by SKILL.md and its folder, Recreate needs the command-line tools its instructions call (python3) and credentials named GEMINI_API_KEY. Our summary lists: Python 3; A credential in GEMINI_API_KEY. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, AskUserQuestion.

Does Recreate access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Recreate safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Recreate use?

Recreate is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Recreate use?

About 1.8k tokens (SKILL.md is roughly 7.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Recreate?

Skills that share tags, products or a category with Recreate: Motion Design (LottieFiles/motion-design-skill, 2k stars), Animate Text (pixel-point/animate-text, 149 stars), Lottie Animation Integration (freshtechbro/claudedesignskills, 994 stars) and Gsap Framer Scroll Animation (github/awesome-copilot, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Recreate?

KumarSashank (a GitHub user) maintains it in KumarSashank/motiscope, which has 122 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on July 28, 2026.

Source: KumarSashank/motiscope on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.