If the whole idea is “leave your work out”, then the act of leaving it has to be almost free. Anything that makes you sit down, open something, and compose your thoughts has already lost — that is the friction that makes people just do the task themselves.
Which is how I ended up building a voice interface, somewhat against my will.
Typing is a commitment
Typing a task means deciding it is worth typing. That sounds trivial and it is not. There is a whole category of work that never gets delegated because describing it costs more than doing it. Saying it out loud on the way to the kettle costs approximately nothing, so the threshold drops and you delegate things you would otherwise absorb.
The result is a different class of task arriving. Shorter, vaguer, more of them, far more useful in aggregate.
The silence is the product
Here is what nobody tells you about voice: the quality of the experience is set almost entirely by what happens in the gaps.
People do not notice a response that takes a moment. They notice:
- Being interrupted. If it starts talking while you are still thinking, you lose your thread and you resent it.
- Dead air. If nothing happens for a beat too long, you assume it did not hear you and you repeat yourself, which makes things worse.
- Being talked at. If it narrates every internal step, you stop listening entirely, which means you also miss the one sentence that mattered.
That third one was my own mistake and it took a while to see. Early on I streamed everything the agent was thinking, because it felt responsive and it looked impressive. It was exhausting. The fix was counterintuitive: say less, and only at the points where a person would actually say something — an acknowledgement up front, then silence while working, then the result.
Turn-taking, it turns out, is not a feature you add. It is the thing you are building.
Answer first, work second
The change that made the biggest difference was separating the two things a response has to do.
The first job is to prove you were heard. That has to happen almost immediately, and it does not require any of the hard work to be finished — “right, the studio invoice, I’ll dig through it” is a complete and honest answer to have heard someone.
The second job is the actual work, which can take as long as it takes, because by then nobody is waiting on the conversation. They have walked off.
Once those two are decoupled, the perceived speed of the whole system stops depending on how long the work takes. That is the trick. It is not really an optimisation, it is an admission that conversation and execution were never the same timeline and should never have been on the same clock.
Names help more than they should
I gave her a name and started addressing her directly, mostly as a debugging convenience. It changed how I spoke to her, and it changed what I asked for.
You brief a name. You prompt a text box. Briefing produces looser, more human, more contextual instructions — the exact kind that a retrieval-heavy agent handles well and that a rigid command parser falls over on. It also, quietly, sets expectations correctly: you do not expect a colleague to be perfect, you expect them to check in when unsure.
That is a slightly uncomfortable thing to admit, because it is basically a psychological trick and I am wary of those. But the alternative — pretending the interface has no personality — does not make the personality go away. It just means you did not choose it.
Next time: the permissions model, which is the least glamorous thing I have built and the reason I can leave it running at all.