Can AI Save Dinner?

Can AI Save Dinner?

Published on 3/24/2026

5 min read

I've been refining my meal planning and cooking framework for a few years now. The system works. But the overhead of actually running it — tracking what's in the fridge, what's in the freezer, what I'm making this week, what I need to buy — was still a source of low-grade friction every single day.

So I built a small home ERP system for food. And then I put an AI agent in front of it.

The App

The app tracks everything: what's in my pantry and fridge, what meals are planned for the next few days, what's been cooked and where it's stored, and what needs to go on the grocery list. When I cook a batch of something and put it in the freezer, I log it. When we eat it, I move it out. The grocery list can be imported directly into inventory after a shopping run — no manual entry.

The goal was to make the mental overhead of the system as low as possible. It had to be faster to use than not using it, or I'd stop.

Screenshot of the app

Enter NanoClaw

The chat interface in the app is powered by NanoClaw, a lightweight agent framework designed to run in containers with a small codebase. Think of it as a persistently running agent you can talk to — less infrastructure overhead than a full agent platform, but with enough capability to be genuinely useful.

NanoClaw reads my food data as JSON and uses it as context when I ask questions or give instructions. That means it knows what I have on hand, what I've been eating, and what I've planned — without me having to explain any of it.

The Squish Layer

The most useful thing the agent does might not be the most obvious one. I think of it as a "squish layer" — it absorbs the imprecision that would normally break a software system.

Here's what I mean. Say I want to log that I bought flour. In a traditional app, I'd have to know exactly how the item is stored in the database — the unit, the format, whether it's grams or pounds or ounces. If I get it wrong, the data is wrong.

With the agent in the middle, I can just say: "I picked up about 5 pounds of flour." It sees that the database stores flour in grams, does the conversion, and writes the right number. I never have to think about it. The strictness lives inside the system; the interface to the system is flexible.

This sounds small, but it's the reason I actually use the app consistently. Friction kills habits.

What It Looks Like in Practice

The chat interface is simple but covers a lot of ground. A few examples of how I actually use it:

Planning: "What should I make this week given what I have on hand?" It looks at the inventory, cross-references my recipe list, and suggests meals that minimize waste and extra shopping.

Grocery list: "I want to make the Italian pork and white bean soup Thursday. Add what I need to the list." Done. The ingredients get added, adjusted for what I already have.

Post-shop import: After I get home, I can import everything on the checked grocery list directly into inventory. One step instead of re-entering everything manually.

Pantry questions: "Do I have enough rolled oats to make a double batch of baked oatmeal?" It checks and tells me. If not, it can add oats to the list.

Here's a slice of what the underlying data looks like — the kind of context the agent is working with:

Inventory:

{
  "items": [
    {
      "name": "Rolled oats",
      "category": "pantry",
      "unit": "g",
      "batches": [{ "quantity": 1800 }]
    },
    {
      "name": "Cheerios oat crunch cinnamon",
      "category": "pantry",
      "unit": "box",
      "batches": [{ "quantity": 0.5 }]
    }
  ]
}

Meal plan:

{
  "2026-04-07": {
    "breakfast": { "recipeName": "Apple Cinnamon Baked Oatmeal", "source": "fresh" },
    "lunch":    { "recipeName": "Sandwiches", "source": "fresh" },
    "dinner":   { "recipeName": "Italian rice and pasta", "source": "fresh" }
  }
}

Recipe (excerpt):

{
  "name": "Chickpea Escarole Soup",
  "mealType": "dinner",
  "tags": ["soup", "slow-cooker", "vegetarian"],
  "prepMinutes": 540,
  "ingredients": [
    { "name": "dried chickpeas", "quantity": 8, "unit": "oz" },
    { "name": "chicken broth", "quantity": 7, "unit": "cups" },
    { "name": "escarole, chopped coarse", "quantity": 1.5, "unit": "heads" }
  ]
}

The agent has all of this in context. When I ask it something, it's not guessing — it's reasoning against my actual data.

Screenshot of the app

Is This Overkill?

Maybe. Building a home food ERP is not a normal thing to do, and I'm aware of that.

But the problem it solves is real: the daily mental load of tracking what's available, what needs to be used up, and what to cook is genuinely exhausting when you're cooking mostly from scratch for a family. The system takes that overhead off my plate (so to speak). The AI layer makes the system feel conversational instead of like data entry.

The result is that I spend less time thinking about food logistics and more time actually cooking — and more evenings not cooking at all, because the work was already done.