User Guide# Getting Started Installation 1. Install uv 2. Install EOS 3. Configure EOS 4. Launch External Services 5. Start EOS Infrastructure Setup Key Requirements Multi-Computer Lab Setup Main EOS Computer Worker Computers Concepts Packages Create a Package Devices Device Implementation YAML File (device.yml) Python File (device.py) Resources Defining resources in laboratories Notes Declaring resources in task specifications Assigning resources in experiments Experiment‑level resource metadata (optional) Allocation and exclusivity When to model as a resource Laboratories Laboratory Implementation Computers (Optional) Devices (Required) Resources (Optional) Tasks Parameters Resources Files Task Implementation YAML File (task.yml) Parameter Specification Integer Float String Boolean Choice List Dictionary Python File (task.py) References Quick syntax Minimal example Experiments Experiment Implementation YAML File (experiment.yml) Optimizer File (optimizer.py) Campaigns Optimization Setup (Analyze and Design Phases) Automation Setup (Make and Test Phases) Optimizers Distributed Execution Optimizer Implementation Input and Output Parameter Naming Example Custom Optimizer Scheduling Choosing a scheduler Task durations Device and resource allocation Task groups Comparion table Interfaces REST API Device RPC Documentation Advanced Jinja2 Templating Variables Arithmetic Conditionals Loops Macros Examples Color Mixing Installation Sample Usage Package Structure Devices Tasks Laboratory Experiment Dynamic Parameters and Optimization References Between Tasks