Sophon 2.0 is here
Sophon Docs
Sophon Voice

Approvals & Questions by VoiceNEW

How Sophon reads an approval or a question out loud, exactly what it says, how your spoken answer is matched, the timeouts, and what happens when nobody answers.

A voice request is gated exactly like a typed one. When the agent needs a decision, the prompt takes over the voice surface: the mic closes, the prompt is read out, and the mic reopens for your answer once it has finished speaking.

Nothing here guesses. An answer that is not clearly one thing is asked again, and an approval nobody answers is rejected.

Where prompts are read out

SurfaceApprovalsQuestionsHow you answer
Voice pageRead out, card on screen with a countdownRead out with numbered optionsVoice or tap
Chat voice ribbonNever read outNever read outOn the chat's own cards
Command BridgeRead out, shown in the transcript stripRead out with option chipsPress the mic to answer, or tap
Sophon Mobile, Voice tabRead out in your phone's voiceNot read out — shown on screenVoice or tap for approvals, tap for questions
Paired Sophon NodeNot spoken to the nodeNot spoken to the nodeNot available

The ribbon is deliberate: voice started inside a chat never speaks prompts, because that chat already has its own approval and question cards a few centimetres away.

Which voice reads them

Approval and question prompts are read by the browser's built-in speech — or your phone's, on Mobile. They are never read by the text-to-speech provider voice you picked, even when one is active and speaking the replies. That covers the prompt, both re-asks and the timeout lines.

It follows that prompts are silent when the browser voice is switched off: speech output set to Configured provider only, or Native speech fallback turned off. You still get the card and the mic, and the prompt is never read aloud. Check Settings if you expect to hear prompts and do not.

What Sophon says

An approval, at None, Low or Medium risk:

I need your approval. {description}. This is {risk} risk. Say yes to approve or no to reject.

At High or Critical risk the last sentence changes:

I need your approval. {description}. This is {risk} risk. Say 'yes, approve' to approve, or no to reject.

The description is the tool's own one-line description, and the risk word is the level. The prompt names the kind of action and its risk, not its arguments — read the card for those.

When an answer is unclear, the re-ask is one of:

Sorry, I didn't catch that. Say yes to approve or no to reject.
Sorry, I didn't catch that. This needs you to say 'yes, approve', or no to reject.

And when a request runs out of time:

The approval timed out, so I didn't go ahead.
I didn't get an answer in time, so I'm continuing without it.

How your answer is matched

A keyword counts when it is the whole answer, or when the answer starts with it followed by a space, a comma or a full stop.

IntentKeywords
Approveyes, yeah, yep, sure, go ahead, approve, do it, proceed, confirm, ok, okay
Rejectno, nope, nah, reject, deny, cancel, stop, don't, negative

On top of that:

RiskWhat approves
None, Low, MediumAny approve keyword
High, CriticalOnly "yes, approve" or "yes approved". A bare "yes" is not enough
  • A reject intent always rejects, at every risk level. A plain "no" rejects straight away and is not asked again.
  • The negation rule. An answer that starts as an approval but also contains any of no, not, nope, nah, don't, dont, cancel, stop, wait, deny, reject, negative, never is treated as unclear, so you are asked again. "Yes — wait, no" is never an approval.
  • A plan's risk is its highest step's risk, so a plan containing one Critical step asks for the phrase.

Sophon Mobile applies the same rules, and answers approvals only for its own voice conversation.

Two re-asks, then a tap

An unclear answer is re-prompted at most twice. After that the mic closes and a hint appears in place of another attempt:

PromptHint
Approval"I didn't catch an answer. Tap Approve or Reject, or press the mic to answer."
Question with options"I didn't catch an answer. Tap an option or press the mic to answer."
Question without options"I didn't catch an answer. Press the mic to answer."

On the Voice page and the Command Bridge a fresh mic press reopens capture for one more attempt. The card stays on screen throughout.

The prompt's own timer keeps running while it waits. Reaching the re-ask limit, or pressing Stop on the Command Bridge, does not pause it. If nobody taps the card, the request ends on its timeout.

Timeouts

RequestDefaultWhat a timeout means
Approval5 minutesRejected. A timeout is never an approval
Question (the questions schema)15 minutesThe agent continues without an answer
Legacy single-question ask5 minutesThe agent continues without an answer
Raised inside a plan step, or by a sub-agentThe longer child timeout, 15 minutes by defaultAs above

The child timeout only extends a request that left its timeout at the default, and it only ever makes the request wait longer for you, never less.

The hint under the buttons

The Voice page's approval card always reads:

Tap a button, or say "yes" / "no"

It says that at every risk level, including High and Critical, where a bare "yes" will in fact be re-asked. Sophon Mobile's card is risk-aware — Tap a button, or say "yes, approve" or "no" for High and Critical, Tap a button, or say "yes" or "no" otherwise.

This mismatch is real and known: the Dashboard hint understates what High and Critical need. The spoken prompt is correct on both surfaces, so listen to it rather than the hint. Bringing the Dashboard card in line with Mobile's is on the roadmap.

