# Corrosion Host Agent configuration # Default location: /etc/corrosion/agent.toml (Linux) # C:\ProgramData\Corrosion\agent.toml (Windows) # Override with: corrosion-host-agent --config /path/to/agent.toml # # Secrets can come from the environment instead of this file: # CORROSION_LICENSE_ID, CORROSION_NATS_URL, CORROSION_NATS_TOKEN [agent] license_id = "your-license-uuid" nats_url = "nats://nats.corrosionmgmt.com:4222" # nats_token = "set-me-or-use-CORROSION_NATS_TOKEN" heartbeat_seconds = 60 log_level = "info" # One agent supervises every game instance on this host. # Each instance gets a stable id (lowercase letters, digits, '-', '_') that # the panel uses to address it. Changing an id orphans its panel history. [[instance]] id = "rust-main" game = "rust" # rust | conan | soulmask | dune root = "/opt/rustserver" label = "Main 2x Vanilla" # RCON lets the panel send console commands to the running server. # For rust the protocol is WebRCON (WebSocket JSON); for conan/soulmask it is # Source RCON (Valve TCP binary). `kind` is optional — it is inferred from # the game name when absent. # # The [instance.rcon] sub-table MUST immediately follow the [[instance]] entry # it belongs to (standard TOML array-of-tables scoping rule). [instance.rcon] port = 28016 password = "changeme" # kind = "webrcon" # explicit override; omit to infer from game # [[instance]] # id = "soulmask-main" # game = "soulmask" # root = "/opt/soulmask/main" # label = "Cloud Mist Forest (cluster main)" # # [instance.rcon] # port = 19000 # password = "changeme" # # kind = "source" # inferred automatically for soulmask [prober] interval_seconds = 300 # Extra outbound TCP checks beyond the built-in defaults: # [[prober.target]] # name = "steam-cdn" # host = "steamcdn-a.akamaihd.net" # port = 443