MimoCode
Description
MimoCode is an agentic software-engineering environment. Each task boots the task's own Docker image — a real repository checked out at /testbed in a pre-fix state — and gives the agent an issue or feature request. The agent reads and edits the source with shell and file tools, then submits. On submission the environment applies the task's hidden test patch over the agent's edits and runs the task's test command; the reward is binary — 1.0 only if the tests pass.
The tasks are the code configuration of Xiaomi's MiMo-V2.6-RL-oss dataset (data_source=opensource-code). Each task's grade contract (the hidden test patch and the test command) ships in the dataset row, so grading is faithful and deterministic.
Capabilities
- Navigating and understanding a real code repository
- Diagnosing an issue and implementing a focused fix
- Building and exercising changes in a shell sandbox
- Passing a hidden, task-specific test suite
Compute Requirements
Each task runs in an OpenReward sandbox booted from the task's public Docker image. The default machine size is 2 CPUs and 4 GB of RAM; the sandbox runs with networking disabled, since the images are self-contained. The proxy variables point at a closed local port, so a download attempt fails at once instead of waiting out a connect timeout; the test command runs without them. When an image keeps its Go module cache in /go/pkg/mod but the go command defaults to an empty one, the agent's shell and the test command use /go/pkg/mod.
License
MIT.
Tasks
There are 2,647 tasks, exposed as two splits:
train— all 2,647 tasks.test— the first 32 tasks by instance id, a small smoke subset for quick checks (not a held-out evaluation set).
Each task carries a natural-language problem statement (an issue or feature request) and, held back from the agent, a test patch plus a test command that together verify the intended change.
The dataset has 2,698 tasks. excluded_tasks.txt leaves out 51, with the reason for each: tasks that no submission can pass in the sandbox (the build or tests need the network, the test runner cannot start or is missing, or the image is too large to pull), or whose hidden tests check behaviour the problem statement does not ask for. Task ids are positions in the sorted, filtered list, so changing the exclusions renumbers them.
Reward Structure
This is a sparse, verifiable environment with no LLM grader. The agent calls submit once; the environment writes the hidden test patch over the agent's working tree, applies it (git apply, with a tolerant fallback), and runs the task's test command with the task's verifier timeout. The reward is 1.0 if the test command exits 0 and 0.0 otherwise. If the hidden patch cannot be applied over the agent's edits, or applying it is interrupted, every file it touches is restored, nothing is graded and the agent can submit again. The agent is instructed not to modify or fabricate tests. The result reports the test command's exit code and the test counts from the runner's summary (pytest, jest, vitest, mocha, unittest, cargo test or go test), never test names or output.
At setup the environment strips the repository's git history down to the checked-out commit and its ancestors: refs that are not ancestors of HEAD (upstream branches, remote-tracking refs, later tags, stash, notes), refs that do not resolve, remotes, reflogs and unreachable objects are removed, since some images keep the upstream implementation there.
Data
The problem statements and grade contracts are sourced from the code configuration of XiaomiMiMo/MiMo-V2.6-RL-oss and vendored as a parquet file. Each task's Docker image is public on Docker Hub as docker.io/xiaomimimo/mimo-v2.6-rl-oss:<tag>, resolved from the dataset's image-mapping.jsonl (also vendored); the OpenReward platform pulls the image at run time.
Tools
bash— run a shell command in the repository root.view— read a file, optionally a line range.str_replace,insert,create— edit and create files.submit— apply the hidden tests, run them, and end the episode.
Other Environment Requirements
The environment boots a sandbox, so it needs an OpenReward API key supplied via the session secrets (api_key). No other external API keys are required.
Safety
Agents edit code inside an isolated, network-disabled sandbox and are graded on a hidden test suite. The tasks are ordinary open-source software fixes and present no direct safety risks.
Citations
The tasks are from Xiaomi's MiMo-V2.6 open RL release:
@misc{MiMoV26RLoss,
author = {{LLM-Core Xiaomi}},
title = {MiMo-V2.6-RL-oss: Agentic RL Environments},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/datasets/XiaomiMiMo/MiMo-V2.6-RL-oss}}
}
The OpenReward environment is by the General Reasoning team:
@dataset{GRMimoCode,
author = {General Reasoning Inc. Team},
title = {MimoCode},
year = {2026},
publisher = {OpenReward},
url = {https://openreward.ai/GeneralReasoning/MimoCode}
}