Install
openclaw skills install @voronindenis5/expiry-trackerTrack food expiry dates from grocery receipts. Get daily alerts before food goes bad, 'use this today' suggestions, and reduce food waste. Scan receipts or add items manually.
openclaw skills install @voronindenis5/expiry-trackerFood waste is a massive problem — the average household throws away 30% of the food they buy. Most of it spoils simply because people forget what's in the fridge and when it expires.
Expiry Tracker solves this by maintaining a simple inventory of perishable items with their expiry dates, then proactively suggesting what to cook before things go bad.
Don't use for: Non-perishables (pasta, rice, canned goods with 1+ year shelf life), frozen items (unless thawing).
# Add an item
python scripts/expiry_tracker.py add "milk" --days 7
python scripts/expiry_tracker.py add "chicken breast" --expiry 2026-08-15
# List items expiring soon
python scripts/expiry_tracker.py list --days 3
# Get today's "use this first" suggestions
python scripts/expiry_tracker.py today
# Remove consumed/expired item
python scripts/expiry_tracker.py remove "milk"
# Show full inventory sorted by expiry
python scripts/expiry_tracker.py inventory
# Weekly summary / waste report
python scripts/expiry_tracker.py report
# Bulk add from receipt text
python scripts/expiry_tracker.py batch "milk, eggs, bread, chicken, yogurt"
~/.expiry_tracker.json — a simple JSON databasetoday command shows items expiring within 48h, sorted by urgencyreport shows waste statistics: how much expired vs consumed| Category | Days | Examples |
|---|---|---|
| Dairy | 7 | Milk, yogurt, cheese |
| Meat | 3 | Chicken, beef, pork, fish |
| Produce-Leafy | 4 | Spinach, lettuce, herbs |
| Produce-Root | 14 | Carrots, potatoes, onions |
| Produce-Fruit | 7 | Berries, bananas, apples |
| Bakery | 5 | Bread, pastries, tortillas |
| Deli | 5 | Cold cuts, prepared salads |
| Eggs | 21 | Eggs |
| Condiments | 180 | Opened sauces, dressings |
| Tofu | 7 | Tofu, tempeh |
Forgetting to remove consumed items. Always run remove when you eat something, otherwise the waste report is inaccurate.
Overly optimistic expiry dates. "Best before" ≠ "goes bad on." Use smell/visual check before tossing. The tracker errs on the side of caution.
Not adding items on shopping day. The tracker is only as good as its data. Make it a habit to batch-add after unpacking groceries.
Ignoring the today command. Set up a daily cron/reminder to check it every morning.
~/.expiry_tracker.jsonadd command works with both --days and --expiry flagslist --days 3 shows only items expiring within 3 daystoday shows actionable suggestionsreport shows waste statisticsbatch mode parses comma-separated items correctly