Step 8 — The Channels
Step 8 · Conversation
The interface is the whole experience. A capable agent reached through an awkward interface is worse than a modest one reached naturally.
My design goal: the household should talk to it the way they talk to a person, in an app they already have open.
Do this
Section titled “Do this”- Pick the app your household already lives in for family conversation. Not a new app. Adoption is the whole battle.
- Pick a second channel for operational output — summaries, alerts, links, system messages.
- Keep one thread per person, and one per group. Not a new conversation per request.
- Address it by name in group chats, and make it answer only when addressed.
- Text first. Voice is a garnish, not the interface.
Why two channels
Section titled “Why two channels”| Need | What matters | My choice |
|---|---|---|
| Family conversation | Everyone already uses it | A messaging app the household lives in |
| Operational channel | Throughput, links, notifications, logs | A second app, used only for this |
The reason is simple: the family channel should stay calm. Summaries, alerts and system chatter belong somewhere a person looks deliberately, not in the middle of a family conversation.
One conversation, one thread
Section titled “One conversation, one thread”This is the decision that matters most and is least obvious.
The agent keeps one continuing conversation per person, and one per group — not a new chat per request. It remembers the thread of what has been discussed, the way a colleague does.
One person ──> one thread, always it remembers what was just discussed A group ──> one thread, always it can see what the household said Me ──> one operational thread summaries, alerts, draftsWhat that buys: “move it to Thursday” makes sense to the agent, because it knows what it refers to. Without continuity, every message has to be a complete instruction, and you start writing like a programmer.
Plain language, not commands
Section titled “Plain language, not commands”Nobody should learn syntax to ask for something.
| What I say | What I should not have to say |
|---|---|
| “Can you move Thursday’s appointment to the same time next week?” | /calendar move --event 4712 --weeks 1 |
| “What have I got on this weekend?” | list events --start fri --end sun |
| “That parcel — anything?” | track parcel --id 88213 --status |
Absorbing ambiguity is most of what an agent is. When a request is genuinely ambiguous, it asks a short question rather than picking one. Guessing is the failure mode that erodes trust fastest.
The rules for group chats
Section titled “The rules for group chats”A household group chat is the most useful and most dangerous surface.
It answers only when addressed by name. Otherwise it observes. This is not something I compromise on: an agent that replies to everything becomes the reason people stop using the group.
It routes rather than broadcasts. Something said to one person is not automatically repeated to the group.
It does not send the same thing twice across surfaces. If it exists in the family thread, it does not need to appear in mine.
Matching the surface to the content
Section titled “Matching the surface to the content”| Content | Where it goes | Style |
|---|---|---|
| Household logistics, family things | The family channel | Warm, brief, plain text |
| Operational output, summaries, alerts | My channel | Denser, links, tables where useful |
| Anything sensitive | Never a group. One person only | Direct, minimal |
| Credentials or secrets | Never in a message log at all | A different mechanism entirely |
One rule about formatting: anything the household reads casually is written as plain text, not formatted markup. Nobody wants asterisks around their reminder.
Voice, briefly
Section titled “Voice, briefly”Voice works and it is a pleasure, and it is not the primary interface.
I use it sparingly — a spoken note alongside a screen, or a short exchange when typing is inconvenient. Everything spoken is harder to review, harder to search and impossible to skim, so text stays the durable form.
Checkpoint
Section titled “Checkpoint”- Every household member can reach it, and it can reach them
- In a group it waits to be addressed — tested
- It remembers what was said earlier in the same thread
- It asks when a request is ambiguous rather than guessing
- Nothing sensitive has ever appeared in a group thread