---
title: Voice L4 - Ask the Live Agent (session:ask-agent)
---

# Voice L4 - Ask the Live Agent (session:ask-agent)

## What it is

Voice L4 lets you ask the live coding agent in a thread a question, hands-free, and get told when it has answered. Unlike Voice L3 (which answers from a thread's transcript), L4 sends your question to the running agent itself - the one that has the full picture - and relays its answer back by voice. This is the "let me go ask the agent directly, I will get back to you" flow.

It is **off by default**. Turn it on at **Settings &rarr; Voice Control &rarr; Ask the live agent (voice)** (`voiceL4Enabled`).

## Where to find it

Voice L4 is off by default; turn it on at **Settings → Voice Control → "Ask the live agent (voice)"**. Once it is on, say the wake word (or press the voice hotkey) and ask your question — Omniscio resolves the thread you name, or the session you are looking at if you do not name one.

## How it behaves

### How to use it

Say the wake word (or press the voice hotkey) and ask, for example: "ask the auth refactor agent why it picked JWT over sessions." Omniscio resolves the named thread (if you do not name one, it uses the session you are looking at), and:

1. Speaks an acknowledgment: "Okay, I will ask the auth refactor agent and let you know when it answers."
2. Waits for the right moment - it holds the question until that agent finishes whatever it is doing and goes idle, then delivers it.
3. When the agent answers, Omniscio speaks a short cue ("I have your answer about auth refactor"), shows a desktop notification, and an in-app toast.
4. Hear the full answer hands-free: after the cue, just say "go ahead" (or "tell me", "yes", "read it") and Omniscio reads the answer aloud. You can still click the desktop notification instead.

### When the named thread is not found

If you name a thread but Omniscio cannot match it to an open session, it **stops and tells you** - "I could not find a thread called auth refactor." - spoken aloud and shown as a toast. It does **not** guess and send your question to whichever session you happen to be looking at: asking the live agent is a real message to a running agent, and delivering it to the wrong one is worse than not delivering it at all. Say the name again more clearly, or open the thread you mean. (If you do not name a thread, Omniscio uses the session currently in focus.)

### The question is read-only

Omniscio wraps your question with an instruction to answer in plain prose and NOT edit files or run commands. Your spoken question also appears as a normal message in that thread, so the exchange is transparent.

### Running threads only

L4 only works on threads that are **currently running**. If the thread is not running, Omniscio says "that thread is not running right now" and does nothing - it never starts a new agent (which would cost money).

### One question at a time

While a question is pending for a thread, asking another about the same thread is refused with "I am still waiting on your last question about that thread."

### Limitations

- One question per thread at a time.
- The agent is asked to answer read-only, but this is a strong instruction, not a hard sandbox.
- L4 makes no new AI call of its own; the answer is the agent's own turn output.
- If you say nothing, decline ("no", "later"), or the listen window times out, the answer stays available in the desktop notification.

### Ready-queue (multi-question)

Ask several running agents at once. Each question shows in a small on-screen
"Voice answers" panel with a status: Queued -> Working -> Ready. When an answer
lands, the assistant waits for a polite moment (no capture, command, TTS, or
voice turn in progress) and then says "Hey boss, I have the answer on the X
thread." Several at once get a rundown ("I have answers on three threads: A, B,
and C. Want the A one?") and are read one at a time at your pace:

- "go ahead" / "yes" / "read it" hears the current one, then offers the next.
- "next" / "skip" moves on without reading.
- "what's ready?" (askable any time) speaks the rundown again.
- silence or "no" leaves the rest queued (still on the panel; click to hear or dismiss).

Off by default (Settings -> Voice Control -> "Ask the live agent"). Running
threads only; never starts a session; the answer is the agent's own reply (no
extra AI call). The queue is live only and resets when the app restarts.

## Related

- [voice-l3-session-voice.md](voice-l3-session-voice.md) - ask about a thread from its transcript (the read-only sibling).
- [voice-report-back.md](voice-report-back.md) - speak an AI prose answer back after a voice command.
