gsap-performance — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited gsap-performance (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Apply when optimizing GSAP animations for smooth 60fps, reducing layout/paint cost, or when the user asks about performance, jank, or best practices for fast animations.
Related skills: Build animations with gsap-core (transforms, autoAlpha) and gsap-timeline; for ScrollTrigger performance see gsap-scrolltrigger.
Animating transform (x, y, scaleX, scaleY, rotation, rotationX, rotationY, skewX, skewY) and opacity keeps work on the compositor and avoids layout and most paint. Avoid animating layout-heavy properties when a transform can achieve the same effect.
GSAP’s x and y use transforms (translate) by default; use them instead of left/top for movement.
Use will-change in CSS on elements that will animate. It hints the browser to promote the layer.
will-change: transform;GSAP batches updates internally. When mixing GSAP with direct DOM reads/writes or layout-dependent code, avoid interleaving reads and writes in a way that causes repeated layout thrashing. Prefer doing all reads first, then all writes (or let GSAP handle the writes in one go).
Prefer gsap.quickTo() for properties that are updated often (e.g. mouse-follower x/y). It reuses a single tween instead of creating new tweens on each update.
let xTo = gsap.quickTo("#id", "x", { duration: 0.4, ease: "power3" }),
yTo = gsap.quickTo("#id", "y", { duration: 0.4, ease: "power3" });
document.querySelector("#container").addEventListener("mousemove", (e) => {
xTo(e.pageX);
yTo(e.pageY);
});scrub: 1) can reduce work during scroll; test on low-end devices.The upstream GreenSock official skill content above is the primary GSAP guidance. This local overlay adds Codex-specific progressive-disclosure resources, static audit scripts, evals, and portable source metadata. Keep GSAP API behavior aligned with GreenSock's official skill and docs; use this overlay for validation, local boundaries, and report shape.
<!-- skill-resources:start -->
references/official-source.md - Official GreenSock performance skill source. Use this to verify upstream performance guidance.references/property-cost-matrix.md - Property cost and rendering matrix. Use this when classifying transform, opacity, layout, paint, filter, shadow, and text animation risk.references/scroll-performance.md - ScrollTrigger and scroll workload review. Use this for pinned scenes, scrubbed timelines, refresh timing, and scroll callback costs.references/profiling-playbook.md - GSAP profiling and evidence playbook. Read when a GSAP issue is described as jank, dropped frames, layout thrash, or slow scroll.references/layer-budget-and-will-change.md - Layer budget and will-change discipline. Read before adding transform hacks, force3D, will-change, or GPU promotion advice.references/index.md - Complete reference inventory and routing summary.references/source-ledger.md - Portable source list and copy policy.references/provenance.json - Machine-readable provenance and local-resource metadata.scripts/audit.mjs - Self-contained Codex audit CLI with domain-specific GSAP rules.assets/templates/gsap-performance-audit-report.md - GSAP audit response template.assets/templates/gsap-performance-review-checklist.md - GSAP manual review checklist.assets/examples/gsap-performance-starter.md - Minimal starter fixture/example.evals/trigger-queries.json - Trigger/near-miss eval set.evals/evals.json - Task-quality evals with assertions.<!-- skill-resources:end -->
node scripts/audit.mjs doctor --root . --format json
node scripts/audit.mjs scan --root . --format markdown
node scripts/audit.mjs scan --root . --format json --output gsap-performance-audit.jsonTreat script findings as leads. Verify every finding against current code before changing behavior or reporting it as valid.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.