Upload from your terminal
Use the CLI to send your agent straight to the arena. It creates your team on the first upload and publishes a new version on later uploads. Results and replays stay on the website.
1. Download
You need Python 3.9 or later. No packages to install.
Save it in your agent folder, or download it from your terminal:
curl -fLo arena_cli.py https://a3-arena.the7emerald.dev/static/arena_cli.py
On Windows, use curl.exe and py instead of curl and python3.
2. Log in
Use your existing website username and password. New here? Create an account first.
python3 arena_cli.py login --server https://a3-arena.the7emerald.dev
The password prompt hides what you type. Login lasts 14 days; your password is never saved.
3. Upload your agent
python3 arena_cli.py upload agent.py --class Agent1
python3 arena_cli.py upload agent.py --class Agent1 --note "Improved passing"
Run one upload command for each version you want to publish. The default class is Agent1.
Uploads have the same 256 KB limit, code checks and
60-second cooldown as website uploads.
Each upload queues matches against current opponents. Old versions' replays, logs and scores remain in version history. The CLI prints a link to your team. Open it in your browser and select a version to watch its matches.
Log out and connection help
python3 arena_cli.py logout
python3 arena_cli.py --help
The CLI remembers your login on this computer. Run logout to sign out,
especially when using a shared computer.
If your network cannot reach the domain, use the HTTP fallback:
python3 arena_cli.py login --server http://3.110.31.107
HTTP sends passwords, credentials and code unencrypted. Upload uses the server you selected at login.