What voice is for
Checked against the Orcyx source tree at c339cf993 on 2026-09-14. Where this page describes something the build does not do yet, it says so in place rather than describing the intention.
Dictation types into whatever has focus — a pane's prompt, a composer, an input box — so a long instruction to an agent can be spoken instead of typed. It is an input method, not a separate mode you enter and leave.
The engine ladder
Several transcription engines are supported, and they are genuinely different products with different trade-offs rather than interchangeable backends:
| Engine | Runs | Trade-off |
|---|---|---|
| Orcyx hosted transcription | Remote, on Orcyx's service — metered in credits | Fastest and most accurate. Audio leaves the machine, it needs a reachable network, and it is the one engine that spends credits — so Auto never picks it; you choose it. |
| The browser speech engine | In the webview | No key, no setup. Sessions are time-limited — it stops on its own after roughly a minute and a half — and language coverage depends on the platform. |
| Sage Offline (bundled, local) | On your machine | Fully offline. Slower, and accuracy depends on which model tier is present, which the interface names rather than hiding. |
| Sage Streaming (local) / Sage Voice service | On your machine, as a sidecar | Offline with better accuracy than the small bundled tier, at the cost of a process to start and memory to hold it. |
The microphone opens before engine discovery has finished, deliberately: the alternative is a button that appears to do nothing for a second while the app works out which engine it has. You start speaking, and the engine that services the capture is named once it is known.
When an engine is not available
A downgrade is disclosed, not silent. If the preferred engine has no key, cannot be reached, or is not installed, the app says which engine actually handled the capture — including the model tier when a local model has several, because "transcribed locally" means something very different on a tiny model than on a large one.
This is the same rule the rest of the product follows: a degraded result that is labelled is usable, and a degraded result that looks identical to a good one is a bug you will chase somewhere else entirely.
Microphone selection is a known rough edge on Windows. The webview does not reliably honour a preferred-device hint, so a specific microphone may need selecting at the operating-system level rather than in the app.
Speech out
The app can also speak — agent output read aloud through a voice service. It is queued rather than fired per message, so a burst of agent chatter does not produce overlapping speech.