Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
3bf6a91
first save
wukaixingxp Nov 9, 2025
3fe46b3
remove unneeded
wukaixingxp Nov 9, 2025
156738e
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Nov 17, 2025
a4877bc
auto env rebased
wukaixingxp Nov 17, 2025
3ccd2a1
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Nov 18, 2025
0b15865
Test workflow
zkwentz Oct 18, 2025
e04a79a
refactor: migrate from dataclasses to Pydantic models
rycerzes Nov 17, 2025
f15fbdf
fix: specify type for state in get_state
rycerzes Nov 17, 2025
522b2ae
refactor: migrate echo_env to use Pydantic
rycerzes Nov 17, 2025
ff1bd7c
feat: endpoints to retrieve JSON schemas actions, observations, and sโ€ฆ
rycerzes Nov 18, 2025
82acaf2
feat: request and response models for reset and step endpoints
rycerzes Nov 18, 2025
04eb97b
feat: extra fields in reset and step request models for custom params
rycerzes Nov 18, 2025
4078161
chore: API docs and metadata extraction for action fields
rycerzes Nov 19, 2025
a9038dc
feat: env metadata
rycerzes Nov 19, 2025
5f2e451
delete registry
wukaixingxp Nov 19, 2025
304b5fc
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Nov 19, 2025
de0e7fd
auto_example working
wukaixingxp Nov 20, 2025
85a7f4c
refactor: Simplify AutoEnv/AutoAction API - rename from_docker_image/โ€ฆ
wukaixingxp Nov 20, 2025
98ee0b5
refactor: Remove AutoEnv.from_hub() method - not implemented yet
wukaixingxp Nov 20, 2025
d010ac6
fix: Update test assertions to match actual class names
wukaixingxp Nov 20, 2025
90b6c61
refactor: Remove redundant AutoAction.from_env() method
wukaixingxp Nov 20, 2025
f322f94
ready to merge
wukaixingxp Nov 20, 2025
dd8e48e
add src/envs/.discovery_cache.json to gitignore
wukaixingxp Nov 20, 2025
0ad8620
rm src/envs/.discovery_cache.json
wukaixingxp Nov 20, 2025
2468b23
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Nov 22, 2025
f1f8d29
revert back
wukaixingxp Nov 22, 2025
d673db7
use the instead
wukaixingxp Nov 22, 2025
3ec13a3
delete envs directory
burtenshaw Nov 25, 2025
0d59dc3
delete src/core
burtenshaw Nov 25, 2025
75af090
delete src/openenv_cli
burtenshaw Nov 25, 2025
3b5c245
add openenv cli
burtenshaw Nov 25, 2025
b4785a3
add openenv core
burtenshaw Nov 25, 2025
701e07a
add init shims
burtenshaw Nov 25, 2025
83dda10
move envs to root
burtenshaw Nov 25, 2025
3597636
update tests
burtenshaw Nov 25, 2025
2251f3a
grep update examples
burtenshaw Nov 25, 2025
d196fc1
update scripts with new envs path
burtenshaw Nov 25, 2025
f66f189
update gh actions
burtenshaw Nov 25, 2025
916dc30
update rfcs
burtenshaw Nov 25, 2025
0659195
update readme
burtenshaw Nov 25, 2025
1e7e398
update docs for restructure
burtenshaw Nov 25, 2025
a784df9
update project toml
burtenshaw Nov 25, 2025
7bd8559
simplify all optional group in toml
burtenshaw Nov 25, 2025
bbf9252
feat: serialization utilities and route config
rycerzes Nov 25, 2025
c4f20d7
chore: types
rycerzes Nov 25, 2025
0356bd1
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Nov 27, 2025
88a8292
now support hf space with autoenv
wukaixingxp Nov 28, 2025
fde4707
test auto working
wukaixingxp Dec 2, 2025
80996ee
add cache to avoid download twice
wukaixingxp Dec 2, 2025
2f18f5b
add example and test
wukaixingxp Dec 2, 2025
c51471b
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Dec 2, 2025
e612a1b
Merge pull request #225 from meta-pytorch/restructure-package
burtenshaw Dec 3, 2025
c4b0e6d
Merge branch 'main' into release
burtenshaw Dec 3, 2025
e58eb83
Merge branch 'main' into release
burtenshaw Dec 3, 2025
b254e20
Merge branch 'release' into pr/217-with-release
burtenshaw Dec 3, 2025
cd8b057
Merge pull request #217 from rycerzes/pydantic-migration
burtenshaw Dec 3, 2025
b78349f
Merge branch 'meta-pytorch:main' into autoenv
wukaixingxp Dec 10, 2025
46ef41c
Merge upstream release branch (#232) into autoenv
wukaixingxp Dec 10, 2025
46c4b23
Refactor: Move auto-discovery to src/openenv/auto and update imports
wukaixingxp Dec 10, 2025
60890b0
Rename from_name() to from_hub() in AutoEnv and AutoAction
wukaixingxp Dec 10, 2025
0329c91
Add pytest markers for auto-discovery tests
wukaixingxp Dec 10, 2025
35d7a4d
docs: Convert auto_env_example.py to comprehensive documentation
wukaixingxp Dec 10, 2025
0487d7e
test: Fix test module paths after refactoring
wukaixingxp Dec 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/deploy-hf-env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ jobs:
# Check which specific environments changed
changed_envs=()
for env in echo_env coding_env chat_env atari_env openspiel_env; do
if git diff --name-only HEAD~1 HEAD | grep -E "^src/envs/$env/" > /dev/null; then
if git diff --name-only HEAD~1 HEAD | grep -E "^envs/$env/" > /dev/null; then
changed_envs+=("$env")
fi
done
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,25 +68,25 @@ jobs:
matrix:
image:
- name: echo-env
dockerfile: src/envs/echo_env/server/Dockerfile
dockerfile: envs/echo_env/server/Dockerfile
- name: chat-env
dockerfile: src/envs/chat_env/server/Dockerfile
dockerfile: envs/chat_env/server/Dockerfile
- name: coding-env
dockerfile: src/envs/coding_env/server/Dockerfile
dockerfile: envs/coding_env/server/Dockerfile
- name: sumo-rl-env
dockerfile: src/envs/sumo_rl_env/server/Dockerfile
dockerfile: envs/sumo_rl_env/server/Dockerfile
- name: atari-env
dockerfile: src/envs/atari_env/server/Dockerfile
dockerfile: envs/atari_env/server/Dockerfile
- name: git-env
dockerfile: src/envs/git_env/server/Dockerfile
dockerfile: envs/git_env/server/Dockerfile
- name: my-env # Add your environment here
dockerfile: src/envs/connect4_env/server/Dockerfile
dockerfile: envs/connect4_env/server/Dockerfile
- name: textarena-env
dockerfile: src/envs/textarena_env/server/Dockerfile
dockerfile: envs/textarena_env/server/Dockerfile
- name: browsergym-env
dockerfile: src/envs/browsergym_env/server/Dockerfile
dockerfile: envs/browsergym_env/server/Dockerfile
- name: snake-env
dockerfile: src/envs/snake_env/server/Dockerfile
dockerfile: envs/snake_env/server/Dockerfile

steps:
- name: Checkout code
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/openspiel_base_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ jobs:
uses: docker/build-push-action@v5
with:
context: .
file: src/envs/openspiel_env/server/Dockerfile.openspiel-base
file: envs/openspiel_env/server/Dockerfile.openspiel-base
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta-openspiel-base.outputs.tags }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -109,3 +109,4 @@ outputs/
.uv/

