Agent Arena

Installation

Install, extras, and verifying it works.

Requirements

Python 3.10, 3.11, 3.12 or 3.13. CI tests all four.

Install

Three ways, in order of least commitment:

Try it with uvx, no install at all:

uvx --from agent-arena arena --version

Install from PyPI:

pip install agent-arena

Provider SDKs are extras, because the engine needs none of them: pip install "agent-arena[anthropic]", or [openai], [gemini], [litellm], [all].

Or install from source, which always tracks main:

git clone https://github.com/adityamhaske/agent-arena
cd agent-arena
pip install -e .

Any of the three gives you the engine and the CLI. One dependency: PyYAML, and even that is optional — JSON config works without it.

Docker

docker build -t agent-arena .
docker run -p 8420:8420 -v $(pwd)/projects:/data/projects agent-arena

arena ui has no authentication by design, and inside a container reaching it at all requires binding 0.0.0.0 — which the image does. That means anyone who can reach the published port can read and edit every mounted project and spend API credit through it. Put it behind your own network boundary; never publish the port straight to the open internet. See ../security/hardening.md.

For one-shot CLI use instead of the UI, override the command:

docker run -v $(pwd):/data agent-arena evaluate --project projects/my_project

Devcontainer / Codespaces

.devcontainer/devcontainer.json is in the repo. Opening it in VS Code or a GitHub Codespace runs pip install -e ".[dev]" automatically and forwards port 8420 for the UI.

Extras

Provider SDKs are optional and import lazily. Install only what you call.

Extra Pulls in For
(none) pyyaml Engine, CLI, UI, mock and local models
[anthropic] anthropic>=0.40 Claude models
[openai] openai>=1.40 GPT models
[gemini] google-generativeai>=0.8 Gemini models
[litellm] litellm>=1.50 Bedrock, Together, Azure, anything LiteLLM reaches
[all] all four
[dev] pytest>=8.0 Contributing
pip install -e ".[anthropic]"
pip install -e ".[all]"
pip install -e ".[dev]"

You do not need any of them to start: mock: and local models work with the base install, and examples 1, 2 and 4 run fully offline.

If you call a model whose SDK is missing, the error names the exact fix:

the 'anthropic' provider needs the 'anthropic' package:
pip install 'agent-arena[anthropic]'

Verify

arena --version
arena scorers
arena evaluate --project projects/support_triage --quiet --no-report

The third proves the whole path works offline with no credential. If it produces a leaderboard, the install is good.

For contributing

pip install -e ".[dev]"
python3 -m pytest -q        # 715 passed in ~44s

Use a fresh virtualenv if you want to verify the stdlib-only invariant. An environment where you previously installed a provider SDK will not prove it.

The documentation site

pip install -r site/requirements.txt
python3 site/build.py
python3 -m http.server -d site/_build 8000

site/requirements.txt is build-time only. It is not a runtime dependency and does not affect invariant 1.

Uninstalling

pip uninstall agent-arena

Settings and any stored credentials live in ~/.config/agent-arena/; delete that directory to remove them. Project folders and their results are yours, and nothing outside them is touched.