Turning Any Codebase into Testable Sandbox Environment
Paper: RepoLaunch: Automating Build&Test Pipeline of Code Repositories on ANY Language and ANY Platform
RepoLaunch now supports
- All mainstram languages : C, C++, C#, Python, Java, Node.js (JS & TS), Go, Rust.
- Building on linux-arch & windows-arch docker images.
RepoLaunch now uses LiteLLM to:
- ensure compatibility with all mainstream LLM providers
- enable local LLM deployment for agentic training (RFT, RL) based on launch results
RepoLaunch now still uses traditional Thought-Action format for agent actions, because
- We find that many smaller open-source LMs cannot handle tool call field well.
- Thought Action in pure text content field ensures best compatibility and feasibility for smaller open-source LMs.
To use RepoLaunch Agent to launch your repository, please refer to Development.md
RepoLaunch can:
- Install all dependencies and build the repository, delivered as a docker image;
- Organize the command to rebuild the repository inside the container after modifications;
- Organize command to test the repository, write a parser to parse test output into testcase-status mapping, and optionally find per-testcase running command.
The basic workflow of RepoLaunch agent is as follows:
Please refer to CONTRIBUTING.md.
So far the major contribution of RepoLaunch is to create tasks for SWE-bench-Live, where the creation of SWE-tasks is based purely on scraping GitHub issues and PRs. Now SWE-bench-Live datasets have been used for benchmarking of LLMs and coding agents, and training (SFT/RL) of coding LLMs.
We encourage new research projects to design new kinds of SWE-tasks for LLM benchmarking and training, with task creation automated by RepoLaunch.
We encourage integrating more useful tool calls into RepoLaunch. For example, RAG tools to construct and retrieve memory database of repo launch experiences.
We encourage training projects based on the rollout trajectories of RepoLaunch. For example, Rejection Fine-tuning and Reinforcement Learning of open source LMs.
- The agentic workflow is defined in
launch/core/workflow.py - The tool calls of each stage are defined in each stage definition file in
launch/agent/... - The llm calling is defined in
launch/utilities/llm.py
@article{li2026repolaunch,
title={RepoLaunch: Automating Build\&Test Pipeline of Code Repositories on ANY Language and ANY Platform},
author={Li, Kenan and Li, Rongzhi and Zhang, Linghao and Jin, Qirui and Zhu, Liao and Huang, Xiaosong and Zhang, Geng and Zhang, Yikai and He, Shilin and Xie, Chengxing and others},
journal={arXiv preprint arXiv:2603.05026},
year={2026}
}This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

