| 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
willys-cli search mjölk
willys-cli search "ekologisk mjölk" 20
Output includes product name, brand, volume, price, compare price, and product code.
Browse categories
willys-cli categories
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
willys-cli cart
willys-cli add 101233933_ST 2
willys-cli remove 101233933_ST
willys-cli clear
Cart-modifying operations (add, remove, clear) print the updated cart after each change.
Batch operations from CSV file
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
- Search for a product:
willys-cli search mjölk
- Pick a product code from the results
- Add it to cart:
willys-cli add 101233933_ST 2
- Review the cart:
willys-cli cart
- 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.