Nora counts. The decisions stay yours
She parses ordinary sentences, finds the dish in the database and writes the entry. Everything touching health and money is done by code, not by a model.
One message, three meals
A rundown of the whole day does not land in one card: the time in your words picks the meal, and an empty meal stays empty, because nobody asked anyone to invent a lunch.
porridge with banana this morning, borscht and bread at lunch, chicken and rice in the evening
Split into three meals: breakfast 320 kcal, lunch 470, dinner 540. That is 1330 together. I took your usual portions, tell me if any of them was bigger.
What she always remembers
Every request carries a small, fixed set with it: how to address you, your goal and pace, your target and macros, your allergies with their severity. It does not grow over time.
History is not part of that set. "What did I eat yesterday morning" is a query to the database for one particular day, not a retelling of the whole diary to a model. Otherwise our most devoted users would be the most expensive ones.
What she does, and what it costs
| Recognises a dish from text | 1 token |
| Recognises a dish from a photo | 2 tokens |
| Reads an ingredients label | 1 token |
| Clarifies weight and ingredients | 1 token |
| Corrects something already logged | 1 token |
| Copies yesterday meal | 1 token |
| Answers a question about your history | 1 token |
| Splits a day rundown across meals | 1 token per message |
What she never does
- Does not calculate your target: that is a formula on the server, covered with tests
- Does not decide about allergens: the match runs on the allergen code in the ingredients
- Does not count tokens: the balance and the charge are a database transaction
- Does not calculate drug doses and does not give medical advice
- Does not invent numbers quietly: if a dish is not in the database, she says it is an estimate
The list is closed. Everything not on it is done by ordinary code that can be tested.