Two Types of Policies
| Type | Definition | Use Case |
|---|---|---|
| Learned | Neural network trained on demonstrations | Tasks requiring visual adaptation |
| Replay | Recorded action sequence | Repeatable, fixed motions |
Learned Skills (ACT Policy)
Learned skills use Action Chunking with Transformers (ACT)—a neural network architecture that takes camera images and joint positions as input, and outputs action sequences.Metadata Structure
Execution Flow
When a learned skill runs, the BehaviorServer:- Load Policy: Loads the ACT checkpoint into GPU memory
-
Move to Start Pose: Moves the arm to the consistent initial configuration from
metadata.json -
Inference Loop (25Hz): Every 40ms:
- Captures frames from the main camera and wrist camera
- Reads the current 6-DOF joint state
- Resizes images to 224×224 and normalizes them
- Runs a forward pass through the policy
-
Sends the first 6 outputs as joint commands to
/mars/arm/commands -
Sends outputs 7–8 as base velocity to
/cmd_vel
- Progress Monitoring: Terminates early when progress exceeds 95%
- End Pose: Optionally returns to a safe configuration
Key Characteristics
- Reactive: Continuously adjusts based on visual feedback
- Adaptive: Handles variation in object position, lighting, orientation
- Coordinated: Can move arm and base simultaneously
Replay Skills
Replay skills play back pre-recorded action sequences. Simpler than learned skills, but deterministic and reliable.Metadata Structure
Execution Flow
- Load Recording: H5 file containing timestamped actions
- Move to Start Pose: Arm moves to recorded initial position
- Playback (50Hz): Execute recorded actions in sequence
- End Pose: Return to specified configuration
Execution Pipeline
Both skill types are executed by the BehaviorServer:Creating New Skills
Learned Skill Workflow
The whole pipeline runs from the app — each step has its own guide:- Collect demonstrations: Teleoperate the robot through the task with the leader arm (50+ episodes)
- Train the policy: Launch an ACT training run on Innate’s cloud GPUs
-
Deploy: Download the finished checkpoint from the app — activation writes
metadata.jsonand places everything in~/innate-os/workspace/custom_skills/<name>/for you
Replay Skill Workflow
Replay skills are created by recording the motion once — no hand-written metadata. You teleoperate the robot through the motion, then save the recording as a replay skill. The robot does the rest:- Record once: Teleoperate through the motion a single time.
-
Save as a replay skill: The robot converts the recording to the replay layout, writes the
type: "replay"metadata.jsonfor you, and drops it into~/innate-os/workspace/custom_skills/<name>/— ready to run immediately.
Demonstration Quality
The quality of learned skills depends directly on demonstration quality:| Good Demonstrations | Poor Demonstrations |
|---|---|
| Consistent starting positions | Variable starting positions |
| Smooth, deliberate motions | Hesitant, jerky motions |
| Varied object positions | Always same position |
| Include error recovery | Only perfect executions |
Skill Selection Guide
| Scenario | Recommended Type |
|---|---|
| Task requires visual adaptation | Learned |
| Object position varies | Learned |
| Motion must be identical every time | Replay |
| Simple gesture (wave, point) | Replay |
| Faster development cycle | Replay |

