SWE-ReX is a runtime interface for interacting with sandboxed shell environments, allowing you to effortlessly let your AI agent run any command on any environment.
Whether commands are executed locally or remotely in Docker containers, AWS remote machines, Modal, or something else, your agent code remains the same. Running 100 agents in parallel? No problem either!
Specifically, SWE-ReX allows your agent to
- ✅ Interact with running shell sessions. SWE-ReX will recognize when commands are finished, extract the output and exit code and return them to your agent.
- ✅ Let your agent use interactive command line tools like
ipython
,gdb
or more in the shell. - ✅ Interact with multiple such shell sessions in parallel, similar to how humans can have a shell, ipython, gdb, etc. all running at the same time.
We built SWE-ReX to help you focus on developing and evaluating your agent, not on infrastructure.
SWE-ReX came out of our experiences with SWE-agent and [SWE-agent enigma][enigma]. Using SWE-ReX, we
- 🦖 Support fast, massively parallel agent runs (which made evaluating on large benchmarks a breeze).
- 🦖 Support a broad range of platforms, including non-Linux machines without Docker.
- 🦖 Disentangle agent logic from infrastructure concerns, making SWE-agent more stable and easier to maintain.
This is SWE-agent using SWE-ReX to run on 30 SWE-bench instances in parallel:
pip install swe-rex
# With modal support
pip install 'swe-rex[modal]'
# With fargate support
pip install 'swe-rex[fargate]'
# Development setup (all optional dependencies)
pip install 'swe-rex[dev]'
Then head over to our documentation to learn more!