Manages grocery shopping at Willys.se. Search for products, browse categories, and manage a shopping cart. Use when the user wants to find groceries, add/remove items from their Willys cart, or view their cart.
Scanned 5/27/2026
Install via CLI
openskills install ErikHellman/food-shopping-agent---
name: willys-cli
description: Manages grocery shopping at Willys.se. Search for products, browse categories, and manage a shopping cart. Use when the user wants to find groceries, add/remove items from their Willys cart, or view their cart.
argument-hint: "[search query or command]"
allowed-tools: Bash(willys-cli *)
---
# Willys Grocery CLI
A CLI tool for shopping at Willys.se (Swedish grocery store).
Credentials are read from WILLYS_USERNAME and WILLYS_PASSWORD environment variables,
or from a .env file in the current directory. They can also be passed with -u and -p flags.
## Commands
### Search for products
```bash
# Search for products (default 10 results)
willys-cli search mjölk
# Search with a specific number of results (fetches multiple pages if needed)
willys-cli search "ekologisk mjölk" 20
```
Output includes product name, brand, volume, price, compare price, and product code.
### Browse categories
```bash
# List all top-level categories (with 2 levels of subcategories)
willys-cli categories
# Browse products in a specific category
willys-cli browse frukt-och-gront/frukt/citrusfrukt
```
Category paths use the URL-style paths shown in the categories output (e.g. `kott-chark-och-fagel/korv`).
### Cart operations
```bash
# Show current cart
willys-cli cart
# Add a product (product code from search results, optional quantity defaults to 1)
willys-cli add 101233933_ST 2
# Remove a product
willys-cli remove 101233933_ST
# Clear entire cart
willys-cli clear
```
Cart-modifying operations (add, remove, clear) print the updated cart after each change.
### Batch operations from CSV file
```bash
willys-cli -i shopping-list.csv
```
CSV format (one operation per line, lines starting with # are ignored):
```
add,101233933_ST,2
add,101205823_ST,1
remove,101233933_ST
cart
clear
```
## Product codes
Product codes look like `101233933_ST` or `100126409_KG`. They are shown in parentheses
in search and browse output. Always use the exact code from the output.
## Typical workflow
1. Search for a product: `willys-cli search mjölk`
2. Pick a product code from the results
3. Add it to cart: `willys-cli add 101233933_ST 2`
4. Review the cart: `willys-cli cart`
5. Repeat steps 1-4 until the cart is complete
## Tips
- When the user asks to "add milk", first search for it, present the options, and let them pick before adding.
- Use `willys-cli categories` to help the user browse when they don't know exactly what they want.
- Product codes ending in `_ST` are sold per item, `_KG` are sold by weight.
- Always show the updated cart after modifications so the user can verify.
No comments yet. Be the first to comment!