Why this is hard to keep track of

  • Accidental exposures are the events that matter and they happen in the middle of chaos
  • Whether this reaction was worse than the last one is unanswerable from memory
  • Recipe and label changes cause repeat incidents with the same trusted product
  • The clinic asks for a history that nobody has been keeping

Worth recording

  • What was eaten and where it actually came from
  • Symptoms, how fast they started, and how severe
  • What treatment was given and whether it was adrenaline
  • The source — a label, cross-contact, a restaurant, a school

Cadence

Logged after the event, once everyone is safe

In practice

Say it once, in whatever words you have

The moments most worth recording are the ones where filling in a form is the least realistic thing in the world. A sentence, typed or dictated afterwards, is a much lower bar — and it carries the context a checkbox would have lost.

Food Allergy Chat

Reaction at the Italian place. Hives round the mouth within about ten minutes, gave antihistamine, settled within the hour. They told us the pesto was nut free.

Called 4 tools

  • log_reaction(onset_min: 10, symptoms: ["hives"], treatment: "antihistamine")
  • log_exposure(source: "restaurant", declared: "nut free", allergen: "nuts")
  • get_history(metric: "reactions", window: "3y")
  • summarize_progress(metric: "severity")

Logged. That's the third restaurant exposure this year and the second where a dish was described as free of it. Onset has been 8–15 minutes each time and severity has stayed skin-and-gut across all three, with no respiratory involvement recorded.

Every figure here was counted from entries you made. The model picked which tools to call — it doesn't interpret, diagnose, or decide what anything means about anyone.

And then ask

The question the log can answer

Months of entries hold real answers to the questions you've been guessing at, and reading them properly has always meant a spreadsheet and a free evening — which is not a thing anyone in this situation has.

Ask in plain language. The answers come back with the numbers behind them, including when those numbers are too thin to mean anything yet — which is the more useful answer more often than people expect.

Asking about the pattern Chat

Are his reactions getting worse?

Called 3 tools

  • get_history(topic: "food-allergy", window: "6m")
  • find_pattern(group_by: "antecedent")
  • compare_periods(metric: "events")

Not on what's logged. Across seven reactions in three years, onset has stayed between 8 and 20 minutes and symptoms have stayed skin and gut, with no respiratory involvement in any of them. Whether that predicts anything is a question for the clinic rather than for the data — but the data isn't showing escalation.

Counts and averages over your own entries, nothing more. Where the data is confounded or too thin, the answer says so instead of rounding it into a conclusion.

The reason most people start

Something to actually bring to the appointment

You get fifteen minutes, once, after waiting months for it. The questions are specific and the honest answers are all some version of "I don't know, it's hard to say".

What this gives you: An exposure and reaction history with severity and onset times — exactly what an allergy review asks for and almost nobody arrives with.

  • Export the date range you were asked about, as a file you can print
  • Counts and timings rather than an impression of the worst week
  • Your own notes kept alongside the numbers, in your words
  • Nothing shared anywhere unless you choose to share it

What it won't do

  • Diagnose anything, or suggest that it could
  • Score a person, or rank them against anyone else
  • Set a target for fewer events, or a streak of good days
  • Recommend a treatment, a therapy, a diet or a medication change
  • Share your record with a school, a clinician or anyone else on its own

It's a notebook that can do arithmetic and answer questions about itself. Deciding what any of it means is a job for you and the people advising you.

Early access

Start with what you're already trying to hold in your head

Tell us what you've been trying to keep track of and we'll set it up with you — recording the thing that's actually useful, at a cadence that survives a bad week.

  • Founding accounts lock their price for life
  • No card, no trial clock, no notifications designed to make you feel behind
  • Export everything you've logged whenever you want

No card required. Unsubscribe any time.

Keep the record without it becoming another job

Founding pricing is locked for accounts opened during early access.

Founding accounts lock their price for life. No card required.