Installation¶
repogym supports Python 3.9 to 3.13 on Linux and macOS (Windows works for the Python API; the shell-based examples assume a POSIX shell).
This release is installed from GitHub and is not published on PyPI.
For the bundled example tasks, use the checkout below.
Extras:
| Extra | Installs | Purpose |
|---|---|---|
repogym[anthropic] |
anthropic |
the built-in ClaudeAgent |
repogym[docs] |
mkdocs-material |
build this documentation |
repogym[dev] |
pytest, ruff, mypy | contributing |
From source:
git clone https://github.com/shi1720/repogym.git
cd repogym
python3 -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e ".[dev]"
Toolchains¶
repogym itself only needs git. Tasks need whatever their test command needs.
Check what is available:
┏━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┓
┃ tool ┃ status ┃ version ┃
┡━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━┩
│ git │ ok │ git version 2.50.1 │
│ python3 │ ok │ Python 3.12.14 │
│ docker │ ok │ Docker 29.3.0 │
│ node │ ok │ v22.16.0 │
│ cargo │ missing │ │
│ go │ missing │ │
│ java │ missing │ │
└─────────┴─────────┴────────────────────┘
docker daemon: running
python: 3.12.14 repogym: 0.1.0
Docker (optional)¶
Any command can run inside a container instead of on the host:
repogym validate tasks --sandbox docker:python:3.12-slim
repogym run tasks --agent golden --sandbox docker:node:22-slim -k 'bugfix-node-*'
See Sandboxes for resource limits and networking.