PrimeIntellect-ai/research-environments

Environments by the Prime Intellect Research Team

Python

130

502 commits

updated Sep 23, 2026

See the code

README

Prime Intellect Prime Intellect


Prime Envs: Environments by the Prime Intellect Research Team


A collection of environments maintained by the Prime Intellect Research Team. For community-contributed environments, check community-environments.

Installation

Quick Installation (Recommended)

curl -sSL https://raw.githubusercontent.com/PrimeIntellect-ai/prime-envs/main/scripts/install.sh | bash
Manual Installation
  1. Install Git LFS
sudo apt update && sudo apt install git-lfs
  1. Initialize Git LFS
git lfs install
  1. Clone the repository
git clone git@github.com:PrimeIntellect-ai/prime-envs.git
cd prime-envs
  1. (Optional) Pull Git LFS
git lfs pull
  1. Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
  1. Synchronize the environment
uv sync
  1. Install pre-commit hooks
uv run pre-commit install

Creating environments

Environments live under environments/, grouped into semantic group folders (e.g. math/, swe/, search/, code/), as a Python package that exports a Taskset. Install one as a local, editable package from the repo root:

uv pip install -e path/to/env

Then run it with the eval CLI by taskset id:

uv run eval <your-env-name> -n 3 -r 1

See the evaluation skill for the full smoke-test, full-eval, and configuration flow.

Task loading

Taskset loaders yield task records lazily in the 85 non-excluded environments. The unchanged automationbench_env, general_agent, tau2_bench, and tau3_bench loaders remain eager, so -n N does not bound task construction there. Without --shuffle, -n N bounds construction to the requested prefix for lazy loaders; --shuffle intentionally materializes the complete finite taskset before taking that prefix.

Harbor registry

This repository publishes a Harbor registry. See HARBOR.md for how to list and download datasets by Git ref, local checkout, or raw registry URL.

Running tests

We test that each environment can be installed, loaded, and evaluated. To run the tests, run:

uv run pytest tests

To run the tests across all CPU cores via the pytest-xdist plugin, run:

uv run pytest -n auto tests

To run tests for a specific environment, run:

uv run pytest tests/test_envs.py::test_eval -k <environment-name>

Contributors

mikasenghaas

168 commits

rasdani

102 commits

snimu

78 commits

xeophon

68 commits

Languages

Python

99.6%

PrimeIntellect-ai/research-environments

Environments by the Prime Intellect Research Team

Python

130

502 commits

updated Sep 23, 2026

See the code

README

Prime Intellect Prime Intellect


Prime Envs: Environments by the Prime Intellect Research Team


A collection of environments maintained by the Prime Intellect Research Team. For community-contributed environments, check community-environments.

Installation

Quick Installation (Recommended)

curl -sSL https://raw.githubusercontent.com/PrimeIntellect-ai/prime-envs/main/scripts/install.sh | bash
Manual Installation
  1. Install Git LFS
sudo apt update && sudo apt install git-lfs
  1. Initialize Git LFS
git lfs install
  1. Clone the repository
git clone git@github.com:PrimeIntellect-ai/prime-envs.git
cd prime-envs
  1. (Optional) Pull Git LFS
git lfs pull
  1. Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
  1. Synchronize the environment
uv sync
  1. Install pre-commit hooks
uv run pre-commit install

Creating environments

Environments live under environments/, grouped into semantic group folders (e.g. math/, swe/, search/, code/), as a Python package that exports a Taskset. Install one as a local, editable package from the repo root:

uv pip install -e path/to/env

Then run it with the eval CLI by taskset id:

uv run eval <your-env-name> -n 3 -r 1

See the evaluation skill for the full smoke-test, full-eval, and configuration flow.

Task loading

Taskset loaders yield task records lazily in the 85 non-excluded environments. The unchanged automationbench_env, general_agent, tau2_bench, and tau3_bench loaders remain eager, so -n N does not bound task construction there. Without --shuffle, -n N bounds construction to the requested prefix for lazy loaders; --shuffle intentionally materializes the complete finite taskset before taking that prefix.

Harbor registry

This repository publishes a Harbor registry. See HARBOR.md for how to list and download datasets by Git ref, local checkout, or raw registry URL.

Running tests

We test that each environment can be installed, loaded, and evaluated. To run the tests, run:

uv run pytest tests

To run the tests across all CPU cores via the pytest-xdist plugin, run:

uv run pytest -n auto tests

To run tests for a specific environment, run:

uv run pytest tests/test_envs.py::test_eval -k <environment-name>

Contributors

mikasenghaas

168 commits

rasdani

102 commits

snimu

78 commits

xeophon

68 commits

Languages

Python

99.6%