Skip to content

OpenRange

OpenRange is a multi-agent cybersecurity gymnasium where Red and Blue agents co-evolve on validated enterprise networks that mutate between episodes, requiring long-horizon planning across 50–100 step trajectories with s

Core trick

Compiles a business manifest into a network, validates it against reference traces, then freezes it as a snapshot for red-blue episodes.

Tags

Description

OpenRange is a multi-agent cybersecurity gymnasium where Red and Blue agents co-evolve on validated enterprise networks that mutate between episodes, requiring long-horizon planning across 50–100 step trajectories with sparse delayed rewards on infrastructure that exceeds any single context window. The environment drives its own improvement through a curriculum-aware mutation policy that generates new challenges, escalates difficulty, and couples adversarial self-play rewards so neither agent can plateau.
open-cybernauts/open-range★ 83 forksPythonApache-2.0Created Mar 7, 2026 · last push Apr 7, 2026

README excerpt

<div align="center">
  <h1>OpenRange</h1>
  <img src="assets/evolving_gym_hero.png" alt="OpenRange: validator-admitted enterprise cyber range" width="800" />
  <br />
  <br />
  <img src="https://img.shields.io/badge/Package-open--range-blue" alt="Package: open-range" />
  <img src="https://img.shields.io/badge/Runtime-red%2Fblue%2Fgreen-red" alt="Runtime: red/blue/green" />
  <img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache 2.0" />
</div>

OpenRange is a manifest-first cyber range for training red and blue agents in
bounded enterprise worlds. It compiles a business manifest into a world,
validates that world with private reference traces and deterministic probes,
freezes it as an immutable snapshot, and runs episodes with red, blue, and
green-user dynamics.

This branch exposes OpenRange as an installable Python package and CLI. It is
not the legacy OpenEnv server/client stack from `main`.

## Why OpenRange

Static cyber tasks are useful for evaluation, but they are a weak training
target. They are fixed, narrow, easy to memorize, and usually offense-only.
OpenRange is aimed at the opposite shape: families of admitted enterprise-like
worlds that can be replayed, mutated between snapshots, and used for runtime and
training-data generation.

|  | Static cyber task | OpenRange |
|--|-------------------|-----------|
| **World** | One fixed puzzle | Admitted enterprise world from a manifest |
| **Reset** | Same challenge again | Load a stor

Team