animate — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited animate (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.
Create animated videos and motion graphics from a natural language description. Outputs a standalone Vite + React + Framer Motion project that plays in the browser.
Break the user's description into a scene plan:
$ARGUMENTS for the user's animation descriptionAuto-detect the best approach based on the request:
| Request Type | Stack | When to Use |
|---|---|---|
| Product intro, presentation, marketing | Framer Motion (default) | Scene-based with text, icons, transitions |
| Generative art, particles, patterns | p5.js | Creative/algorithmic visuals |
| 3D objects, environments, product renders | Three.js + react-three-fiber | 3D scenes needed |
| Simple text/logo animation | CSS animations only | Minimal, no heavy deps |
Default to Framer Motion unless the request clearly needs something else.
~/animations/[project-name]/bash ~/.claude/skills/animate/scripts/scaffold.sh [project-name] [stack]~/.claude/skills/animate/assets/template-files/ into the projectRead the references for animation presets and scene patterns:
references/animation-presets.md — all available transitions, springs, easingsreferences/scene-patterns.md — example scene code patternsFor each scene, create a React component in client/src/components/video/video_scenes/:
motion.div with scene transition presets (fadeBlur, scaleFade, slideLeft, splitHorizontal, morphExpand, etc.)containerVariants and itemVariants for staggered content revealsvw units for responsive sizing (works at any resolution)var(--color-accent), var(--color-bg-dark), etc.).glass-panel class for frosted glass cards.text-gradient and .text-gradient-accent for gradient textCreate client/src/components/video/VideoTemplate.tsx:
SCENE_DURATIONS object (scene name -> milliseconds)useVideoPlayer hook to manage scene advancementAnimatePresence mode="wait" for smooth transitionscurrentScene indexUpdate client/src/index.css with the right colors:
If GEMINI_API_KEY environment variable is available:
references/gemini-integration.md for API detailscd ~/animations/[project-name]
npm install
npm run devTell the user the animation is running at http://localhost:5173 and open it in the browser.
Pick transitions that match the story beat:
vw units for sizing so animations look good at any resolutionAnimatePresence mode="wait" so one scene exits before the next enters~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.