What comes out.

A rig’s values

Export copies or downloads the current parameter document as JSON. It records the state you approved. It is not a patch, and nothing applies it to your source for you.

The document carries every value, each parameter’s value source, and the animation if there is one. What it does not carry is binary files: a resource control stores file metadata and a local resource id, so a JSON alone does not move an image, a font or a model between browsers. External files referenced by a .gltf are not bundled either.

The vector editor

SVG, PDF and PNG. Export presets are saved with the document, so a size and a scale you use often survive the session.

A whole document is written as .paramrig.json. The library accepts one dropped on it.

The 3D editor

glTF, OBJ and STL, in and out. A scene saved to disk is a .paramrig.json marked "format": "paramrig.scene", and the library refuses a vector document by name instead of failing obscurely.

The mesh in that file is not a soup of triangles: polygons keep stable vertex and face ids, so a selection survives an edit that renumbers everything around it.

A connected project

Approving in the web workspace writes .paramrig/batches/<id>.json into the project itself. That file carries every value, the before and after of each change, the bindings each one writes, and every comment with its page, viewport, scroll context and captures.

Your agent answers with .paramrig/responses/<id>.json. Neither file is written by the other side, and a batch is never rewritten. See The web SDK.