1
Creating a config schema
We’ll create the
Mobility config type, install the Miru CLI, and push a schema to Miru.2
Installing the agent
Next, we’ll install and activate the Miru Agent on your target device.
3
Deploying config instances
Finally, we’ll deploy config instances and make some edits.
Concepts
To begin, let’s define the primary concepts in Miru.Config instances
A config instance, also known as a config or an instance, is a set of parameters used to modify the behavior of code. Config instances are stored as JSON files, which applications parse into a structured format for consumption.Config schemas
A config schema defines the structure, types, and constraints of a config instance. It serves as a contract between code and configuration, ensuring that config instances are valid before being deployment to devices.Config types
A config type represents a logical grouping of parameters used by your robot’s software. It consists of- The config instances in its domain (the actual parameters deployed to devices)
- A versioned config schema, which defines the structure and constraints for those instances
Mobility config type houses configs related to the robot’s motion while a Perception config type houses configs related to the robot’s perception. Each config type has its own versioned schema, which its config instances must adhere to depending on the release they are deployed under.
Devices
A device is a machine to which config instances are deployed. This could be an NVIDIA Jetson, Raspberry Pi, industrial PC, or any other computer running your robot’s application.Releases
A release is a version of software and its compatible config schemas. Within a fleet of robots, multiple software versions may be deployed — each release defines which config schemas are valid for that version. For example, software releasev1.7.0 might specify the following schemas:
| Config Type | Schema Version |
|---|---|
Mobility | SCH-FmoDN |
Perception | SCH-3JcLq |
Manipulation | SCH-HHDRn |
v1.7.0) is used to verify that all required config instances are present and that each instance complies with the release’s schemas.
Deployments
A deployment is a set of config instances delivered to a device for consumption by your software. Deployments tie together config instances, releases, and devices to simplify configuration management and delivery.If these concepts are a bit fuzzy at the moment, don’t worry! Seeing these concepts in action will solidify their meaning.


