Skip to content
@rig-c

rig-c

A toolchain for 2D character rigs an AI agent can author and verify — parts, core, play.

rig-c — a toolchain for 2D character rigs an AI agent can author and verify

A character on a swing under a night sky breathes, tilts her head, smiles, kicks her legs, hops and waves, her twin tails following; for one beat her meshes and bones are drawn over her

One painting, rigged with @rig-c/parts and compiled and rendered by rig-c. The swing is one more bone of the same skeleton; the hair, the skirt and the legs follow it by physics, and the meshes and bones shown are the render's own geometry. The sky, the lights and the captions are composited around the render. How it was made, and one command to rebuild it →

2D character rigs, authored by an AI agent that cannot see them — and verified before anything is written. One painting goes in; a rigged, animated character that plays in the browser comes out. Every stage prints named, numeric findings and refuses by name what it cannot verify, so a wrong file never reaches the disk.

Does your model pass?

An agent that has never seen these tools is handed one painting and the installed packages — nothing else — and has to build a rig that passes its check, add a wave, and correct a draft that fails. It writes down what it expects before every step. rig-c/exam is that exam, and these are the models that have sat it:

model sittings lines passed, of lines graded minutes for the three tasks
Claude Haiku 1 16 / 16 21
Gemini 3.8 Flash 1 16 / 16 20
gpt-6-sol (not established which model) 1 16 / 16 14.1
Sol 6.1 2 32 / 32 14.2 to 15.3

Every line passed, and the three models named are each their vendor's lighter tier. Sit it with yours: paste one prompt into any coding agent, open a pull request, and the run is regraded from the files it hands in and added to the table — with its journal, and whatever it found wrong with the tools.

Repository Install What it does
1 parts npm i -D @rig-c/parts Assembles one character painting's decomposed layers into rig-ready parts, then authors weighted meshes, bone chains, physics and a looping idle over them
2 core npm i -D rig-c The rig compiler: a rig spec and a motion spec in, skeleton data out — in the Spine 4.3 format, with its own compiled model beside it — gated by named assertions before a byte is written
3 play npm i @rig-c/play Plays the compiled model in the browser, as plain DOM elements or one canvas: tracks, mixing, additive layers, per-pose bone hooks

Built for agents

  • The messages are the interface. A refusal names the object, the value found and the value required — an agent reads the line and knows which file to change.
  • Nothing is invented. Where the input is silent the tool says so; it does not guess a value and carry on.
  • Emit only after green. The compiler writes nothing that fails its gate.

core and parts each carry a docs/AUTHORING.md — the guide an agent authors from — and ship as agent skills; play's README is its guide.

Names

rig-c is also published as @rig-c/core. rig-parts and rig-play are @rig-c/parts and @rig-c/play under the names they shipped as before the scope; spine-rigc, spine-parts and spine-html are the same packages under their first names. Every alias carries the same files at every version.

The tools are MIT licensed; the exam's content is CC BY-NC 4.0.

Pinned Loading

  1. parts parts Public

    AI-authored 2D character parts from one painting: See-through layers assembled into rig-ready PNGs and a weighted-mesh rig spec that rig-c compiles and verifies before anything is written.

    TypeScript 2

  2. core core Public

    AI-authored 2D rigging and animation, verified before it is written. rigc compiles a rig spec into skeleton data in the Spine 4.3 format, gates it with named assertions held to a spine-core round t…

    TypeScript 12 2

  3. play play Public

    Plays the compiled model rig-c builds, in the browser — as plain DOM elements or one canvas, with tracks, mixing, additive layers and per-pose bone hooks.

    TypeScript 4

  4. parts-examples parts-examples Public

    Example inputs for @rig-c/parts: generated character paintings and their See-through layer decompositions, fetched by its selftest and CI.

Repositories

Showing 7 of 7 repositories
  • parts Public

    AI-authored 2D character parts from one painting: See-through layers assembled into rig-ready PNGs and a weighted-mesh rig spec that rig-c compiles and verifies before anything is written.

    rig-c/parts's past year of commit activity
    TypeScript 2 MIT 0 4 0 Updated Oct 12, 2026
  • exam Public

    An open-book exam for AI agents: one painting to a rig with the published rig-c tools, journal first

    rig-c/exam's past year of commit activity
    Python 0 0 0 0 Updated Oct 12, 2026
  • .github Public

    The rig-c organisation's profile

    rig-c/.github's past year of commit activity
    0 0 0 0 Updated Oct 13, 2026
  • trailer Public

    The rig-c trailer, reproducible: one painting to a rigged, animated loop — inputs, config and scripts, rebuilt by one command

    rig-c/trailer's past year of commit activity
    Python 0 0 0 0 Updated Oct 12, 2026
  • core Public

    AI-authored 2D rigging and animation, verified before it is written. rigc compiles a rig spec into skeleton data in the Spine 4.3 format, gates it with named assertions held to a spine-core round trip's verdicts, and emits nothing that fails. Ships as an agent skill.

    rig-c/core's past year of commit activity
    TypeScript 12 2 2 0 Updated Oct 12, 2026
  • parts-examples Public

    Example inputs for @rig-c/parts: generated character paintings and their See-through layer decompositions, fetched by its selftest and CI.

    rig-c/parts-examples's past year of commit activity
    0 0 0 0 Updated Oct 11, 2026
  • play Public

    Plays the compiled model rig-c builds, in the browser — as plain DOM elements or one canvas, with tracks, mixing, additive layers and per-pose bone hooks.

    rig-c/play's past year of commit activity
    TypeScript 4 MIT 0 3 0 Updated Oct 11, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.