Skip to content

Add pantry-pro: voice pantry inventory, expiry alerts, and meal ideas from stock - #368

Open
ileana-pr wants to merge 1 commit into
openhome-dev:devfrom
ileana-pr:add-pantry-pro
Open

Add pantry-pro: voice pantry inventory, expiry alerts, and meal ideas from stock#368
ileana-pr wants to merge 1 commit into
openhome-dev:devfrom
ileana-pr:add-pantry-pro

Conversation

@ileana-pr

Copy link
Copy Markdown

🆕 New Community Ability

Ability Name: community/pantry-pro

What does it do?

Voice-guided pantry assistant for OpenHome. Tracks pantry and fridge inventory across sessions, suggests meals from what's already in stock (oldest food first), alerts before items expire, and builds a shopping list from used-up items and missing recipe ingredients.

Example conversation

User: "pantry pro"
OpenHome: "You have pasta, tomato sauce, and canned beans. Want recipe ideas?"
User: "yes"
OpenHome: "Using tomato sauce before it goes. I can do 1, Pasta and Beans. 2, Tomato and Herb Pasta. 3, Bean chilli. Pick a number, or say skip."
User: "1"
OpenHome: "Pasta and Beans. You're missing onion and garlic. Add those to the shopping list?"

APIs Required

None. Recipes use the free TheMealDB API (no key), with an LLM fallback if the request fails.

Checklist

  • main.py extends MatchingCapability with register_capability
  • README.md exists with description + setup instructions
  • No hardcoded API keys or secrets
  • Tested on OpenHome device/simulator
  • Files only in community/pantry-pro/

Summary

  • Adds PantryPro as a combined skill + background daemon
  • Persists inventory and shopping lists in pantrypro_inventory.json
  • Background daemon nudges when food expires today, tomorrow, or within 3 days

Test plan

  • Trigger with pantry pro on an empty pantry and add a few items with dates
  • Ask what's in the fridge / what's expiring
  • Ask what can I cook and pick a recipe; confirm missing items can go on the shopping list
  • Say we're out of milk and confirm restock offer
  • Confirm done returns to the Agent (resume_normal_flow)
  • Confirm expiry daemon speaks after the 90s grace (item expiring today/tomorrow)

Made with Cursor

… from stock

Co-authored-by: Cursor <cursoragent@cursor.com>
@ileana-pr
ileana-pr requested a review from a team as a code owner August 22, 2026 02:22
@github-actions

Copy link
Copy Markdown
Contributor

✅ Community PR Path Check — Passed

All changed files are inside the community/ folder. Looks good!

@github-actions github-actions Bot added the community-ability Community-contributed ability label Aug 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🔀 Branch Merge Check

PR direction: add-pantry-prodev

Passedadd-pantry-prodev is a valid merge direction

@github-actions

Copy link
Copy Markdown
Contributor

✅ Ability Validation Passed

📋 Validating: community/pantry-pro
  ✅ All checks passed!

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Lint Results

__init__.py — Empty as expected

Files linted: community/pantry-pro/background.py community/pantry-pro/main.py

✅ Flake8 — Passed

✅ All checks passed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community-ability Community-contributed ability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant