PriyaWe should catch up — coffee next week?
Opened, but not on your list. An idea is not yet a commitment.
A loop is one thing you still owe someone, or that someone still owes you. It opens when a conversation creates an obligation, changes as the conversation changes, and closes when the conversation resolves it — as a single item, not a pile of fragments.
Plans are not made in one message. They get proposed, negotiated, confirmed, amended, and finished. A system that reads messages one at a time sees six unrelated commitments here. Claire keeps one loop and updates it.
PriyaWe should catch up — coffee next week?
Opened, but not on your list. An idea is not yet a commitment.
YouYes! Tuesday or Wednesday?
Same loop. Two candidate days, still nothing to act on.
PriyaWednesday works. 3pm?
A time appears, but nobody has agreed to it yet.
YouPerfect, see you Wed at 3.
Now it is real. This is the first moment Claire offers to put it in your calendar.
PriyaRunning 15 late!
Still the same loop. The calendar event is updated, not duplicated.
YouGreat seeing you
Closed by the conversation. You never had to tick anything.
Why the early states stay quiet. “How about Tuesday?” is not a plan. Surfacing it would fill your list with things nobody has committed to. A loop only becomes actionable — and only then can a plugin offer to do something about it — once the conversation actually agrees.
In a group chat, most commitments are between other people. Claire scores every candidate against a fixed set of signals before it will show you anything. The score is deterministic — no model decides this — so the same message always gets the same answer, and the answer can be explained.
A real commitment, correctly ignored. It was made by someone else, to someone else.
Your own words bind you. Committing to something is enough on its own, whatever the size of the group.
@channel mentions everyone, which is evidence a message is
not aimed at you. Reading it as a mention would turn every announcement
into a task.
A personal mention inside a broadcast still reaches you. Being in a busy channel never cancels out someone naming you directly.
The default is deliberately conservative. Some conversations deserve more attention than that, and some deserve none — so the threshold is a per-chat setting rather than a global one.
| Setting | What surfaces | Good for |
|---|---|---|
off |
Nothing, ever — including things you commit to yourself. | Chats you never want tracked. |
low |
Only unambiguous cases: you were named, or you committed. | High-traffic channels you skim. |
normal |
The balanced default. Suppresses work assigned to other people. | Most conversations. |
high |
Also surfaces unclaimed work — “someone needs to own this” — for you to claim or dismiss. | A project channel you are responsible for. |
Group chats start at normal, but channel-based platforms like Slack
start at low. A work channel produces far more traffic than a family
group and almost none of it is addressed to any one person — so you opt channels
in, rather than having to opt a firehose out.
A loop that only reminds you is a nicer to-do list. A loop becomes useful when it can actually be closed — the calendar event created, the task filed, the reply drafted. Plugins are how that happens, and every step keeps you in control.
agreedNoticing a date in a message never authorises creating an event. A plugin can propose; only you can approve. Anything that leaves Claire — an invite, a message, a shared note — always shows you the exact fields and destination first.
It runs both ways. A calendar plugin that sees an unanswered invite for tomorrow can open a loop for it, even though no message ever mentioned it.
By default a plugin receives the structured loop — title, owner, deadline, participant names — and not your raw messages. Sending message text requires a separate, explicit grant.
Every action writes a receipt showing what was done and where. You can undo it, disable the rule, or disconnect the account entirely.
The details page answers three questions: what is this, where did it come from, and what can I do about it.
| Part | What it tells you |
|---|---|
| State | Open, waiting, snoozed, or done — plus who owes the next move, and when it is due. Snoozing moves the reminder without erasing the date you actually agreed to. |
| Summary | One line describing where the loop stands right now, updated as it changes. |
| Timeline | The messages that created and changed it, in order, each linking back to the conversation. Nothing is asserted without the evidence for it. |
| People | Who is involved, and which of them owns it. |
| Actions | What a connected plugin offers — always as a proposal you approve. |
Claire closes a loop only on explicit evidence that it happened, was cancelled, or stopped mattering. A conversation going quiet is not proof of anything, and a wrongly-closed loop is a broken promise.
When it is unsure, Claire stays quiet. One wrong item makes you doubt every other item in the list; a missed one is a gap you can still fill yourself.
Change a deadline or an owner and Claire will not quietly overwrite it. It can suggest a change, and you decide.
Text arriving from other people can never change what Claire is allowed to do, what needs your approval, or where an action is sent — no matter what it says.