scienceworld-liquid-filler

$npx mdskill add zjunlp/SkillNet/scienceworld-liquid-filler

Fill 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