git:20260307.388baa3 to git:20260316.e08426e

57 added, 16 removed. Audit A to A.

---
name: scienceworld-object-selector
- description: Selects appropriate objects from available options based on task criteria. Use this skill when you need to choose a specific object type (e.g., non-living thing) from multiple candidates. It evaluates object properties against task requirements and selects the most suitable candidate for further manipulation.
+ description: Use when the agent needs to choose a specific object from multiple candidates in the environment based on task criteria such as object type (non-living thing, electrical component, container), properties, or category. This skill surveys visible objects with "look around", evaluates each against the task requirements, selects the most suitable candidate, and signals intent with "focus on [OBJECT]".
---
- # Instructions
+ # Skill: scienceworld-object-selector
- Use this skill to identify and select an object from a list of candidates that matches a given task requirement (e.g., "non-living thing", "electrical component", "container").
+ ## Purpose
- ## Core Workflow
- 1. **Observe & Parse:** Use `look around` to get a list of all visible objects in your current location.
- 2. **Evaluate Candidates:** For each object, determine if it matches the task's criteria. Refer to the `references/object_properties.md` for common classifications.
- 3. **Select & Focus:** Choose the most suitable candidate. Use `focus on [OBJECT]` to signal your intent and proceed with the next task step (e.g., `pick up`, `move`, `use`).
+ Identify and select the correct object from visible candidates in the ScienceWorld environment based on task-defined criteria (e.g., "non-living thing", "electrical component", "container"), then signal intent with a `focus on` action.
- ## Key Principles
- * **Conciseness:** Choose the first suitable object unless the task implies a specific preference (e.g., "largest", "closest").
- * **Verification:** If uncertain about an object's properties, use `examine [OBJECT]` for more detail before selecting.
- * **Task Alignment:** Your selection should enable the *next action* in the task sequence.
+ ## When to Use
- ## Example (from trajectory)
+ - When a task requires choosing a specific type of object from multiple visible options
+ - When the agent must classify objects by property (living/non-living, material type, function) to select one
+ - When the task instructs finding and interacting with a particular category of object
+
+ ## Workflow
+
+ 1. **Survey the environment** -- Use `look around` to list all visible objects in the current location.
+ 2. **Evaluate candidates** -- For each visible object, determine if it matches the task criteria. Exclude target containers (e.g., destination boxes) and fixed furniture from candidates.
+ 3. **Select the best match** -- Choose the first suitable, portable object unless the task specifies a preference (e.g., "largest", "closest").
+ 4. **Signal intent** -- Execute `focus on [OBJECT]` to confirm selection.
+ 5. **Execute the task action** -- Proceed with the required action (e.g., `pick up`, `move`, `use`).
+
+ ## Examples
+
+ ### Example 1: Find a non-living thing and move it
+
**Task:** "Find a non-living thing. First, focus on the thing. Then, move it to the purple box."
- 1. `look around` reveals: `purple box`, `table`, `battery`, `black wire`, `blue light bulb`, `red light bulb`, `red wire`, `switch`, `violet light bulb`, `yellow wire`, `ultra low temperature freezer`.
- 2. Evaluate: The `purple box` is the target location. The `table` and `freezer` are furniture. All other items (`battery`, `wires`, `bulbs`, `switch`) are non-living.
- 3. Select: `black wire` is a straightforward, portable non-living object.
- 4. Action: `focus on black wire` -> `move black wire to purple box`.
+
+ ```
+ > look around
+ You see: purple box, table, battery, black wire, blue light bulb, red light bulb, red wire, switch, violet light bulb, yellow wire, ultra low temperature freezer.
+ ```
+
+ **Evaluation:** Purple box is the destination. Table and freezer are fixed furniture. Remaining items (battery, wires, bulbs, switch) are all non-living and portable.
+
+ ```
+ > focus on black wire
+ You focus on the black wire.
+
+ > move black wire to purple box
+ You move the black wire to the purple box.
+ ```
+
+ ### Example 2: Find an electrical component
+
+ **Task:** "Find an electrical component and place it on the workbench."
+
+ ```
+ > look around
+ You see: workbench, chair, battery, glass cup, red wire, notebook.
+
+ > focus on battery
+ You focus on the battery.
+
+ > move battery to workbench
+ You move the battery to the workbench.
+ ```
+
+ ## Key Principles
+
+ - **Exclude destinations** -- Never select the target container or destination as the candidate object.
+ - **Verify if uncertain** -- Use `examine [OBJECT]` for more detail about an object's properties before selecting.
+ - **Task alignment** -- The selection should enable the next action in the task sequence.