Skip to main content
IdeGYM

Disposable dev environments, at scale

IdeGYM

An open-source orchestrator for scalable, disposable development environments — built for training reinforcement-learning models and running AI agents.

Already used by JetBrains Research

The whole system in one picture — click a node to dive in.

The problem

Why RL on coding tasks is hard

Training LLMs with reinforcement learning on coding tasks means running tens or hundreds of thousands of generation-reward cycles — each needing a clean, isolated environment with the right source code and tools.

Scale

A single machine can’t run hundreds of parallel environments that reset in seconds. You need a distributed system built for that from the ground up.

Isolation

Agents must not interfere with each other. Every environment needs its own filesystem, process tree, and network to fully reset between episodes.

Latency

Spinning up a new container for every cycle is too slow at scale. Environments need to restart or reset in under a second to keep throughput high.

What IdeGYM does

A Kubernetes-native environment fleet

IdeGYM manages the full lifecycle of development environments — from image build to teardown — on Kubernetes.

🧪 Disposable environments

Spin up isolated, sandboxed environments on demand and tear them down when finished — no manual cleanup.

🧱 Any project, any image

Load projects from a Git URL, archive, or mounted volume, and build custom Docker images via a plugin API.

🔀 Request forwarding

Proxy requests from your training loop straight to running pods and return responses, so you can compute rewards offline or replay episodes.

Features

Everything a training loop needs

🖥️ IDE integration

JetBrains IDEs run headlessly inside pods and route their MCP server through IdeGYM — inspections, refactoring, and code intelligence for any MCP agent, plus a direct HTTP inspection endpoint.

🔌 MCP support

Tools, rewards, filesystem, and server lifecycle are exposed as MCP endpoints, so any MCP-compatible agent or framework can use IdeGYM without custom client code.

🔗 Integrations

Drop-in support for OpenEnv and verl — works with the RL frameworks you already use.

🔄 Episode lifecycle

Reuse environments across episodes: reset just the project folder, restore from a filesystem + memory checkpoint, or restart completely.

🐚 Shell execution

Bash execution, file editing, and a filesystem API are available on every pod.

🎯 Rewards

Define your own reward signals — run tests, check compilation, validate setup — and plug them directly into your training loop.

🧱 Image builder

Use any Docker image as a base. Compose custom images from reusable plugins, in Python or YAML.

Integrations

Works with your stack

OpenEnv

OpenEnv

IdeGYM is WebSocket-compatible with OpenEnv — run OpenEnv environments directly on IdeGYM’s Kubernetes infrastructure without changing the agent interface.

verl

verl

IdeGYM pairs with verl as the environment layer: verl handles RL training, IdeGYM provides the scalable sandbox fleet.

Dive deeper — pick your layer

New here?

What IdeGYM is, in plain language

A glossary of the moving parts — clients, orchestrator, server pods, images, plugins, rewards, the watcher — with no Kubernetes knowledge assumed.

Read the concepts →
Researchers

The full RL / eval lifecycle

Define an environment → build → provision → act with tools → score with rewards → clean up. The end-to-end data flow, with diagrams.

Trace the data flow →
Developers

Component deep dives & extension points

Responsibilities, key classes, entry points, and the three plugin hook points — each page links straight into the source on GitHub.

Open the architecture →

Spin up, train, and repeat with IdeGYM