alfworld-receptacle-operator
$
npx mdskill add zjunlp/SkillNet/alfworld-receptacle-operatorOperate containers by opening or closing them to facilitate object placement or retrieval.
- Manages access to enclosed items, such as cabinets or refrigerators, for interaction.
- Relies on the current state of the receptacle and the desired task context.
- Determines the necessary action (open or close) based on the goal and observed state.
- Outputs a direct action command specifying the receptacle and the required state change.
SKILL.md
.github/skills/alfworld-receptacle-operatorView on GitHub ↗
---
name: alfworld-receptacle-operator
description: This skill opens or closes a receptacle (like a fridge, cabinet, or microwave) to access its interior or secure it. It should be triggered when an object needs to be placed inside/retrieved from a closed container, or when an open container should be closed (e.g., for energy efficiency or task cleanliness). The skill decides the appropriate 'open' or 'close' action based on the receptacle's current state and the task context.
---
# Skill: Receptacle Operator
## When to Use
Use this skill when you need to:
1. **Access a closed receptacle** to place an object inside or take an object out.
2. **Secure an open receptacle** after accessing it (e.g., to conserve energy, maintain cleanliness, or complete a task step).
## Core Decision Logic
1. **Check the receptacle's state** from the observation.
- If it reports "is closed" or "is open", note the state.
- If the interior is visible (e.g., "In it, you see..."), it is open.
2. **Choose action based on goal**:
- **Goal requires interior access** (e.g., "put in microwave", "take from fridge"):
- If closed → `open {recep}`
- If open → proceed with next step (e.g., `put` or `take`)
- **Goal requires securing receptacle** (e.g., after accessing, or for efficiency):
- If open → `close {recep}`
- If closed → no action needed
3. **Execute the action** using the exact format: `Action: open {recep}` or `Action: close {recep}`
## Example from Trajectory
- **Task**: "cool some tomato and put it in microwave"
- **Step 1**: At closed fridge → `Action: open fridge 1`
- **Step 2**: After checking interior → `Action: close fridge 1` (for efficiency)
- **Step 3**: At closed microwave → `Action: open microwave 1`
## Important Notes
- Always verify the receptacle state from the latest observation before acting.
- The skill only handles `open` and `close` actions. Other actions (like `take`, `put`, `cool`) are separate skills.
- If "Nothing happened" is observed after your action, the receptacle may already be in that state—re-check and adjust.
For detailed state diagrams and edge cases, see the reference documentation.
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.