Answering by voice does not start a turn

Pressing the mic to answer a waiting prompt opens capture in answer mode: your audio is transcribed and handed back, and no agent turn is started. Your words are matched against the prompt, the decision or the answer is submitted, and only then does the agent carry on. That is why answering an approval out loud does not leave a stray message in the chat.

On the Command Bridge the single mic button becomes "Answer by voice" while a prompt is waiting, and a separate Stop voice button appears next to it. Stop turns voice off without answering; the prompt stays on its chat card and its timer keeps running.

Questions

Questions are read out on the Voice page and the Command Bridge. Mobile shows them on screen without reading them, and the chat ribbon never reads them.

How one is asked

Question 1 of 2. {question} Your options are: one, {A}; two, {B}. Say a number, or answer in your own words.
  • The "Question N of M" lead appears only when there is more than one question. Questions are asked one at a time, and every answer is submitted together after the last one.
  • The closing line above is the default, because questions accept free text unless they say otherwise. A fixed-choice question ends "Say the number of your choice." instead.
  • A multi-select question adds "You can choose more than one." and takes every option you name.
  • A question with no options at all ends with "Say your answer."

Answering by number

Spoken numbers cover one to four — one/first/1, two/second/2, three/third/3, four/fourth/4 — and only in a short answer of four words or fewer. "Two" picks option 2; "I think option two is best" is five words, so the number counts as an ordinary word and the answer is treated as free text.

"One" counts as the number 1 only as the first word, or directly after option, number, choice, and or or, because "the green one" is a pronoun.

Options five and up are read out with their numbers, but can only be chosen by name or by tapping. Wider number matching is roadmap.

Answering by name

Say the option's name. Symbols in a label are both read and matched as the words people say for them:

In the labelSpoken and matched as
++plus plus
#sharp
+plus
&and
@at
%percent

So "C plus plus" picks C++ and "C sharp" picks C#. If your speech recognizer writes the symbol instead of the words, the option will not match and you are asked again — tap it instead.

When two names match on a single-select question and one contains the other, the longer one wins: saying "Visual Studio Code" cannot help also saying "Visual Studio". Two genuinely rival names, or a spoken number naming a different option than the one you said, is ambiguous and is asked again.

Negating an option

If you negate an option, Sophon will not pick it. "Don't send" against Send and Archive never returns Send.

  • On a question that accepts free text, your own words are passed to the agent as the answer instead.
  • On a fixed-choice question, you are asked again. The cost is real: "Email, no rush" re-asks on a fixed-choice question even though you named an option.
  • Negation words that are part of an option's own name do not count, so "never ask again" still answers an option called "Never ask again".

Where question cards come from

Plans and other tasks raise them. A voice turn does not raise one itself: the voice tool set has no ask tool, so a voice agent is set up to ask you conversationally instead.

Answer once, and it closes everywhere

When an approval is decided — by voice, on a chat card, in another tab, in the mobile app, or by replying in the channel it was delivered to — the resolution is broadcast with its outcome: approved, rejected, timed out or cancelled. Any other open chat card, Mobile card or voice prompt for it closes on its own. Questions close the same way when they are answered or cancelled.

The Dashboard's Approvals page is not on that broadcast. It catches up on its own poll, every 5 seconds.

Each approval is recorded exactly once. A timeout or a cancel is never recorded as an approval, and no client may assert one.

Outcomes

PillMeaning
ApprovedSomeone approved it
Auto-approvedAn approval policy approved it without asking; no card was ever shown
Edited & ApprovedSomeone approved it with changes
RejectedSomeone rejected it
CancelledThe work that asked was cancelled before anyone answered
Timed outNobody answered before the timeout. For an approval, that means not approved

The live broadcast carries only four of these — approved, rejected, timed out or cancelled. An auto-approval is broadcast as approved, and an edit resolves the wait as an approval too; both keep their own label in the approval history.

Cancelled is new. A cancelled approval or question used to be recorded and announced as "timed out". It is now recorded as cancelled, voice does not read the timeout line for it, and the cards show Cancelled — including after a reload.

Only your own conversation

Voice reads out only prompts whose chat session, or escalation session, is the one the voice conversation is attached to. An approval raised by an unrelated session never interrupts you. Sophon Mobile applies the same scoping.

A plan that finishes after you approve it

If a plan pauses for a durable approval and finishes later, its result is spoken to a voice session still attached to that chat — but only when no voice turn of that session is in flight at that moment. If you are mid-conversation when the plan lands, the result goes to the chat thread only, so it never talks over the reply you are waiting for. It is in the chat thread in both cases.

Where to go next

  • Conversations — how a voice turn runs, hands-free, and interrupting
  • Spoken Replies — which voice speaks what, and when a reply is silent
  • Surfaces — what each of the four surfaces does differently
  • Approval Gates — the risk levels and thresholds behind these prompts
  • Limits — what voice does not do yet