brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
scene-configurationThis skill guides authors through validated IR-SIM YAML scenes, object geometry, kinematics, placement, collision policy, and state APIs.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when a task needs an IR-SIM YAML scene, a robot or obstacle, object geometry, a kinematic control vector, placement distributions, collision policy, or object state/goal inspection. Begin with the smallest explicit scene and run the bundled checker before constructing an environment:
python sub-skills/scene-configuration/scripts/validate_scene.py --help
python sub-skills/scene-configuration/scripts/validate_scene.py scene.yaml
Run those commands from the generated IR-SIM skill root, or resolve the script
path from the installed skill location. The checker uses only
yaml.safe_load; it does not import IR-SIM or open a GUI. It returns non-zero
for malformed YAML, unknown schema keys, unsupported shape/kinematics/behavior
combinations, ambiguous Ackermann geometry, invalid control dimensions, and
mismatched per-object lists. It is a strict preflight, not a replacement for
irsim.make().
world, robot, obstacle, or gui YAML with
the schema reference.python -m pip install ir-sim) and verify
import irsim; use display=False for headless work. pynput is optional
keyboard input, pyrvo is optional ORCA, and imageio[ffmpeg]/ffmpeg is
only needed for video output.shape, kinematics, state, goal, and compatible behavior
when it should move. Objects without kinematics are static.group
and group_name organize objects but do not replace names.irsim.make("scene.yaml", display=False, seed=7). The factory accepts one
mapping or a list of object-group mappings; number expands a group and
the runtime repeats short per-object lists, while the bundled checker asks
for exact lists to prevent accidental duplication.obj.state, obj.velocity, obj.goal, obj.geometry,
obj.get_info(), obj.get_obstacle_info(), obj.arrive, and
obj.collision. Use set_state, set_velocity, and set_goal; after
direct state changes, let the environment refresh/rebuild its spatial data
before relying on collision or sensor queries.Keep this route focused on scene/object contracts. Route environment lifecycle,
step/render/reset, and external stepping to
simulation-environments; sensor payloads
and maps to sensing-and-mapping; behavior
selection and planners to navigation-and-planning;
and registry or custom-controller work to
extension-and-control. Runtime files are
self-contained: the original checkout, usage files, private environments, and
review artifacts are not dependencies.