Skip to content

Docs refresh after 0.7.0 #1296

Open
Open

Description

@sergiopaniego

OpenEnv has grown a lot in the last few releases: Harbor, typed training captures (TrainingTrace), RFC 005 harnesses, production mode, new runtime providers and many new environments. The docs grew with it, and some pages haven't caught up yet. This issue tracks a pass over the README, guides, tutorials and environment READMEs to bring them in line with 0.7.0, so new users find the current way of doing things first.

PRs can reference this issue and tick items as they land. Each group is meant to fit in one PR, but splitting further is fine.

1. Align snippets and commands with the current API

Done in #1297.

  • README.md: echo example reads observation.metadata["message"]; CLI list matches the implemented commands (openenv serve isn't available yet, openenv harbor, collect, skills, catalog, discover are); test path in the Contributing section; runtime providers point to the providers guide.
  • getting_started/environment-builder.md: install command (pip install openenv or git+https://...), openenv push flags (--tag and --directory aren't options, the directory is positional), Dockerfile in sync with the CLI template (or link it), generated file names (<name>_environment.py, from <name> import ...).
  • getting_started/contributing-envs.md: example Space ids (openenv/echo_env, openenv/coding_env, openenv/wordle), openenv.yaml.
  • contributing.md: dev setup matches CONTRIBUTING.md (uv sync, PYTHONPATH=src:envs uv run pytest).
  • cli/templates/openenv_env/README.md: openenv push flags, sync/async client usage.
  • guides/concepts.md and guides/auto-discovery.md: openenv.yaml example matches the CLI template; one client per execution mode (async or .sync()); environment layout tree; AutoAction.from_hub example; package names in install commands.
  • guides/task-api.md: client base URL helper (base_url).
  • guides/mcp-environment-lifecycle.md: MCPToolClient talks to /mcp, so list_tools()/call_tool() don't go through step() or rewards; step(CallToolAction) is the path for training. Mention the 30 s default tool timeout and timeout_s.
  • guides/runtime-providers.md: echo example fields; mark Kubernetes as planned outside the providers table.
  • guides/customizing-web-ui.md: custom_tab_name, custom_tab_primary, show_default_tab, title_override; the UI mounts with ENABLE_WEB_INTERFACE=true; current Gradio docs link.
  • Tutorials: mcp-environment.md torchforge link; sft-warmup.md format-compliance sentence matches its table; end-to-end-walkthrough.md drift explanation matches GRPO's default beta=0.0; wordle-grpo.md uses dtype=; openenv-tutorial.md anchor and TOC labels.
  • Environment READMEs: client examples read fields from result.observation (finqa, connect4, kernrl); websearch uses its client class WebSearchEnv; finqa example query lists columns; browsergym image ghcr.io/huggingface/openenv-browsergym-env; snake/wildfire paths (envs/...); openapp/finrl client class names.

2. Training entry points

Framework-neutral framing

OpenEnv is a neutral contract between environments, harnesses and trainers (see GOVERNANCE.md), so the docs should present training paths in framework-agnostic terms and list TRL as one integration among several.

3. Tutorials to refresh

4. Structure and length

5. Spaces and deployment

Activity

  1. 2 remaining items

  2. burtenshaw commented on Oct 26, 2026

    @burtenshaw
    Collaborator

    Which remaining Spaces are now deployable, and who owns clearing the Hub quota/paused flags? Please update the outstanding deployment checklist.

  3. sergiopaniego commented on Oct 27, 2026

    @sergiopaniego
    CollaboratorAuthor

    Spaces update, all on v0.10.0 now:

    • Redeployed: atari_env, browsergym_env, chat_env, coding_env, echo_env, openspiel_env, repl, sudoku, sumo_rl_env and tbench2. openenv/wordle was already on v0.10.0. All of them pass /health and reset.
    • New org Spaces: snake_env, dipg_safety_env, grid_world_env and chess_env, running on cpu-basic. carla_env is created but paused, since CARLA needs an A10G. terminus_env (yours from May) is on v0.10.0, now public and paused, since every episode needs an E2B key.
    • Flags: echo_env's "flagged as abusive" pause was cleared by the Spaces team after I asked them, and openspiel_env was a regular pause, now resumed. Nothing is blocked on quota anymore.
    • Collections: the new Spaces, browsergym_env and terminus_env are in the OpenEnv Environment Hub collection. In Reasoning Games, openenv/snake_env replaces a community copy that was in a runtime error, and openenv/chess_env is added.

    The deploy workflow only creates version-suffixed copies (by design since #392), but the docs treat the unsuffixed Spaces as canonical, so they had been frozen since March. I redeployed them with scripts/prepare_hf_deployment.sh --env <env> --repo-id openenv/<space>. Should the workflow also update the canonical Spaces on each release? If we go that way, we should also delete the per-version collections (OpenEnv Environment Hub 0.2.1, 0.2.2 and 0.2.3) and the private suffixed Spaces behind them (*-0.2.x, *-v2-1-0, *-main, over 100 in the org).

    #1509 (merged) points the environments catalog and the env READMEs to these Spaces, and #1513 links terminus_env. #1512 fixes the deploy script never making a Space public (hf repos settings ignores --no-private).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions