gsap-skills

Official AI skills for GSAP. These skills teach AI coding agents how to correctly use the GSAP (GreenSock Animation Platform), including best practices, common animation patterns, and plugin usage.

Skills follow the Agent Skills format and work with the skills CLI (Cursor, Claude Code, Codex, Windsurf, GitHub Copilot, and others).

Installing

These skills work with any agent that supports the Agent Skills standard, including Claude Code, Cursor, and others.

Claude Code

Install using the plugin marketplace:

/plugin marketplace add greensock/gsap-skills

Cursor

Install from the Cursor Marketplace or add manually via Settings > Rules > Add Rule > Remote Rule (Github) with greensock/gsap-skills.

npx skills

Install using the npx skills CLI:

npx skills add https://github.com/greensock/gsap-skills

Clone / Copy

Clone this repo and copy the skill folders into the appropriate directory for your agent:

Agent Skill Directory Docs
Claude Code ~/.claude/skills/ docs
Cursor ~/.cursor/skills/ docs
OpenCode ~/.config/opencode/skills/ docs
OpenAI Codex ~/.codex/skills/ docs
Pi ~/.pi/agent/skills/ docs

Skills

Skill Description
gsap-core Core API: gsap.to() / from() / fromTo(), easing, duration, stagger, defaults
gsap-timeline Timelines: sequencing, position parameter, labels, nesting, playback
gsap-scrolltrigger ScrollTrigger: scroll-linked animations, pinning, scrub, triggers, refresh & cleanup
gsap-plugins Plugins: ScrollToPlugin, ScrollSmoother, Flip, Draggable, Inertia, Observer, SplitText, ScrambleText, SVG & physics plugins, CustomEase, EasePack, GSDevTools, etc.
gsap-utils gsap.utils: clamp, mapRange, normalize, interpolate, random, snap, toArray, selector, wrap, pipe, and other helpers
gsap-react React: useGSAP hook, refs, gsap.context(), cleanup, SSR
gsap-performance Performance: transforms over layout props, will-change, batching, ScrollTrigger tips
gsap-frameworks Vue, Svelte, etc.: lifecycle, scoping selectors, cleanup on unmount

Quick reference — Canonical snippet for AI agents

When suggesting or generating GSAP code, use this pattern as the shared starting point:

// 1. Imports and plugin registration (once per app)
import { gsap } from "gsap";
import { ScrollTrigger } from "gsap/ScrollTrigger";
gsap.registerPlugin(ScrollTrigger);

// 2. Single tween — prefer transform aliases and autoAlpha
gsap.to(".box", { x: 100, autoAlpha: 1, duration: 0.6, ease: "power2.inOut" });

// 3. Timeline for sequencing (prefer over chained delay)
const tl = gsap.timeline({ defaults: { duration: 0.5, ease: "power2" } });
tl.to(".a", { x: 100 })
  .to(".b", { y: 50 }, "+=0.2")
  .to(".c", { opacity: 0 }, "-=0.1");

// 4. ScrollTrigger — attach to timeline or top-level tween; call refresh after layout changes
const tl2 = gsap.timeline({
  scrollTrigger: {
    trigger: ".section",
    start: "top center",
    end: "bottom center",
    scrub: true
  }
});
tl2.to(".panel", { x: 100 })
   .to(".panel", { rotation: 5, duration: 0.7 });
// After DOM/layout changes: ScrollTrigger.refresh();

// 5. React: useGSAP + scope + cleanup (no selector without scope)
// import { useGSAP } from "@gsap/react";
// gsap.registerPlugin(useGSAP);
// useGSAP(() => { gsap.to(ref.current, { x: 100 }); }, { scope: containerRef });
// Or: useEffect(() => { const ctx = gsap.context(() => { ... }, containerRef); return () => ctx.revert(); }, []);

Structure

gsap-skills/
  README.md
  AGENTS.md          # Guidance for agents editing this repo
  .github/
    copilot-instructions.md   # Repo-wide instructions for GitHub Copilot
    instructions/             # Path-specific Copilot instructions
      react.instructions.md
      scrolltrigger.instructions.md
  .claude-plugin/    # Claude Code plugin config (plugin.json, marketplace.json)
  .cursor-plugin/    # Cursor plugin config (plugin.json, marketplace.json)
  assets/            # Logo and icon assets (e.g. gsap-green.svg, gsap-icon-square.svg)
  skills/
    llms.txt         # Skill index for agents (names, summaries, trigger terms)
    gsap-core/       SKILL.md
    gsap-timeline/   SKILL.md
    gsap-scrolltrigger/ SKILL.md
    gsap-plugins/    SKILL.md
    gsap-utils/      SKILL.md
    gsap-react/      SKILL.md
    gsap-performance/  SKILL.md
    gsap-frameworks/ SKILL.md
  examples/         # Minimal reference demos (vanilla + React)

GitHub Copilot

Copilot does not automatically use Cursor/Claude skill files. To give GitHub Copilot GSAP-aware guidance in a repo that uses this project (or in this repo), use Copilot’s own instruction files:

  • Repository-wide: .github/copilot-instructions.md — imports, timelines, transforms, from()/fromTo(), ScrollTrigger, React, cleanup.
  • Path-specific: .github/instructions/ — react.instructions.md (React/JSX/TSX), scrolltrigger.instructions.md (scroll-related files). These apply when the file path matches the configured globs.

The instruction files are kept concise and actionable (bullets, not full reference) so Copilot can use them reliably; GitHub’s code review feature only uses the first 4,000 characters of each file. For full guidance (config tables, examples, Do Not / Best practices), use the skills in skills/ with an agent that supports the Agent Skills format (Cursor, Claude Code, etc.), or install this repo as a skill.

Copy or adapt the .github/ files into your repository so Copilot uses them. See GitHub’s custom instructions docs.

Compatibility

  • skills CLI — installs into Cursor, Claude Code, Codex, Windsurf, GitHub Copilot, and 40+ agents
  • Agent Skills spec — SKILL.md format and discovery
  • GitHub Copilot — use .github/copilot-instructions.md and optional .github/instructions/*.instructions.md (included in this repo)

Risk level

LOW — GSAP is an animation library with a minimal security surface.

License

MIT

Languages
Markdown 100%