Skip to main content
A project is a directory containing an env.json mission spec. Two commands create one.

Create a project

Creates ./rescue-dog/ with everything you need:
  • env.json: the mission spec (scene + phases + rewards)
  • main.py: a runnable driver for the project
  • requirements.txt
  • README
Both seed a working multi-phase mission (a rescue-dog debris scenario) you can run immediately, then edit.

Inspect a project

Renders the mission: the scene (zones and objects), and the ordered phases with their goals, success/fail predicates, and reward terms, so you can sanity-check a spec before running it.

Anatomy of env.json

At a glance, every mission has three parts:
  • scene: the static world, including boxes/markers the robot interacts with and named zones used by predicates and rewards.
  • phases: the mission as a sequence of sub-goals. Each phase has its own natural-language goal, a predicate that completes it, a predicate that fails it, and reward shaping.
  • vla_finetune: the prompt template used when exporting fine-tune records.
The complete field-by-field reference (every predicate and reward term) is on the next page.

Environment schema reference

Full env.json schema: scene, zones, phases, predicates, and reward terms.
Cadenza’s world forward direction is −X. Zone AABBs and positions are in world coordinates. Keep this in mind when placing objects and reading forward_distance_gain.