Skip to main content

Module types

Module types 

Source
Expand description

Shared type definitions for the CLI

This module contains type definitions that are shared across multiple layers of the CLI (commands, handlers, services).

§Organization

  • cli: CLI command types (Clap Args, Commands enum)
  • credentials: Authentication credentials types
  • project: Project configuration types (mecha10.json)
  • simulation: Simulation configuration types (runtime and project-level)

§Design Principles

  • Domain-focused: Types represent domain concepts, not CLI concerns
  • Shared: Only types used in multiple places belong here
  • Serializable: Most types derive Serialize/Deserialize
  • Well-documented: All public types have rustdoc comments

Re-exports§

pub use cli::Cli;
pub use cli::Commands;

Modules§

cli
CLI type definitions
credentials
project
simulation

Structs§

Credentials
DeviceCodeResponse
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.
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 (e.g. @mecha10/listener for a framework node, my-custom for a project node, @someorg/cool-node for a future registry node). The legacy @local/* prefix is no longer supported.
NodesConfig
Map of node identifiers (e.g. @mecha10/listener, my-custom) to their pinned versions.
ProjectConfig
TurnConfig
Resolved TURN server config: relay URL + credentials for a TURN entry in a WebRTC ICE server list. Standalone since mecha10-cli-core doesn’t depend on mecha10-video.

Enums§

AuthError
DeviceCodeStatus
NodeSource
Node source type based on namespace prefix

Functions§

load_project_config
Load full project config from mecha10.json
turn_config
Resolve TURN server config: an explicit runtime env var wins, then the build-time-baked default. Returns None when neither is present (including empty), so callers can fall through to a runtime API fetch from mecha10-api.