Skip to main content

author-environment

Create or modify Isaac Lab-Arena environments, scenes, tasks, completion predicates, placement constraints, and environment variations by composing existing features. Use for environment authoring and feature discovery; use run-experiment to execute an existing evaluation.

Datos de origen

Repositorio
isaac-sim/IsaacLab-Arena
Última actividad en el origen
8 de octubre de 2026 a las 14:32
Idioma detectado de SKILL.md
inglés
Estrellas
610
Forks
113

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
author-environment
description
Create or modify Isaac Lab-Arena environments, scenes, tasks, completion predicates, placement constraints, and environment variations by composing existing features. Use for environment authoring and feature discovery; use run-experiment to execute an existing evaluation.
# Author an Arena environment Produce the smallest environment definition that expresses the request and follows a maintained Arena example. Prefer configuration, then composition, then a small extension for a demonstrated gap. ## Discover before extending Use `rg --files` to find relevant concepts under `docs/pages/concepts/`, examples under `isaaclab_arena_environments/` and `isaaclab_arena_examples/`, and implementations in `isaaclab_arena/` or the relevant first-party extension. Inspect the checked-out source when docs and examples differ; Arena's APIs are evolving. Use any relevant Arena feature, including untagged classes and Python APIs outside registries. `@agent_ready` filters the built-in environment generator's prompt catalogues; it does not restrict coding agents. The references below are starting points, not an exhaustive feature inventory. Inspect the [registries](../../../isaaclab_arena/assets/registries.py) for registered components. Load registries only in the supported runtime after SimulationApp startup; imports can require USD. Identify reusable components for each requirement before implementing. Check constructors and their inheritance chains before adding capabilities. If reuse cannot express a requirement, name the missing capability and add the smallest extension. Do not duplicate solvers, predicates, temporal counters, reset loops, progress tracking, or variation systems that Arena already provides. ## Assemble from maintained sources Read only the references relevant to the requested behavior: - **Authoring surface:** start from a matching existing environment. For Python, follow the [maintained Maple-table factory](../../../isaaclab_arena_environments/pick_and_place_maple_table_environment.py) and [factory contract](../../../isaaclab_arena/environments/arena_environment_factory.py). Reuse [builder configuration](../../../isaaclab_arena/environments/arena_env_builder_cfg.py) for existing build and reset controls; keep environment configuration focused on the scene and task. For graph YAML, inspect the [schema](../../../isaaclab_arena/environment_spec/arena_env_graph_types.py) and [task conversion](../../../isaaclab_arena/environment_spec/arena_env_graph_task_conversion_utils.py) alongside `isaaclab_arena_environments/robolab/` examples. Choose Python when the graph cannot express the required semantics; a field parsing successfully does not prove it is consumed. - **Assets and layout:** follow the example's ownership and scene composition. Use the existing [relations](../../../docs/pages/concepts/object_placement/relations.rst), [placement pools](../../../docs/pages/concepts/object_placement/pooled_placement.rst), and [validation workflow](../../../docs/pages/concepts/object_placement/validation.rst). Check asset identity, collision handling, reachability, physical support, and reset requirements. - **Task semantics:** read [task composition](../../../docs/pages/concepts/task/concept_composite_tasks_design.rst) and [predicates and progress](../../../docs/pages/concepts/task/concept_progress_tracking_design.rst) for ordered milestones, current final conditions, simultaneous truth, temporal holds, and reporting. Reuse existing tasks and preserve their sensors and failure conditions. - **Variations:** read the [variation concepts](../../../docs/pages/concepts/variations/variations.rst) and inspect asset constructors, including [object base classes](../../../isaaclab_arena/assets/object_base.py), for existing attachments before adding one. Verify names, units, and sampling timing against the relevant implementation in `isaaclab_arena/variations/`. - **Companion Experiments:** follow the [Experiment concepts](../../../docs/pages/concepts/concept_arena_experiments.rst) and [variation example](../../../isaaclab_arena_environments/experiment_configs/droid_pnp_variations_experiment.yaml). Check effective defaults across every supplied Run and constraints in the [Run configuration](../../../isaaclab_arena/evaluation/arena_run.py). Keep variations opt-in and cameras optional unless requested. Keep execution settings separate from task semantics. ## Validate and hand off Use [dev-container](../dev-container/SKILL.md) for the clone's runtime and host-user execution, [setup-arena](../../user/setup-arena/SKILL.md) for requested runtime preparation, and [run-tests](../run-tests/SKILL.md) for pytest. Run lint and source inspection on the host. If no runtime is ready, complete static review and report the limit; do not install dependencies or claim runtime success. Authoring alone does not require policy rollouts or policy servers. Check Python/YAML syntax, referenced constructors, registration, schema conversion, defaults, and feature reuse without importing Arena on the host. In a ready runtime, build and reset the environment, then use bounded direct steps for inspection. Use existing focused tests to check changed success logic, temporal interruptions, and reset isolation across parallel environments. Parsing or passive stepping alone does not establish task solvability. For variation inspection, use the `--list_variations` path through [run-experiment](../../user/run-experiment/SKILL.md). Check the [Environment Runner](../../../isaaclab_arena/scripts/environment_runner.py) requirements before using it for interactive inspection; do not assume it supports headless validation. Finish with the reference example, reused features, any extension rationale, definition/configuration paths, checks actually run, and remaining simulation validation. Keep this in the handoff; no extra design document is required.
Ver en GitHub