Mission Commands
Mission commands tell a robot what operation to run.
- Direction: Downlink (cloud → robot)
- Topic: the
commandkey on the local Zenoh session (orcommand/**with per-type subtopics) - Encoding: Cap'n Proto over Zenoh
The agent receives commands, persists the ones it needs (missions, features, objects, settings), and republishes them on local Zenoh for your robot software (or the ROS 2 bridge) to act on. Scheduled missions are held by the agent and fired when due.
Command types
| Command | Purpose |
|---|---|
| assignMission | Run a mission/operation. May reference a feature (e.g. a route or zone) and the actions it uses. |
| controlMissionRun | Pause, resume, or cancel a specific mission run. cancel also removes it (including a scheduled one). |
| setRobotMode | Set the operating mode (auto/teleop/manual/disabled/maintenance). |
| velocityCmd | Direct velocity command. |
| pause / resume | Halt or resume operation and the current mission. |
| invokeAction | Invoke an advertised action (e.g. Mow). |
Teleop is covered separately in Teleoperation; field rules and features in Field Rules.
There is no
navigateTocommand. To send a robot to a location outside a mission, push aFeaturewithlayerRole = target. Inside a mission, put the route or target in the mission'sfeature.
assignMission fields
Known fields:
| Field | Notes |
|---|---|
missionRunId |
Identifier for this run, assigned by the server. Echo it in feedback. |
name |
Mission name. |
scheduledStartMs |
Epoch-ms start time. If in the future, the agent schedules it; if past, it runs immediately. |
missionParameters |
Mission-specific parameters (settings applied at the start). |
actions |
Actions to fire or enable during the mission, with timing. |
feature |
Optional associated Feature: a path, waypoints, or coverage area. |
For the complete MissionCommand schema, including MissionAction timing,
the mission-parameters structure, and the embedded spatial feature, see
Command Messages → assignMission.
Every command variant is defined in the Command Messages reference.
One id per run. Missions are keyed by a single
missionRunId. The formermissionId/runIdpair is gone, as areuserId,detail, andexpectedEndTimeMs.
Scheduling behavior
- A mission with a future
scheduledStartMsis scheduled by the agent and fired when due, carrying the samemissionRunId. - A mission with a past start time is forwarded immediately.
- Missions fired too far past their start time may be skipped.
Feedback
Report progress and run status back to the cloud via Mission Feedback.