feat(cli): run an environment by name — 'gym env run --env <name>' (#1205 friction #8 / FEP-1022) - #1636
Closed
wprazuch wants to merge 4 commits into
Closed
feat(cli): run an environment by name — 'gym env run --env <name>' (#1205 friction #8 / FEP-1022)#1636wprazuch wants to merge 4 commits into
wprazuch wants to merge 4 commits into
Conversation
wprazuch
force-pushed
the
wprazuch/environment-registry
branch
from
June 22, 2026 13:48
df7a13d to
6784a52
Compare
wprazuch
force-pushed
the
wprazuch/env-run-by-name
branch
from
June 22, 2026 13:49
627401f to
41193f1
Compare
wprazuch
force-pushed
the
wprazuch/environment-registry
branch
from
June 24, 2026 07:04
eb06d7b to
c237f13
Compare
wprazuch
force-pushed
the
wprazuch/env-run-by-name
branch
from
June 24, 2026 07:06
c13c345 to
c764c57
Compare
wprazuch
force-pushed
the
wprazuch/environment-registry
branch
2 times, most recently
from
June 24, 2026 07:18
e7c8af4 to
42d6da2
Compare
wprazuch
force-pushed
the
wprazuch/env-run-by-name
branch
from
June 24, 2026 07:20
33fa0b6 to
fbdb9e2
Compare
wprazuch
force-pushed
the
wprazuch/environment-registry
branch
from
June 24, 2026 07:21
42d6da2 to
fe103a2
Compare
Builds on the environment registry: --env resolves a name to its config via resolve_environment_config_paths and merges it with any --config into a single +config_paths, so an environment can be run by name instead of an internal path (epic #1205 friction #8 / FEP-1022). Model flags pass through; an unknown name exits cleanly with the registry's 'did you mean?' message. Pair --env with --config / --model-* for the model the environment references. env run becomes a callable router target (_env_run); config-only behavior is unchanged. Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
_env_run stripped every +config_paths token to merge --env/--config into one, which also discarded the token the router emits for an asset-selector name (e.g. 'gym env run mcqa'), yielding empty config_paths. Merge --env's resolved paths with the paths already in the emitted token instead, so asset selectors, --config, and --env coalesce. Fixes TestAssetSelectors regression. Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch
force-pushed
the
wprazuch/env-run-by-name
branch
from
June 24, 2026 07:22
fbdb9e2 to
a64adfb
Compare
Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
Contributor
Author
|
This duplicates part of #1630 functionality |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The run-by-name half of M2 (the discovery half is the base PR #1635): run an environment by its short name instead of an internal config path.
gym env run --env workplace_assistant --config responses_api_models/openai_model/configs/openai_model.yaml # or: gym env run --env workplace_assistant --model-url ... --model-name ... --model-api-key ...--env <name>resolves to the environment's config via the registry (resolve_environment_config_paths) and is merged with any--configinto a single+config_paths. Because an environment references its model server by name, you pair--envwith--config/--model-*to supply the model.--model-name/url/api-key) pass through unchanged.env runbecomes a callable router target (_env_run); config-only behavior is unchanged.Why
Epic #1205 friction 8. Completes the registry payoff: discover (
gym list environments, #1635) + run by name.Tests
TestEnvRunByName(5): name→config resolution;--env+--configmerge into one+config_paths; model-flag passthrough; config-only unchanged; unknown env exits cleanly. 91/91 router+cli+registry tests pass; ruff + pre-commit clean.