feat(character-animation): add local rigged character pipeline

New beta pipeline for reusable cartoon characters with SVG rigs, pose
libraries, action timelines, and Canvas/Remotion/HyperFrames rendering.

- pipeline_defs/character-animation.yaml: 11-stage manifest
- skills/pipelines/character-animation/: 11 stage director skills
- tools/character/: BaseTool implementations for char design, rigging,
  pose libraries, action timelines, previews, and QA
- schemas/artifacts/{character_design,rig_plan,pose_library,
  action_timeline,character_qa_report}.schema.json: canonical artifacts
- schemas/artifacts/scene_plan.schema.json: extended for character-led
  scenes
- .agents/skills/{canvas-procedural-animation,character-animation-qa,
  character-rigging,pose-library-design,svg-character-animation}/:
  Layer 3 vendor knowledge
- AGENT_GUIDE / PROJECT_CONTEXT / README / ARCHITECTURE / PROVIDERS:
  surface the new pipeline and its capability family
- tools/video/hyperframes_compose.py: SVG character rig support
- tests/contracts/test_character_animation_pipeline.py: contract tests
This commit is contained in:
calesthio
2026-04-28 08:11:02 -07:00
parent 386338c92b
commit 2b0801030c
33 changed files with 2528 additions and 15 deletions
@@ -0,0 +1,58 @@
---
name: pose-library-design
description: Design reusable 2D character pose libraries, action cycles, and expression states for data-driven animation.
license: MIT
---
# Pose Library Design
Use this skill when producing `pose_library` artifacts.
## Pose Categories
- Neutral: idle, breathe, listening.
- Attention: look_up, look_down, look_left, look_right.
- Emotion: happy, sad, surprised, worried, determined.
- Action: reach, point, hold, jump, flap, walk_contact, walk_passing.
- Mouth: closed, small_o, wide_open, smile, frown, phoneme-ish shapes.
## Acting Pattern
Use timed pose sequences:
```text
anticipation -> action -> hold -> settle
```
Do not continuously animate every part. Holds make the acting readable.
## Pose Data Pattern
```json
{
"pose": "surprised",
"parts": {
"head": { "rotation": -6, "y": -4 },
"pupil_left": { "x": 4, "y": -6 },
"mouth": "small_o"
},
"hold_frames": 18,
"transition": "back.out"
}
```
## Quality Checklist
- Required emotions have poses.
- Required actions have poses or cycles.
- Reused cycles have contact and passing poses.
- Poses name only changed parts; defaults come from the rig.
## Sources
- GSAP timeline sequencing for readable multi-step poses:
https://gsap.com/docs/v3/GSAP/Timeline/
- Remotion interpolation for frame-based transitions:
https://www.remotion.dev/docs/interpolate
- Remotion spring for natural motion:
https://www.remotion.dev/docs/spring