Review
Review is the human inspection gate in the rig-c toolchain. A person opens an agent's rig output in one local workspace, checks it, and saves feedback that the agent can read back.
What it is
@rig-c/review is a CLI, rig-review, that serves a browser workspace on 127.0.0.1. It plays a compiled model through @rig-c/play, shows local image, video and pose-sequence references beside it, and records the person's review decision and feedback.
When to use it
Use it after a Core build, when a person needs to look at the result before it goes on. The agent does not have to build a new viewer for each rig.
Do not use it to fix the rig. Motion is view, annotate and export only: it never retimes, authors keys or writes motion.json. It does not edit meshes, weights or source art. It also does not replace Core's compiler gate; check validates the delivery contract and model envelope, not visual quality. To ship a rig into a game, use Play or an engine adapter.
What it solves
An agent can produce a rig, but a person has to judge it. Without a shared tool, that judgment ends up as loose notes that point at nothing exact. Review ties each piece of feedback to the exact bytes that were reviewed, and to a frame interval and a bone or slot target. The agent then retrieves it with one command. If the input changes, the old approval does not carry over.
What you get
- A review status:
approved,changes-requestedorpending. Opening never approves. - Feedback items with an inclusive frame interval, a bone/slot/rig target, a defect/quality category and a one-line summary.
- A
reviewedSourcerecord: package revision, viewer/runtime versions, and SHA-256 plus path for the reviewed rig and motion. - JSON and issue-ready Markdown exports (
--format issue). - Frame strip exports as PNG or JSON, with a
.png.jsonprovenance sidecar.
How it works
- Install it beside the agent and run
openon the output folder. It recognizesskeleton.model.jsonat the root or underbuild/, plusmotion.json,report.json, source videos and pose sequences. It reads them without changing them. openhashes the folder, starts or reuses a background loopback instance, prints its URL and exits. It never opens a browser and binds only127.0.0.1.- The person inspects playback, parts and references, then explicitly saves a status and feedback. Feedback is stored under
~/.local/state/rig-c-review/, outside the delivered files. - The agent runs
feedbackon the same folder to read the session JSON. Changed content starts a fresh pending session. - Optionally,
compareseeks two outputs against one reference video with a single playhead.
npm i -D @rig-c/review
npx rig-review open /absolute/path/to/output
It runs under Bun 1.3.0 or later. The CLI is the supported surface; no importable API is promised.
Key concepts
- Output folder: an existing agent output opened as-is, with no manifest required.
review.json: an optional curated manifest with named checkpoints, references and angle axes.- Checkpoint: a named inspection point in a curated package, with its own outcome and notes.
- Producer clock:
fpsplusframe0, or exactframeTimes[], declared in the report. Without it the UI showsrate unknown. - Reference binding: the name and byte hash of a selected external video, bound into sessions and exports.
- Write capability: a per-instance secret carried in the URL's
#cap=fragment. A link without it opens read-only.
Go deeper
- README: Start
- README: Feedback ownership
- README: Compare two outputs
- README: Frame strip export
- README: Managed front and write capability
- README: Control the current inspection page
- docs/REVIEW_PACKAGE.md (package format and HTTP contract)
- docs/DESIGN.md (product boundary and direction)
- CHANGELOG
- npm: @rig-c/review