Skip to main content

Module project

Module project 

Source
Expand description

Project directories

Constants§

BEHAVIORS_DIR
Behavior trees directory - nested under configs/ (LAB-2072) so mecha10 config push/pull/list genuinely sync it like any other config, instead of living as a sibling top-level directory collect_configs_from_dir never walked.
DEV_PREFLIGHT_CACHE_FILE
Cache file for mecha10 dev’s project-level Python dependency preflight gate - see handlers/dev/ops/preflight.rs in the mecha10-cli crate. Purely a speed optimization: a missing or stale-and-discarded cache always falls back to a real scan, so nothing about correctness depends on this file existing or being fresh.
DRIVERS_DIR
Driver source code directory
LOGS_DIR
Logs directory
MODELS_DIR
Models directory (ONNX models, etc.)
NODES_DIR
Node source code directory
RL_TASKS_DIR
RL task-curriculum configs directory (LAB-2430) - scaffolded from the templates package’s bundled catalog at mecha10 init time. Deliberately NOT under SIMULATION_MODELS_DIR/SIMULATION_ENVIRONMENTS_DIR’s simulation/ tree (LAB-2429): task-curriculum configs are a project’s RL configuration (room_size, target_range, obstacle_count, …), not a physics/rendering asset, so they live alongside the rest of a project’s RL config (configs/rl/jobs/) instead. mecha10-rl’s AssetResolver resolves task configs (e.g. task1) from here for training (mecha10 train); mecha10_rl.mujoco.cli serve --assets-path (supervised by packages/nodes/simulator, live dev-mode physics only) never reads task configs at all.
SIMULATION_DIR
Simulation directory - nested under configs/ (moved from a top-level simulation/ sibling) so mecha10 config push/pull syncs it like any other config, the same reason BEHAVIORS_DIR moved under configs/ in LAB-2072. Shares its parent directory with the pre-existing configs::SIMULATION_CONFIG sim-settings file (configs/simulation/ config.json) - no collision, since that file’s fixed name never matches an asset file (model.json/environment.json/binary meshes/textures) synced under this tree.
SIMULATION_ENVIRONMENTS_DIR
Simulation environments directory
SIMULATION_IMAGES_DIR
Simulation billboard-image assets directory (type: "image" environment.json/ task.json objects’ source fields point here) - flat, no per-environment nesting: a project only ever has one pool of these images, so the earlier shared-vs-env-specific tiering (mecha10_cli_core::simulation_assets, now removed) was unneeded complexity. Nested under SIMULATION_DIR (not a top-level assets/ sibling) so mecha10 config push/pull covers it like every other simulation asset - the previous top-level <project>/assets/ location was never synced anywhere, which silently broke remote RL training for any environment with an image billboard.
SIMULATION_MODELS_DIR
Simulation models directory
SIMULATION_OUTPUT_DIR
Simulation output directory (generated robot/scene files)
SRC_DIR
Source directory
STATE_DIR
Local (gitignored) project-scoped state directory - mirrors the ~/.mecha10 user-home convention (user::MECHA10_DIR) but scoped to this project checkout, for caches/state that are specific to one clone and shouldn’t be committed to git (e.g. mecha10 dev’s Python dependency preflight cache - see DEV_PREFLIGHT_CACHE_FILE/handlers/dev/ops/preflight.rs in the mecha10-cli crate).
TARGET_DIR
Cargo build target directory
TYPES_DIR
Types directory

Functions§

environment_config
Get path to an environment’s config file
model_config
Get path to a model’s config file