[Unit] Description=ZeroClaw daemon (gateway + agent runtime) After=network.target zeroclaw-llama.service Wants=zeroclaw-llama.service [Service] Type=simple User=arduino WorkingDirectory=/home/arduino # Cloud credential — kept off-disk in the repo; provisioned into this env file on # the board. Sets BOTH the raw token and the ZeroClaw config-override that wires # providers.models.anthropic.max.api_key (the config TOML carries no key). The # leading `-` makes it non-fatal if the file is absent (offline/local agent). EnvironmentFile=-/home/arduino/.zeroclaw/daemon.env # Use `daemon`, NOT `gateway start`: only the daemon/agent/channel arms register # the peripheral tools (uno_q_flash etc.). `gateway start` on an older build # leaves the agent unable to flash. ExecStart=/home/arduino/zeroclaw daemon Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target