MiravoMiravo

Custom Content

Create environment folders, add twin models, validate content layout, and fork built-in starters without breaking runtime loading.

Create a local environment when a built-in starter is close but not exact, or when your topology and physics need their own files.

Technical details

Use one folder per environment

packaging-line.miravo.yaml
centrifugal-pump.twin.yaml
belt-conveyor.twin.yaml

An environment folder contains exactly one root .miravo.yaml entry file and optional sibling .twin.yaml override files. A model reference resolves to a sibling model first, then to the shared built-in model catalog.

Miravo discovers environments in this order: current working directory, personal environments, namespaced personal environments, then built-in catalog starters.

Create or fork with CLI

miravo init packaging-line

Validate before running.

miravo validate packaging-line

Copy a built-in starter entry into a new editable folder. Built-in model references stay shared until you add sibling overrides. Forking local or namespaced content copies sibling .twin.yaml overrides with the entry.

miravo init packaging-line --from smart-factory

Copy from a namespaced environment.

miravo init packaging-line --from acme-corp/cnc-line

Create a blank model in an environment.

miravo add coolant-pump --in packaging-line

Copy one built-in model into an environment as a sibling override.

miravo add coolant-pump --in packaging-line --from centrifugal-pump

Validate hard rules

Run validation after file moves, renames, or model additions.

miravo validate packaging-line

Validation fails when the folder has zero or multiple root .miravo.yaml files, a model reference has no sibling or shared built-in .twin.yaml, or a twin filename basename does not match the YAML model.name field.

centrifugal-pump.twin.yaml -> model.name: centrifugal-pump

Run lint for realism warnings after schema validation passes.

miravo lint packaging-line

Built-in model references stay shared by default. Add a sibling model with miravo add --from when the environment needs an explicit override.

Reference

Path or commandNotes
~/.miravo/environments/<env>/Personal environment folder
~/.miravo/environments/<namespace>/<env>/Namespaced environment folder
miravo init <name>Create a new environment folder
miravo init <name> --from <src>Copy an environment entry from a built-in, namespace, or absolute folder
miravo add <model> [--in <id>]Add a blank twin model file
miravo add <model> --from <src>Copy one model from a built-in, namespace, or absolute file
miravo validate [<id>]Check schema, references, and file layout
miravo lint [<id>] [--strict]Check physical realism rules
MIRAVO_HOMEMove personal environments, persisted state, auth, and platform targets under another base directory

Was this page useful?

Last updated on