Task Program#
Task Program lets you customize an expert demonstration by describing what objects to pick, where to place them, and in what order. Reuse an existing scene and robot, edit a YAML program, and run it through the normal environment launcher. You do not need to write a motion planner or an integration to start.
Start with Customize your first expert trajectory: run a Franka example, change two moves, check the cube’s resting position, and save one trajectory.
What can I make?#
The official repeated Pick/Place program moves a cube between two targets.
Its repeat node chooses A → B → A; each repetition contains a Pick segment
and a Place segment. You can change the repetition count, targets, step order,
and language descriptions in one local program.yaml. An existing deployment
supplies the scene, robot, available calls and execution settings.
The Customize your first expert trajectory uses repeated_pick_place/task.franka.yaml, a single
Franka Panda in the Default physics environment, without trajectory expansion.
The complete original file is available as a
download.
What do I need?#
An installed SDK and compatible DexSim/GPU environment: Installation.
The selected deployment’s robot assets: Data Assets.
A text editor and a directory for your program and outputs.
The tutorial uses an installed package reference for the deployment. A source checkout is only needed for the separate maintainer checks.
Choose a route#
Your goal |
Start here |
Continue with |
|---|---|---|
Customize a trajectory in an existing task |
||
Learn the language without starting simulation |
||
Bind a new scene, robot or skill |
||
Understand the compiler and runtime |
How do I know it worked?#
Command execution completed means the requested motion finished. Measured
checks passed means the observed state satisfied the checks you wrote. They
are different results: the example’s projected policy updates expected task
state after motion, without measuring every grasp or release.
In the Quickstart you add a wait for stability and a position check after each Place. Inspect those results as well as episode completion, and confirm that the saved episode can be read. Passing these checks establishes position and stability for that run; it does not establish every possible physical property. See assurance and acceptance.
What stays with the integration?#
Programs can only name objects and calls supported by their selected integration.
Changing an instruction changes the description and language annotation;
the structured calls determine the actions. A new object, robot, unregistered
call or different motion policy needs integration/deployment work. Follow
Configure and Run an Embodied Task Program for those changes.
For later workflows, see Validate, split, and recover expert datasets for recording and consumption, Running Tasks with run-task for expansion and launcher options, and Generative Simulation for scene generation. These are optional follow-ups.
Previous architecture sections#
The implementation reference has moved to Task Program architecture. Existing section links remain available below.