Skip to main content

Module project

Module project 

Source

Structs§

ActuatorConfig
BehaviorsConfig
Behavior tree configuration controlling autonomous robot behavior execution.
DockerServicesConfig
Docker services configuration for project-level Docker Compose management
EnvironmentConfig
Configuration for a specific environment
EnvironmentsConfig
Per-environment configuration (dev, staging, prod), with the active environment selected via the MECHA10_ENV environment variable or --env flag.
JointLimitConfig
A single joint’s angle limits, keyed by the actuator node’s node_id in mecha10.json.
LocomotionLimitsConfig
Motion limits for a differential-drive (or similar) locomotion base.
LoggingConfig
Logging configuration for a single environment, controlling whether node logs are written to local disk. Remote/network log shipping is independent of this setting.
NodeSpec
Parsed node specification from namespaced string format
NodesConfig
Map of node identifiers (e.g. @mecha10/listener, my-custom) to their pinned versions.
ProjectConfig
ProjectSimulationConfig
Project-level simulation settings, distinct from the runtime simulation config used during execution.
RobotConfig
TargetEntry
A single target’s configuration: which nodes run on it, and (for robot/remote/rl) which Rust target triple(s) mecha10 build compiles for.
TargetsConfig
Target execution configuration: where nodes run (locally, in simulation, on the robot, or remotely), and, for robot/remote/rl, which Rust target triple(s) builds compile for.
TurnConfig
Resolved TURN server config: relay URL + credentials for a TURN entry in a WebRTC ICE server list. Kept as a standalone type here (rather than reusing mecha10_video::webrtc::connection::TurnServerConfig) since mecha10-cli-core intentionally doesn’t depend on mecha10-video - mecha10-video and the nodes that embed it (camera, video-streamer) are meant to stay lightweight for robot binaries, the same “minimal dependencies” rationale mecha10-node-resolver documents for inlining its own copy of DEFAULT_MECHA10_API_URL instead of depending on this crate.

Enums§

NodeRef
A single entry in a target’s node list, either a plain node identifier or a named instance for a node that needs to run as more than one instance under the same target.
NodeSource
Node source type based on namespace prefix
NodeTarget
Target type for node execution

Functions§

is_local_project_node
Whether name is declared as a local project node (NodeSource::Project, i.e. built from this project’s own nodes/<name> workspace member) according to the mecha10.json at config_path - the single shared check behind both mecha10 dev’s ProcessService::spawn_node_direct and mecha10-node-runner’s resolve_node_execution, so the two don’t drift onto different classification rules for the same node.
load_project_config
Load full project config from mecha10.json
load_robot_id
Load robot_id from mecha10.json
turn_config
Resolve TURN server config, highest priority first: