scienceworld-liquid-filler
$
npx mdskill add zjunlp/SkillNet/scienceworld-liquid-fillerFill a container with liquid by positioning it at a source, activating the flow, and deactivating the source.
- Adds necessary liquid components to an empty or partially filled vessel for subsequent use.
- Requires interaction with physical objects like containers and functional liquid sources.
- Executes a precise, three-step sequence: move, activate, and then deactivate the source.
- Results in the specified receptacle containing the required liquid volume, ready for mixing.
SKILL.md
.github/skills/scienceworld-liquid-fillerView on GitHub ↗
---
name: scienceworld-liquid-filler
description: This skill fills a container with liquid from a source by first placing the container at the source, then activating the source (e.g., turning on a sink), and finally deactivating it. It should be triggered when the agent has an empty or partially filled container and needs to add a liquid component. The skill results in the container containing the liquid, ready for mixing or further use.
---
# Instructions
## 1. Identify the Goal
Your goal is to fill a target container with a specific liquid from a source. This skill is triggered when you have a container (empty or partially filled) and need to add a liquid component to it.
## 2. Prerequisites & Initial State
Before executing this skill, ensure you have:
* **A Target Container:** The container you wish to fill (e.g., a cup, bowl, jug). It should be in your inventory.
* **A Liquid Source Identified:** You must know the location of a functional liquid source (e.g., a sink, a jug containing liquid, a toilet with water). Use the `look around` and `examine` actions to find one.
## 3. Core Procedure
Execute the following sequence of actions precisely:
1. **Position the Container:** Move the target container to the liquid source.
* **Action:** `move <CONTAINER> to <SOURCE>`
* **Example:** `move cup to sink`
2. **Activate the Source:** Turn on the liquid source to begin the flow.
* **Action:** `activate <SOURCE>`
* **Example:** `activate sink`
3. **Deactivate the Source:** Turn off the liquid source once the container is sufficiently filled. Assume the filling is instantaneous upon activation.
* **Action:** `deactivate <SOURCE>`
* **Example:** `deactivate sink`
4. **Retrieve the Filled Container:** Pick up the now-filled container.
* **Action:** `pick up <CONTAINER>`
* **Example:** `pick up cup`
## 4. Verification & Next Steps
* Use `examine <CONTAINER>` to confirm it now contains the desired liquid.
* The container is now ready for the next step in your task (e.g., `mix`).
## 5. Important Notes
* **Efficiency:** Do not repeatedly pick up the container between steps unless necessary for transport. The sequence `move -> activate -> deactivate -> pick up` is optimal.
* **Error Handling:** If an action fails (e.g., "You can't do that"), re-examine the scene and the object states. The source may need to be in a specific state (e.g., a sink must be `turned off` before it can be activated).
* **Context:** This skill is part of a larger procedure (e.g., following a recipe). Always refer to the primary task goal.
More from zjunlp/SkillNet
- alfworld-appliance-navigatorNavigates the agent to a target appliance (microwave, stove, fridge, or sinkbasin) needed for object processing. Use when you are holding an object that needs heating, cooling, or cleaning and must move to the correct appliance station. Identifies the required appliance from the task context and executes the movement action.
- alfworld-appliance-preparerPrepares a household appliance (microwave, oven, toaster, fridge) for use by ensuring it is in the correct open/closed state. Use when the agent needs to heat, cool, or cook an item and must first open or close the appliance before placing an object inside. Takes an appliance identifier as input and outputs a confirmation that the appliance is ready for the next action.
- alfworld-clean-objectCleans a specified object using an appropriate cleaning receptacle (e.g., sinkbasin). Use when a task requires an object to be in a clean state (e.g., "clean potato", "wash apple") before proceeding. Navigates to the cleaning location, performs the clean action, and confirms the object is now clean.
- alfworld-device-operatorOperates a device or appliance (like a desklamp, microwave, or fridge) to interact with another object. Use when the task requires using a tool on a target item (e.g., "look at laptop under the desklamp", "heat potato with microwave"). Locates both the device and target object, co-locates them, and executes the appropriate use action (toggle, heat, cool, or clean).
- alfworld-environment-scannerPerforms an initial scan of the ALFWorld environment to identify all visible objects and receptacles. Use when you first enter an environment and need to build a mental map for task planning. Processes raw observation text into a structured list of entities, categorizing them as objects or receptacles.
- alfworld-goal-interpreterParses the natural language task goal to extract actionable sub-objectives and required objects. Trigger this skill whenever a new task is assigned to break down complex instructions into clear, sequential targets. It interprets phrases like 'look at X under Y' to identify target objects (pillow), reference objects (desklamp), and spatial relationships (under).
- alfworld-heat-object-with-applianceUses a heating appliance (microwave, stoveburner, oven) to apply heat to a specified object. Use when the task requires warming or cooking an item (e.g., "heat some egg", "warm the mug") and a heating appliance is available. Takes the object name and appliance name as input and outputs the object in a heated state, ready for placement at the task's target location.
- alfworld-inventory-managementUse when the agent must collect and track multiple instances of the same object type in ALFWorld (e.g., "put two cellphone in bed"). This skill maintains a count of collected versus needed objects, guides systematic searching through receptacles, and ensures each found object is placed at the target before searching for the next.
- alfworld-locate-target-objectNavigates to a suspected location and identifies a target object. Use when your goal requires finding a specific object (e.g., "potato", "plate") and its location is not immediately known. Moves to a relevant receptacle (like a fridge or cabinet), checks its contents, and outputs the object's location or confirms its absence.
- alfworld-location-navigatorMoves the agent to a specified receptacle or object location within the Alfworld environment. Use this skill when the agent needs to physically approach a target to inspect or interact with it, such as when checking an object's state or preparing for pickup. The skill takes a target location name as input and executes the 'go to' action, resulting in the agent being positioned at the destination for subsequent operations.