Zenoh
The agent and your robot software communicate over a local Zenoh bus using Cap'n Proto messages. This is the contract native (non-ROS 2) integrations implement directly.
Roles
- Robot software publishes uplink messages (telemetry, faults, objects, mission feedback) and subscribes to commands; it also answers/issues local queries.
- The agent ingests those uplink messages, relays them to the cloud, and republishes downlink commands onto local Zenoh.
- ROS 2 robots use an external bridge that maps DDS topics onto these same local Zenoh topics — the contract below is identical either way.
Publish / subscribe
| You want to… | Action | Topic shape |
|---|---|---|
| Send telemetry / faults / objects / feedback (uplink) | Publish Cap'n Proto | uplink/robot/{robot_id}/{message_type} |
| Receive commands (downlink) | Subscribe Cap'n Proto | robots/{robot_id}/commands |
The agent relays between these local topics and the cloud over mTLS. {robot_id} is
assigned to the robot during enrollment; {message_type} identifies the payload (see
Messaging).
Queryables (request / reply)
The agent exposes local Zenoh queryables so robot software can fetch assets on demand. An empty request returns all items.
| Queryable | Request → Response | Returns |
|---|---|---|
agent/features/get_bulk |
GetFeaturesRequest → GetFeaturesResponse |
Spatial features (Shape | Route), geometry only |
agent/spatial_directives/get_bulk |
GetSpatialDirectivesRequest → GetSpatialDirectivesResponse |
Full spatial directives |
agent/settings/query |
GetSettingsRequest → GetSettingsResponse |
Robot settings (all or by key) |
Detailed Cap'n Proto field schemas for each request/response are coming soon.
Serialization
- All messages are Cap'n Proto encoded.
- The Cap'n Proto schema (message definitions) for native integrators is coming soon.
Configuration
Zenoh connectivity is configured on the agent host. The agent loads a dedicated Zenoh
configuration with a fallback to the [zenoh] section of the robot config. Detailed local
Zenoh endpoint and listen settings are coming soon.
!!! note Endpoints, certificates, and credentials are environment-specific and are not published here. The topic and wire contract above is stable and safe to build on.