Agent skill

Animation Performance Skill for AI Coding Agents

The animation-performance skill diagnoses janky animations by checking whether every frame finishes inside its budget, then fixes the cause instead of guessing.

Install
npx skills@latest add emilkowalski/skills
View on GitHub

Stars, license and last push from GitHub. Install count as reported by the open skills directory.

What is the animation-performance skill?

animation-performance is a skill in emilkowalski/skills that asks one question: does each frame finish in time? It defaults animated properties to transform and opacity, names the cause before changing code, warns that a fast development machine hides jank real users see, and flags setState inside requestAnimationFrame as a common cause of dropped frames.

animation-performance is one skill in emilkowalski/skills. It diagnoses and fixes janky animations by checking whether each frame finishes inside its time budget, leaving easing, duration and overall motion choices to other skills.

The skill takes the stance of a design engineer who ships to real phones rather than a fast development laptop, and treats a smooth animation on that laptop as no proof the same animation holds up on typical hardware.

What changes in the agent's output

  • transform and opacity become the default animated properties, with any other property needing a specific reason attached.
  • A symptom such as stuttering or drag lag gets traced to a named cause, such as a layout-triggering property, before any code changes.
  • transition: all gets replaced with an explicit property list, since the shorthand animates properties nobody meant to touch.
  • setState calls inside requestAnimationFrame get flagged, since each call forces a React re-render on every frame and blows the frame budget.

The frame budget it checks against

60fps leaves about 16.7 milliseconds per frame, or 8 milliseconds on a 120Hz screen. Only transform and opacity skip straight to the cheapest composite stage; other properties trigger layout or paint work first, which costs far more of that budget.

Who the animation-performance skill is for

Best for

  • Projects with an animation that looks fine locally but stutters on real devices.
  • Debugging a specific symptom, such as shadow choppiness or drag lag, down to its cause.
  • React apps animating state with setState instead of writing straight to the DOM.

Not for

  • If your job is mostly choosing easing curves and duration for a new animation, the animate skill is the better fit for that.
  • When the task is keeping GSAP-specific transforms and will-change tidy, the GSAP performance skill is the better fit for that.
  • If your job is mostly running a seven step motion workflow across keyframes and loaders, the CSS animation creator skill is the better fit for that.

Use it with UiChemy

Frame-budget fixes apply to motion already built into a page. Once an animation runs smoothly, UiChemy AI to WordPress carries that front-end build into an editable WordPress page.