Document agentic env generation GUI workflow#844
Conversation
Signed-off-by: Qian Lin <qianl@nvidia.com>
Greptile SummaryThis PR adds documentation for the agentic environment generation GUI workflow — a Streamlit-based live editor for creating, editing, visualizing, and simulation-previewing
Confidence Score: 5/5Documentation-only changes with no impact on runtime behaviour; safe to merge. All changes are documentation and docstring updates. The new gui_runner.rst page is well-structured, GIF image paths resolve correctly relative to their RST file locations, the two new environment entries in example_environments.rst are internally consistent with the linked YAML names and task descriptions, and the command-style migration from /isaac-sim/python.sh -m to python path/to/script.py is applied uniformly across all touched files. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[User: Enter natural-language prompt] --> B[Click 'Generate & compile']
B --> C[GUI calls environment-generation agent]
C --> D[Agent returns EnvironmentIntentSpec]
D --> E[Compile into ArenaEnvInitialGraphSpec]
E --> F[YAML loaded into editor\nSaved as initial + linked specs]
F --> G{User edits YAML?}
G -- Yes --> H[Edit YAML in editor\nValidation runs live]
H --> I{Validation passes?}
I -- No --> H
I -- Yes --> J[Click 'Save YAML'\nWrites _initial.yaml + _linked.yaml]
J --> K[Graph visualization auto-refreshes]
G -- No --> K
K --> L{Run sim preview?}
L -- Yes --> M[Click 'Run link + relation solver preview']
M --> N[SimApp side process:\nLink graph → Build env → Solve relations\n→ Zero-action rollout]
N --> O[Display two viewport captures]
L -- No --> P[Use YAML for policy evaluation]
O --> P
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
A[User: Enter natural-language prompt] --> B[Click 'Generate & compile']
B --> C[GUI calls environment-generation agent]
C --> D[Agent returns EnvironmentIntentSpec]
D --> E[Compile into ArenaEnvInitialGraphSpec]
E --> F[YAML loaded into editor\nSaved as initial + linked specs]
F --> G{User edits YAML?}
G -- Yes --> H[Edit YAML in editor\nValidation runs live]
H --> I{Validation passes?}
I -- No --> H
I -- Yes --> J[Click 'Save YAML'\nWrites _initial.yaml + _linked.yaml]
J --> K[Graph visualization auto-refreshes]
G -- No --> K
K --> L{Run sim preview?}
L -- Yes --> M[Click 'Run link + relation solver preview']
M --> N[SimApp side process:\nLink graph → Build env → Solve relations\n→ Zero-action rollout]
N --> O[Display two viewport captures]
L -- No --> P[Use YAML for policy evaluation]
O --> P
Reviews (5): Last reviewed commit: "Update docs/pages/example_workflows/agen..." | Re-trigger Greptile |
There was a problem hiding this comment.
🤖 Isaac Lab-Arena Review Bot
Summary
Docs-only PR adding a walkthrough page for the Streamlit gui_runner, linking two LFS-tracked GIFs, and reframing the agentic-env-gen workflow as experimental. I verified the documented module path, all three CLI flags (--env_initial_graph_spec, --out_dir, --port), the default output dir (isaaclab_arena_environments/agent_generated), the referenced example specs, the button labels, and the auto-save-on-generate behavior against the source — everything checks out and the prose is accurate. RST section underlines are all valid and the GIFs are correctly stored via git-LFS.
Findings
🔵 Improvement: docs/pages/example_workflows/agentic_env_gen/gui_runner.rst:47 — see inline comment (minor button-label mismatch).
Test Coverage
Not applicable — documentation only. No code paths change, so no tests are needed.
Verdict
Ship it
Co-authored-by: arena-review-bot[bot] <290456231+arena-review-bot[bot]@users.noreply.github.com> Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
There was a problem hiding this comment.
🤖 Isaac Lab-Arena Review Bot
Summary
Docs-only PR adding a walkthrough page for the Streamlit GUI runner and linking two demo GIFs into the agentic-env-generation workflow docs. I verified the content against the source: the module path isaaclab_arena_examples.agentic_environment_generation.gui_runner, all three CLI flags (--env_initial_graph_spec, --out_dir, --port), the UI labels, the Sim-preview controls, and both referenced robolab YAMLs all match the code. The GIFs are correctly committed as Git LFS pointers, and all RST title underlines are the right length. Accurate and well-scoped.
Findings
🔵 Improvement: gui_runner.rst:73 — The update-flow step refers to the button as Save while the UI Panels section (and the panel's own fallback label) calls it Save YAML. Minor consistency nit — worth aligning so a reader mapping the doc to the on-screen button isn't second-guessing.
Test Coverage
N/A — documentation only, no code paths changed.
Verdict
Ship it (one optional naming-consistency nit).
Signed-off-by: Qian Lin <qianl@nvidia.com>
Signed-off-by: Qian Lin <qianl@nvidia.com>
Signed-off-by: Qian Lin <qianl@nvidia.com>
Signed-off-by: Qian Lin <qianl@nvidia.com>
Co-authored-by: arena-review-bot[bot] <290456231+arena-review-bot[bot]@users.noreply.github.com>
There was a problem hiding this comment.
🤖 Isaac Lab-Arena Review Bot
Summary
Docs-only change (plus docstring updates in three runner scripts) that adds a GUI-workflow page for agentic env generation, documents two new robolab specs, links demo GIFs, and switches the example commands from /isaac-sim/python.sh -m <module> to python <script path>. GIFs are committed via Git LFS (pointer files), the new :docker_run_default: role and section underlines are all valid, and the documented gui_runner.py flags match the script. One command points at a script that doesn't exist.
Findings
🟡 Warning: docs/pages/example_workflows/agentic_env_gen/index.rst:100 — isaaclab_arena_examples/policy_runner.py doesn't exist in the repo, so this copy-paste command fails with can't open file. The only policy_runner.py entry points are isaaclab_arena/evaluation/policy_runner.py and policy_runner_cli.py. The Policy Runner with Variations block just below already invokes isaaclab_arena/evaluation/policy_runner.py (which accepts --env_graph_spec_yaml) — could we point this one at the same runner for consistency? (The pre-existing -m isaaclab_arena_examples.policy_runner was already stale, so this is a good chance to fix it.)
Test Coverage
N/A — documentation and docstring changes only.
Verdict
Minor fixes needed
There was a problem hiding this comment.
🤖 Isaac Lab-Arena Review Bot
Summary
Documentation PR adding a GUI-workflow page for agentic environment generation, two new robolab example-environment entries, linked GIFs, and switching the CLI examples from /isaac-sim/python.sh -m <module> to python <script>.py (consistent with the new :docker_run_default: container note, where python is /isaac-sim/python.sh). The prose is clear and the two new environment tables (tools_container, two_bin) match their linked YAML specs exactly. One command path is broken.
Findings
🟡 Warning: docs/pages/example_workflows/agentic_env_gen/index.rst:100 — python isaaclab_arena_examples/policy_runner.py points to a file that does not exist; the only policy_runner.py in the repo is isaaclab_arena/evaluation/policy_runner.py (which is exactly what the next "Policy Runner with Variations" block on line 125 uses). Copy-pasting this command fails with "No such file or directory". The previous -m isaaclab_arena_examples.policy_runner module was already non-existent, so this is a good chance to fix it. See inline suggestion.
Test Coverage
Docs-only change; no tests required. The GIFs are committed via git-LFS (the correct mechanism for doc images), and the runner scripts referenced use absolute imports with __main__ guards, so python <path>.py works.
Verdict
Minor fixes needed
fix eval path Co-authored-by: arena-review-bot[bot] <290456231+arena-review-bot[bot]@users.noreply.github.com>
There was a problem hiding this comment.
🤖 Isaac Lab-Arena Review Bot
Summary
Docs-only PR: adds a GUI-workflow page (gui_runner.rst), two new example-environment entries (tools_container, two_bin), links two GIFs, marks agentic env generation as experimental, and standardizes the runner invocations to python <script>.py. I verified the substance rather than the prose: all referenced robolab/*_linked.yaml files exist, the new GUI doc's flags (--env_initial_graph_spec, --out_dir, --port) and default output dir match gui_runner.py's parser, isaaclab_arena/evaluation/policy_runner.py exists, and every RST title underline is long enough. Nice catch fixing the old -m isaaclab_arena_examples.policy_runner command — that module doesn't exist, so the previous doc was broken.
The invocation switch from /isaac-sim/python.sh -m ... to python <path>.py matches the convention used across the rest of the docs (with :docker_run_default:), and the touched example scripts use absolute imports under __main__ guards, so script-path execution is equivalent. Changes are confined to Usage docstrings in the Python files.
Test Coverage
Not applicable — documentation and docstring-only changes. The GIFs are committed as git-LFS pointers, which is the correct mechanism for binaries here.
Verdict
Ship it
Summary
Document agentic env generation GUI
Detailed description