
Alfworld Inventory Management
Use when the agent must collect and track multiple instances of the same object type in...
Install
npx skills add zjunlp/SkillNet --skill alfworld-inventory-management -g -a claude-code -y- Repository
- zjunlp/SkillNet1.4k
- Category
- AI and agents
- Updated
- 22d ago
- License
- MIT
- Context cost
- Lightabout 727 tokens
- Runs scripts
- No, instructions only
What it does
Use 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.
Inventory Management Skill
When to Use
Activate this skill when:
- Task requires collecting multiple instances of the same object type (e.g., "put two cellphone in bed")
- You need to track progress toward a quantity-based goal
- Searching through multiple locations systematically
Core Workflow
1. Initialize Inventory
- Parse the task description to identify:
- Target object type (e.g., "cellphone")
- Required quantity (e.g., "two" = 2)
- Target receptacle (e.g., "bed 1")
- Initialize counters:
collected = 0,needed = <quantity> - Create empty list for searched locations
2. Systematic Search Pattern
Follow this search priority:
- Visible surfaces (desks, dressers, beds, countertops) - check first
- Closed containers (drawers, cabinets, safes) - open and inspect
- Less common locations (shelves, side tables, garbage cans)
- Return to known locations if inventory incomplete
Critical Rule: After finding an object, immediately place it at the target location before searching for the next one. Do not attempt to carry multiple objects simultaneously.
3. Action Decision Logic
Use this decision tree at each step:
Is target object visible in current observation?
├── YES → Take it, go to target receptacle, put it down
│ └── Increment collected counter
│ ├── collected == needed → TASK COMPLETE
│ └── collected < needed → Continue searching
└── NO → Have all receptacles been searched?
├── YES → Revisit receptacles (objects may have been missed)
└── NO → Go to next unsearched receptacle
4. Per-Object Cycle
For each object instance found, follow this exact sequence:
take {object} from {current_receptacle}go to {target_receptacle}put {object} in/on {target_receptacle}- Update counter:
collected += 1 - If
collected < needed, navigate to next unsearched receptacle
Example
Task: "Put two cellphone in bed 1."