*.backup*/
src/envs/.discovery_cache.json
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

An e2e framework for creating, deploying and using isolated execution environments for agentic RL training, built using Gymnasium style simple APIs.

[![PyPI](https://img.shields.io/pypi/v/openenv-core?color=blue)](https://pypi.org/project/openenv-core/)
[![PyPI](https://img.shields.io/pypi/v/openenv?color=blue)](https://pypi.org/project/openenv/)
[![Discord](https://img.shields.io/badge/Discord-OpenEnv-7289da?style=flat&logo=discord&logoColor=white)](https://discord.gg/YsTYBh6PD9)
[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/meta-pytorch/OpenEnv/blob/main/examples/OpenEnv_Tutorial.ipynb)
[![Docs](https://img.shields.io/badge/Docs-Explore-blue?logo=readthedocs&logoColor=white)](https://meta-pytorch.org/OpenEnv/)
Expand Down Expand Up @@ -83,7 +83,7 @@ The web interface is **conditionally enabled** based on environment variables:
To use the web interface:

```python
from core.env_server import create_web_interface_app
from openenv.core.env_server import create_web_interface_app
from your_env.models import YourAction, YourObservation
from your_env.server.your_environment import YourEnvironment

Expand Down Expand Up @@ -176,7 +176,7 @@ uv run server --host 0.0.0.0 --port 8000
- โœ… **Flexible workflows**: Use pip, uv, or Docker for different scenarios
- โœ… **CI/CD ready**: Automated dependency generation and validation

See [`src/envs/README.md`](src/envs/README.md) for a complete guide on building environments.
See [`envs/README.md`](envs/README.md) for a complete guide on building environments.

### For Environment Users

Expand Down Expand Up @@ -276,7 +276,7 @@ A simple environment that echoes back messages with metadata. Perfect for:
- Learning the framework basics
- Verifying container deployment

See: [`src/envs/echo_env/README.md`](src/envs/echo_env/README.md)
See: [`envs/echo_env/README.md`](envs/echo_env/README.md)

### Coding Environment
Executes arbitrary Python code in a sandboxed environment. Features:
Expand All @@ -285,7 +285,7 @@ Executes arbitrary Python code in a sandboxed environment. Features:
- Persistent execution context within episodes
- Error handling with detailed messages

See: [`src/envs/coding_env/README.md`](src/envs/coding_env/README.md)
See: [`envs/coding_env/README.md`](envs/coding_env/README.md)

## Community Support & Acknowledgments
This is an open and community-centric project. If you would like to add your name here, please put up a pull request and tag @jspisak for review. Ty!!
Expand Down
Loading