animation-quality-gate — Claude Code skill: how to install
Validates Blender animations with contact sheets and silhouette checks before accepting passes. Catches texture flickering and broken GLB exports.
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a claude-codeWhat animation-quality-gate does
This skill stops agents from accepting an animation just because the render command finished. It audits the output across seven dimensions: subject dominance, layer separation, silhouette stability, texture coherence, easing curves, export parity, and frame aesthetics. An animation pass fails without a contact sheet.
Scene analysis relies on Blender MCP server tools to inspect hierarchy and capture viewport frames. For detailed comparisons, the workflow runs scripts/animation_contact_sheet.py to compile rendered frames into a grid with difference metrics.
Strict gates prevent broken deliverables. If texture swaps rely purely on Blender Python handlers, the skill rejects any claim of GLB compatibility, because that script logic will not survive export.
What it helps with
- build contact sheets and frame difference reports via
scripts/animation_contact_sheet.py - catch texture flickering, crop pops, and erratic silhouette morphs
- verify layer separation between subject, glow, background, and HUD
- block GLB export claims that depend on runtime Blender Python handlers
Example prompts for the agent
- Run animation-quality-gate on the latest Blender render and generate a contact sheet
- The morph looks broken, inspect silhouette stability and layer separation
- Check this animation pass against export constraints before producing GLB files
How to install animation-quality-gate
1Skills CLI (Vercel)
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a claude-code2Manually: put the files in place
~/.claude/skills/animation-quality-gate/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/animation-quality-gate/
1Skills CLI (Vercel)
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a codex2Manually: put the files in place
.agents/skills/animation-quality-gate/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a cursor2Manually: put the files in place
.cursor/skills/animation-quality-gate/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install RobLe3/cc-blender-skill animation-quality-gate2Manually: put the files in place
.github/skills/animation-quality-gate/SKILL.md1Skills CLI (Vercel)
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a gemini-cli2Platform CLI
gemini skills install https://github.com/RobLe3/cc-blender-skill --path plugin/skills/animation-quality-gateManually: put the files in place
.devin/skills/animation-quality-gate/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about animation-quality-gate
How to install animation-quality-gate in Claude Code?
Run npx skills add RobLe3/cc-blender-skill --skill animation-quality-gate -a claude-code. The file will be saved to ~/.claude/skills/animation-quality-gate/SKILL.md.
What does animation-quality-gate do?
It applies strict QA gates to Blender animations, auditing rendered passes with contact sheets, silhouette tracking, and export validity checks.
Which tools are required for animation-quality-gate?
It depends on a configured Blender MCP backend for viewport rendering and scene inspection, alongside the scripts/animation_contact_sheet.py script.
Source text
SKILL.md · MIT
--- name: animation-quality-gate description: Validate Blender animation attempts before accepting them by rendering contact sheets, checking silhouette stability, flicker, framing, subject dominance, layer separation, export compatibility, and motion-design coherence. Use after animation renders or when the user says motion/morph/outside elements look bad. allowed-tools: Read Bash Glob Grep mcp__blender__execute_blender_code mcp__blender__get_scene_info mcp__blender__get_object_info mcp__blender__get_objects_summary mcp__blender__get_object_detail_summary mcp__blender__render_viewport_to_path mcp__blender__search_api_docs mcp__blender_official__execute_blender_code mcp__blender_official__get_objects_summary mcp__blender_official__get_object_detail_summary mcp__blender_official__render_viewport_to_path mcp__blender_official__search_api_docs --- ## MCP backend Use when: Animation QA, contact-sheet review, motion critique, morph validation, texture flicker detection, storyboard checks, rejecting bad animation passes, pre-export animation acceptance gates. Before the first Blender call, read [../text-to-blender/references/mcp-backends.md](../text-to-blender/references/mcp-backends.md). Prefer official MCP for shared capabilities; preserve the selected backend for the whole task. Tool names in recipes are client/legacy examples: map them through that reference and its agent-host guide. # Animation Quality Gate Do not accept an animation because it rendered. Accept it only after a contact sheet and failure analysis pass. ## Review dimensions 1. **Subject dominance** — the main asset remains readable and is not overwhelmed by HUD/context. 2. **Layer separation** — base subject, texture state, glow, HUD, and background are separate enough to control. 3. **Silhouette stability** — silhouette stays constant unless deliberate morph is specified. 4. **Texture coherence** — no ugly full-image crossfade, crop pop, or unregistered morph. 5. **Motion coherence** — arcs/dots have a reason, restrained speed, and coherent easing. 6. **Export truth** — the final export can reproduce the effect or limitations are explicit. 7. **Frame aesthetics** — sampled frames look good as stills. ## RALPH trigger If a user calls an animation ugly/bad, stop rebuilding immediately. First: - collect preview frames/contact sheet; - identify the failed dimension(s); - invoke `quality-refinement-autoloop` if the stack lacks a method; - add/refine generic skills only after sanitization; - only then rebuild the animation. ## Hard gates - No final animation without a contact sheet. - No GLB claim for texture swaps implemented only with Blender Python handlers. - No decorative context elements in base avatar export unless requested. - No morph that violates locked geometry constraints. ## Scripts - `scripts/animation_contact_sheet.py` builds a contact sheet and frame-to-frame difference report from rendered frames.
© RobLe3 · MIT · RobLe3/cc-blender-skill