-
Notifications
You must be signed in to change notification settings - Fork 579
Add reusable OpenEnv taskset support #1885
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| # openenv-echo-v1 | ||
|
|
||
| OpenEnv's official Echo image as a minimal v1 example. The reusable image lifecycle and | ||
| JSON-RPC-to-MCP bridge live in `verifiers`; this package only pins the image, prompt, and | ||
| resources. | ||
|
|
||
| ## Develop | ||
|
|
||
| 1. From the Verifiers checkout root, add both the current framework and this example to the | ||
| ephemeral `uv run` environment. | ||
| 2. Run it with any MCP-capable Verifiers harness and a container runtime: | ||
|
|
||
| ```bash | ||
| uv run --with-editable . --with-editable environments/openenv_echo_v1 \ | ||
| eval openenv-echo-v1 -n 1 --harness.runtime.type docker | ||
| uv run --with-editable . --with-editable environments/openenv_echo_v1 \ | ||
| eval openenv-echo-v1 -n 1 --harness.runtime.type docker --harness.id rlm | ||
| uv run --with-editable . --with-editable environments/openenv_echo_v1 \ | ||
| eval openenv-echo-v1 -n 1 --harness.runtime.type docker --harness.id codex \ | ||
| -m nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B | ||
| ``` | ||
|
|
||
| ## Layout | ||
|
|
||
| - `openenv_echo_v1/taskset.py` — a thin config over `vf`'s reusable `OpenEnvTaskset`. | ||
|
|
||
| Echo's production MCP contract is unscored, so the reward is neutral while the tool call and | ||
| result remain in the Verifiers trace. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| from openenv_echo_v1.taskset import OpenEnvEchoTaskset | ||
|
|
||
| __all__ = ["OpenEnvEchoTaskset"] |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| """OpenEnv's official Echo image as a zero-config example taskset.""" | ||
|
|
||
| import verifiers.v1 as vf | ||
| from verifiers.v1.tasksets.openenv import OpenEnvConfig, OpenEnvTaskset | ||
|
|
||
| ECHO_IMAGE = ( | ||
| "ghcr.io/meta-pytorch/openenv-echo-env@" | ||
| "sha256:56c55669c00b23a6af6adbcd8dd1fb5da3a276aec186b5c46cb4abeb708afa9c" | ||
| ) | ||
|
|
||
|
|
||
| class OpenEnvEchoConfig(OpenEnvConfig): | ||
| image: str = ECHO_IMAGE | ||
| prompt: str = ( | ||
| 'Call the echo_message tool with the message "Hello, World!", then return ' | ||
| "the echoed text." | ||
| ) | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Echo prompt wrong tool nameMedium Severity The example task prompt tells the model to call Reviewed by Cursor Bugbot for commit 0a2178f. Configure here. |
||
| resources: vf.TaskResources = vf.TaskResources(cpu=2, memory=4, disk=10) | ||
|
|
||
|
|
||
| class OpenEnvEchoTaskset(OpenEnvTaskset, vf.Taskset[vf.Task, OpenEnvEchoConfig]): | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
In this inheritance list, Useful? React with 👍 / 👎. |
||
| pass | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| [project] | ||
| name = "openenv-echo-v1" | ||
| version = "0.1.0" | ||
| description = "openenv-echo-v1 — <one-line description>." | ||
| requires-python = ">=3.11" | ||
| dependencies = ["verifiers"] | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 Medium
🚀 Reply "fix it for me" or copy this AI Prompt for your agent: |
||
|
|
||
| [build-system] | ||
| requires = ["hatchling"] | ||
| build-backend = "hatchling.build" | ||
|
|
||
| [tool.hatch.build.targets.wheel] | ||
| packages = ["openenv_echo_v1"] | ||


There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Echo env README noncompliant
Low Severity
The new
openenv_echo_v1package uses a hand-written README instead of the section structure produced byprime env init/uv run init(intro, Develop steps, Layout, CLI tuning). Project rules disallow freeform environment READMEs for packages underenvironments/.Triggered by project rule: BugBot Instructions
Reviewed by Cursor Bugbot for commit d7020e9. Configure here.