Our paper: "Repo2Run: An LLM-based Build Agent System for Containerized Environments" has been accepted by NeurIPS 2025 main track as a spotlight!
An LLM-based build agent system that helps manage and automate build processes in containerized environments. This project provides tools for handling dependencies, resolving conflicts, and managing build configurations.
- Docker-based sandbox environment for isolated builds
- Automated dependency management and conflict resolution
- Support for Python version management
- Waiting list and conflict list management for package dependencies
- Error format handling and output collection
- Python 3.x
- Docker
- Git
- Clone the repository:
git clone https://github.com/bytedance/repo2run.git
cd repo2run- Install the required dependencies:
pip install -r requirements.txtThe main entry point is through the build agent's main script. You can run it with the following arguments:
python build_agent/main.py <repository_full_name> <sha> <root_path>Where:
repository_full_name: The full name of the repository (e.g., user/repo)sha: The commit SHAroot_path: The root path for the build process
build_agent/- Main package directoryagents/- Agent implementations for build configurationutils/- Utility functions and helper classesdocker/- Docker-related configurationsmain.py- Main entry pointmulti_main.py- Multi-process support
The project uses Docker containers to create isolated build environments, ensuring clean and reproducible builds.
- Waiting List: Manages package installation queue
- Conflict Resolution: Handles version conflicts between packages
- Error Handling: Formats and processes build errors
Utilizes GPT models to assist in build configuration and problem resolution.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
@article{hu2025llm,
title={An LLM-based Agent for Reliable Docker Environment Configuration},
author={Hu, Ruida and Peng, Chao and Wang, Xinchen and Gao, Cuiyun},
journal={arXiv preprint arXiv:2502.13681},
year={2025}
}Apache-2.0
