alfworld-object-locator
GitHub用于ALFWorld环境中定位未知位置物体的技能。通过解析环境、常识推理排序容器概率,并执行导航和搜索动作来找到目标对象。
Trigger Scenarios
Install
npx skills add zjunlp/SkillNet --skill alfworld-object-locator -g -y
SKILL.md
Frontmatter
{
"name": "alfworld-object-locator",
"description": "Use when the agent needs to find a specific object in ALFWorld that is not currently in inventory and whose location is unknown. This skill parses the environment observation, ranks receptacles by likelihood of containing the target object using common-sense reasoning, and outputs a navigation action to the most promising location."
}
Skill: Object Locator for ALFWorld
When to Use
Trigger this skill when:
- Your goal requires a specific object (e.g.,
knife,cellphone,apple) - The object is not in your inventory
- The current observation does not explicitly state the object's location
Core Workflow
1. Parse the Environment
Extract all visible receptacles from the observation text. Typical ALFWorld receptacles include:
- Surfaces: countertop, desk, dresser, bed, shelf, sidetable, coffeetable, diningtable
- Containers: drawer, cabinet, safe, fridge, microwave, garbagecan
- Appliances: sinkbasin, bathtub, stoveburner, toaster
2. Rank by Likelihood
Use common-sense reasoning to prioritize where the target object is most likely found:
| Object Type | High-Probability Receptacles |
|---|---|
| Kitchen items (knife, spatula, pan) | countertop, drawer, diningtable, stoveburner |
| Food (apple, potato, tomato, bread) | fridge, countertop, diningtable, microwave |
| Bathroom items (sponge, cloth, soap) | sinkbasin, bathtub, cart, shelf |
| Electronics (cellphone, laptop, remote) | desk, sidetable, dresser, bed, coffeetable |
| Stationery (pen, pencil, book) | desk, shelf, drawer, sidetable |
| Lighting (candle, desklamp) | sidetable, shelf, desk, dresser |
3. Navigate and Search
For each candidate receptacle (in priority order):
go to {receptacle}- Read the observation — does it mention the target object?
- YES:
take {object} from {receptacle}— object found - NO: If the receptacle is closed,
open {receptacle}and re-check - Still NO: Move to the next candidate receptacle
- YES:
4. Track Searched Locations
Maintain a list of already-searched receptacles to avoid revisiting them. If all high-probability locations are exhausted, expand the search to remaining receptacles.
Example
Task: "Clean the knife and put it in drawer." Observation: "You are in the middle of a room. Looking quickly around you, you see a countertop 1, a drawer 1, a drawer 2, a fridge 1, a sinkbasin 1, a stoveburner 1."
> go to countertop 1
On the countertop 1, you see a knife 1, a saltshaker 2, a bread 1.
> take knife 1 from countertop 1
You pick up the knife 1 from the countertop 1.
Result: Target object knife 1 located and acquired from countertop 1.
Example — Object not at first location:
> go to countertop 1
On the countertop 1, you see a saltshaker 2, a bread 1.
> go to drawer 1
The drawer 1 is closed.
> open drawer 1
You open the drawer 1. The drawer 1 is open. In it, you see a knife 1.
> take knife 1 from drawer 1
You pick up the knife 1 from the drawer 1.
Error Handling
- Object not found in any receptacle: Re-check closed containers that may not have been opened. Some objects are only visible after opening.
- Multiple instances: If the task requires a specific instance (e.g.,
knife 1vsknife 2), verify the object identifier matches before taking it. - "Nothing happened": The
takecommand may fail if the agent is not at the receptacle. Ensure navigation was successful before attempting to take.
Version History
- 7bb9a48 Current 2026-07-25 11:51


