Skip to content

Feature Reference

YazSes ships 140 capabilities. All but the core are off by default — turn one on with yazses features enable <toggle> and apply with yazses restart. Browse them interactively with yazses features (grouped) or yazses features info <toggle> (one card).

Tiers: core (always on) · recommended (on by default) · recommended (safe, worth enabling) · optional · experimental (rough edges — needs --force to enable) · planned (designed but not yet wired into this build — cannot be enabled yet; contributions welcome).

Contents

Core dictation

The hold-to-talk essentials and how speech is captured and turned into text.

Dictation core

  • Toggle: · Tier: core · Config: always on
  • What it does: The core hold-to-talk transcription. Can't be turned off.
  • Use when: When you want to type anywhere by voice instead of the keyboard, hands-free.
  • Example: Hold your hotkey and speak; release to type.
  • Activate: always on (cannot be disabled)

Voice commands

  • Toggle: commands · Tier: recommended (on by default) · Config: [commands]
  • What it does: Spoken commands like 'undo', 'save', 'delete last word'. Keep on.
  • Use when: When you want to trigger edits and actions by voice mid-dictation without touching keys.
  • Example: Hold the command key and say 'undo' or 'save'.
  • Activate: yazses features enable commands then yazses restart

Voice punctuation

  • Toggle: voice-punctuation · Tier: optional · Config: [commands] voice_punctuation
  • What it does: Say 'comma', 'period', 'new line', 'question mark' to insert marks. Off by default — those words also occur in ordinary speech.
  • Use when: When you must place exact punctuation and line breaks and won't trust automatic guessing.
  • Example: Say 'hello comma world period' → 'hello, world.'
  • Activate: yazses features enable voice-punctuation then yazses restart

Mid-Thought Undo

  • Toggle: undo · Tier: recommended (on by default) · Config: [revise] — say 'scratch that'
  • What it does: Say 'scratch that' to drop the last phrase. Keep on.
  • Use when: When you misspeak and want to retract the last phrase without reaching for backspace.
  • Example: Say 'scratch that' to drop the last phrase.
  • Activate: yazses features enable undo then yazses restart

Voice-activity overlay

  • Toggle: overlay · Tier: recommended (on by default) · Config: [overlay] — sonar rings
  • What it does: Sonar rings near the cursor while you talk. Visual only; safe.
  • Use when: When you want a glanceable visual cue that the mic is live and hearing you.
  • Example: Watch the sonar rings near the cursor while you talk.
  • Activate: yazses features enable overlay then yazses restart

System-tray icon

  • Toggle: tray · Tier: recommended (on by default) · Config: [tray] — top-bar menu
  • What it does: A microphone icon in the top bar; click it to pick/pin your mic, re-calibrate, and start/stop the daemon. Needs a system tray (GNOME: AppIndicator extension).
  • Use when: When you'd rather click a top-bar icon to switch mics or restart than remember terminal commands.
  • Example: Click the top-bar mic icon → pick a microphone or re-calibrate, no terminal.
  • Activate: yazses features enable tray then yazses restart

Text-target guard

  • Toggle: target-guard · Tier: recommended (on by default) · Config: [injection] target_guard
  • What it does: When you dictate with no text field focused, don't type into the wrong place — turn the tray icon yellow and copy the transcript to the clipboard instead. Precise with AT-SPI (apt install python3-pyatspi gir1.2-atspi-2.0), else best-effort on X11.
  • Use when: When you sometimes speak before clicking into a text field and your words vanish into the wrong window.
  • Example: Dictate with no text box focused → it's copied to the clipboard, not lost.
  • Activate: yazses features enable target-guard then yazses restart

Mic-change guard

  • Toggle: mic-guard · Tier: recommended (on by default) · Config: [audio] device_change_notify
  • What it does: Notifies + auto-heals when your microphone silently switches (e.g. a USB-C monitor stealing capture) so dictation never dies in silence. Keep on.
  • Use when: When plugging in a monitor/headset silently switches your mic and dictation stops working with no clue why.
  • Example: Plug in a USB-C monitor; YazSes notices the mic switched and pops a fix.
  • Activate: yazses features enable mic-guard then yazses restart

Ghost Ahead

  • Toggle: ghost-ahead · Tier: optional · Config: [endpoint] — endpoint pre-warm
  • What it does: Pre-warms the decoder for slightly faster first words.
  • Use when: When first-word latency bugs you and you want the decoder warm before you speak.
  • Example: Nothing to do — the decoder pre-warms for faster first words.
  • Activate: yazses features enable ghost-ahead then yazses restart

Streaming transcription

  • Toggle: streaming · Tier: optional · Config: [streaming]
  • What it does: Injects words live as you speak (overtype). Off by default because it can fight some editors; enable if you want live text.
  • Use when: When you want to see text land live as you talk rather than only on release.
  • Example: yazses features enable streaming — text appears as you speak.
  • Activate: yazses features enable streaming then yazses restart

Parakeet STT engine (high accuracy)

  • Toggle: stt-parakeet · Tier: optional · Config: [stt] engine
  • What it does: Swaps Whisper for NVIDIA Parakeet TDT: better English accuracy than whisper-large-v3 at roughly 4x whisper-small CPU speed, and no hallucinated text on silence. English only (v2). Downloads the model (~600 MB) on first use; disable restores faster-whisper.
  • Use when: When you want noticeably fewer English word errors without a bigger, slower Whisper model.
  • Example: yazses features enable stt-parakeet — same hotkey, sharper transcripts.
  • Activate: yazses features enable stt-parakeet then yazses restart

Accessibility Continuum

  • Toggle: continuum · Tier: optional · Config: [continuum] — quiet-speech mode
  • What it does: Whisper/Low-Effort Mode lowers the mic gate so quiet or effortful speech is still captured (no shouting). Semantic capture is opt-in. Off by default.
  • Use when: When you speak quietly or with low effort and the normal mic gate keeps discarding you.
  • Example: yazses features enable continuum — whisper-quiet speech still registers.
  • Activate: yazses features enable continuum then yazses restart

Wake-Word Activation

  • Toggle: wakeword · Tier: planned — designed, not yet wired · Config: [wakeword] — 'Hey Yaz', experimental
  • What it does: Start dictation hands-free by saying a keyword. Always-listening (local only, nothing stored until it fires). Needs the wakeword extra. Off by default.
  • Use when: When you want to start dictation completely hands-free without pressing a hotkey.
  • Example: Say your wake word to start dictation hands-free (--force).
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Breath-Paced Dictation

  • Toggle: breath · Tier: planned — designed, not yet wired · Config: [breath] — segment by natural breath groups
  • What it does: Uses your natural breath onsets as sentence/paragraph boundaries, so dictation chunks the way you actually breathe — even without silent pauses. Off by default.
  • Use when: When you dictate in long continuous runs and want sentences segmented by breathing, not silence.
  • Example: Take a breath and YazSes commits that phrase and starts a new one.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Whisper-Aware Mode

  • Toggle: whispermode · Tier: optional · Config: [whispermode] — accurate whispered dictation
  • What it does: Detects when you drop to a whisper and adapts gain, VAD, and the STT prompt so quiet dictation stays accurate in shared or private spaces. Off by default.
  • Use when: When you're in a shared or quiet space and must dictate under your breath without losing accuracy.
  • Example: Drop to a whisper and it turns up the gain so it still hears you.
  • Activate: yazses features enable whispermode then yazses restart

Hesitation-Hold Endpointing

  • Toggle: hesitation · Tier: planned — designed, not yet wired · Config: [hesitation] — don't cut off filled pauses
  • What it does: Holds the turn open when you trail off with a filled hesitation ('annnd… uhh…') instead of cutting you off — for anyone who thinks out loud. Off by default.
  • Use when: When you think out loud and keep getting cut off whenever you pause to find the next word.
  • Example: Trail off with 'annnd… uhh…' and it waits instead of cutting you off.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Focus-Class Auto-Profile

  • Toggle: focusprofile · Tier: planned — designed, not yet wired · Config: [focusprofile] — auto grammar per app class
  • What it does: Auto-selects the dictation profile from the focused window's class (terminal→shell, editor→code, browser→prose) so you never switch profiles by hand. Off by default.
  • Use when: When you move between a terminal, editor, and browser and don't want to switch profiles by hand.
  • Example: Move from your editor to a terminal and the grammar follows.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Adaptive Latency Governor

  • Toggle: latency · Tier: planned — designed, not yet wired · Config: [latency] — load-aware decode
  • What it does: Keeps dictation responsive under CPU load (lighter model/beam) and losslessly faster when idle (speculative decoding). Needs the latency extra for a draft model. Off by default.
  • Use when: When your CPU is busy and dictation lags, but you still want fast response when it's idle.
  • Example: Dictation stays snappy when your CPU is busy, faster when it's idle.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Hands-Free Auto-Stop

  • Toggle: autostop · Tier: planned — designed, not yet wired · Config: [autostop] — tap & speak
  • What it does: Tap once and speak; recording auto-stops when you finish (silence timeout + duration cap). Semantic end-of-turn needs the turn extra. Off by default.
  • Use when: When holding the hotkey the whole time is tiring and you'd rather tap once and let it stop itself.
  • Example: Tap once and speak; recording stops when you finish.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Codec Streaming (low latency)

  • Toggle: codec · Tier: planned — designed, not yet wired · Config: [codec] — Kyutai/Mimi engine
  • What it does: Routes decoding to a streaming neural-codec engine for lower latency. Needs the codec extra (Kyutai/Mimi); English/French-centric. Off by default.
  • Use when: When you want lower-latency dictation and can install the streaming codec engine.
  • Example: yazses features enable codec — streaming decode engine selection.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Accuracy & correction

Get the words right — bias, correction, and cleanup of what was heard.

Dysfluency-Friendly

  • Toggle: dysfluency · Tier: recommended · Config: [accessibility]
  • What it does: Collapses stutters/repeats (b-b-because→because). Try it if you stutter or have dysarthria.
  • Use when: When you stutter, have dysarthria, or repeat words and want them cleaned to fluent text.
  • Example: Say 'b-b-because' → 'because' (stutters collapsed).
  • Activate: yazses features enable dysfluency then yazses restart

Punch-In

  • Toggle: punch-in · Tier: optional · Config: [punch_in] — re-speak to fix
  • What it does: Re-speak a phrase to correct the last one. Handy, safe.
  • Use when: When one phrase came out wrong and you'd rather re-say it than manually edit.
  • Example: Re-speak a phrase right after to correct the last one.
  • Activate: yazses features enable punch-in then yazses restart

Confidence Ink

  • Toggle: confidence · Tier: optional · Config: [confidence] — mark unsure words
  • What it does: Marks words Whisper was unsure about so you can re-pick them by voice instead of re-dictating. Uses Whisper's own confidence; local only.
  • Use when: When you want to spot and fix words the recognizer was unsure of instead of re-reading everything.
  • Example: See the low-confidence word count in 'yazses status'.
  • Activate: yazses features enable confidence then yazses restart

Context-Primed Dictation

  • Toggle: context · Tier: optional · Config: [context] — window/selection terms
  • What it does: Primes STT with terms from the active window/selection so domain words are transcribed right. Read transiently, never stored. Off by default.
  • Use when: When domain-specific words in your active window keep getting transcribed wrong.
  • Example: Open a file in your editor; dictation is primed from its LSP context.
  • Activate: yazses features enable context then yazses restart

Diacritize

  • Toggle: diacritize · Tier: optional · Config: [diacritize] — restore dropped diacritics
  • What it does: Restore the diacritics ASR drops — 'cafe' → 'café', 'naive' → 'naïve' — via an unambiguous lexicon (ambiguous words left alone). Off by default.
  • Use when: When ASR strips accents from words like cafe or naive and you need them restored.
  • Example: Dictate 'a cafe cliche' and get 'a café cliché'.
  • Activate: yazses features enable diacritize then yazses restart

SafeGlyph

  • Toggle: safeglyph · Tier: optional · Config: [safeglyph] — flag homoglyph hazards
  • What it does: Flag Unicode confusables in dictated identifiers/URLs — Cyrillic 'а' vs Latin 'a', zero-width characters, mixed-script words — before they are injected. Off by default.
  • Use when: When you dictate identifiers or URLs and must catch look-alike or hidden Unicode before it lands.
  • Example: A pasted 'pаypal.com' (Cyrillic а) gets flagged before injection.
  • Activate: yazses features enable safeglyph then yazses restart

Checksum-Validated Entry

  • Toggle: checkdigit · Tier: planned — designed, not yet wired · Config: [checkdigit] — verify dictated ID numbers
  • What it does: Runs dictated account/ID numbers (credit card, IBAN, ISBN) through their check-digit algorithm and flags a mis-heard digit before it lands — with fix suggestions. Off by default.
  • Use when: When you dictate a card, IBAN, or ID number where one mis-heard digit would be costly to miss.
  • Example: Dictate a card number and a mis-heard digit is caught instantly.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Involuntary-Vocalization Excision

  • Toggle: involuntary · Tier: planned — designed, not yet wired · Config: [involuntary] — drop coughs & sneezes
  • What it does: Detects and deletes involuntary sounds (cough, throat-clear, sneeze) from the stream so they never become garbage tokens or spurious commands. Off by default.
  • Use when: When a cough, throat-clear, or sneeze keeps turning into garbage tokens in your dictation.
  • Example: Cough mid-sentence and it's dropped before it reaches the text.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Self-Learning Correction Dictionary

  • Toggle: corrdict · Tier: planned — designed, not yet wired · Config: [corrdict] — auto-fix your recurring errors
  • What it does: Learns the ASR errors you keep fixing (e.g. 'yaz says' → 'YazSes') and applies them automatically to future output. High-precision, from your own edits. Off by default.
  • Use when: When you keep fixing the same ASR mistake and want it corrected automatically from now on.
  • Example: You keep fixing 'yaz says'→'YazSes'; soon it's fixed automatically.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Confidence-Gated Re-Ask

  • Toggle: reask · Tier: planned — designed, not yet wired · Config: [reask] — resolve uncertain words
  • What it does: Instead of injecting a low-confidence guess, holds just the uncertain word and asks you to pick or repeat it — closing the correction loop. Off by default.
  • Use when: When one word is often guessed wrong and you'd rather confirm it than retype the whole line.
  • Example: An unsure 'their/there' pops a quick pick instead of guessing wrong.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Phonetic Spelling Mode

  • Toggle: spelling · Tier: planned — designed, not yet wired · Config: [spelling] — NATO → exact characters
  • What it does: A character-exact mode for passwords/codes/IDs: 'capital alpha bravo double lima' → 'Abll'. Handles digits and symbols. Off by default.
  • Use when: When dictating a password, code, or ID that has to be character-exact.
  • Example: Say 'capital alpha bravo double lima' to type 'Abll' exactly.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Hard Contextual Biasing

  • Toggle: hotwords · Tier: planned — designed, not yet wired · Config: [hotwords] — names/jargon actually win
  • What it does: Biases recognition toward your vocabulary with a hotword trie (not just a soft prompt), so rare names and jargon are transcribed right. Off by default.
  • Use when: When rare names or jargon keep getting mis-transcribed despite a vocabulary prompt.
  • Example: Add 'Kubernetes' to vocab and it stops being mis-heard.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Mid-Utterance Self-Repair

  • Toggle: self_repair · Tier: optional · Config: [commands] self_repair
  • What it does: Applies in-burst corrections before typing: 'email Sarah no I mean Sara' → 'email Sara'. Off by default — editing phrases occur in ordinary speech.
  • Use when: When you catch a slip mid-sentence and naturally say 'no I mean X' instead of editing.
  • Example: Say 'email Sarah no I mean Sara' → 'email Sara'.
  • Activate: yazses features enable self_repair then yazses restart

Screen-Grounded Dictation

  • Toggle: screengrounded · Tier: planned — designed, not yet wired · Config: [screengrounded] — bias from screen
  • What it does: Primes Whisper with names visible on screen so they transcribe right the first time — works in any app. Accessibility/clipboard now; OCR via extra. Off by default.
  • Use when: When names visible on your screen keep getting mis-transcribed in replies and chats.
  • Example: A name shown on screen transcribes right the first time.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Grammar Repair

  • Toggle: gec · Tier: optional · Config: [gec] — minimal-edit correction
  • What it does: Fixes article/agreement errors in dictated text with minimal edits, tuned for non-native speakers. Register-preserving; local-only. Off by default.
  • Use when: When you're a non-native speaker and want article/agreement slips fixed with minimal edits.
  • Example: Dictate 'a apple' and it's corrected to 'an apple'.
  • Activate: yazses features enable gec then yazses restart

Acoustic Profiles

  • Toggle: acoustic_profiles · Tier: planned — designed, not yet wired · Config: [acoustic_profiles] — scene-adaptive
  • What it does: Detects your environment (quiet/café/car/meeting) and auto-tunes the mic gate + noise suppression. Needs the acoustic extra (scene tagger). Off by default.
  • Use when: When you dictate in different environments and want the mic gate and denoise to adapt.
  • Example: Move to a café — the mic gate + denoise auto-adapt.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Audio-Anchored Scrubbing

  • Toggle: scrub · Tier: planned — designed, not yet wired · Config: [scrub] — replay/pinpoint a word
  • What it does: Keeps word-level timestamps so you can replay what you said or pick a word to re-dictate just that word. Audio stays in RAM. Off by default.
  • Use when: When you're unsure a word came out right and want to replay your audio or re-dictate just that word.
  • Example: Say a word to replay its audio or re-dictate just that word.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Phonetic Corrector

  • Toggle: phonetic · Tier: optional · Config: [phonetic] — fix mis-heard names
  • What it does: Fixes mis-heard proper nouns by sound against your vocabulary ('Cuber Netties'->'Kubernetes'). Pure, conservative. Off by default.
  • Use when: When STT keeps mangling the same proper nouns or jargon and you want them auto-fixed by sound.
  • Example: 'Cuber Netties' is auto-corrected to 'Kubernetes'.
  • Activate: yazses features enable phonetic then yazses restart

Hallucination Guard

  • Toggle: hallucination · Tier: optional · Config: [hallucination] — drop ghost text
  • What it does: Drops Whisper's fabricated text on silence/noise (the phantom 'Thank you.', 'please subscribe', or looped phrases) before it's typed. Pure, conservative. Off.
  • Use when: When Whisper types phantom phrases like 'Thank you.' during silence or background noise.
  • Example: Nothing to do — fabricated silence transcripts are dropped.
  • Activate: yazses features enable hallucination then yazses restart

Noise Suppression

  • Toggle: denoise · Tier: experimental — not advised yet · Config: [denoise] — clean mic before STT
  • What it does: Removes background noise/echo before transcription so dictation works in noisy rooms. The DeepFilterNet backend is NOT implemented in this build yet, so enabling this currently passes audio through unchanged (it logs why). Off by default.
  • Use when: When you're dictating in a noisy room and background sound is hurting accuracy.
  • Example: yazses features enable denoise — background noise is filtered pre-STT.
  • Activate: yazses features enable denoise then yazses restart

Formatting & structure

Shape the output — punctuation, structure, casing, code, math, and markup.

Prosody Ink

  • Toggle: prosody · Tier: optional · Config: [prosody] — pause→¶, emphasis→bold
  • What it does: Turns pauses into paragraphs and stressed words into bold.
  • Use when: When you want your natural pauses and emphasis to become paragraphs and bold automatically.
  • Example: Pause between thoughts → a new paragraph; stress a word → bold.
  • Activate: yazses features enable prosody then yazses restart

LLM cleanup

  • Toggle: llm-cleanup · Tier: optional · Config: [filters.disfluency]
  • What it does: Reformats dictation with a small offline LLM. Needs a model file.
  • Use when: When rambly dictation needs polishing into clean prose and you have an offline LLM available.
  • Example: yazses features enable llm-cleanup — offline LLM tidies dictation.
  • Activate: yazses features enable llm-cleanup then yazses restart

BrailleOut

  • Toggle: brailleout · Tier: optional · Config: [brailleout] — dictation as Unicode Braille
  • What it does: Emit Grade-2 (UEB) Unicode Braille cells so a Braille-display or DeafBlind user gets dictation directly in Braille — no screen-reader round-trip. Off by default.
  • Use when: When a Braille-display or DeafBlind user needs dictation as Braille cells, no screen reader.
  • Example: Dictate 'hello' and your Braille display gets ⠓⠑⠇⠇⠕ directly.
  • Activate: yazses features enable brailleout then yazses restart

Spoken Outline

  • Toggle: outline · Tier: optional · Config: [outline] — voice-driven outline tree
  • What it does: Say 'new item / indent / promote / collapse' to drive a live outline tree and render it as Markdown or OPML — structured idea capture by voice. Off by default.
  • Use when: When you're capturing structured ideas and want a live outline tree built by voice.
  • Example: Say 'new item groceries, indent, new item milk' → a nested outline.
  • Activate: yazses features enable outline then yazses restart

Diagrams-as-Code by Voice

  • Toggle: diagramvox · Tier: planned — designed, not yet wired · Config: [diagramvox] — dictate a flowchart
  • What it does: Dictate a flowchart ('start goes to login; login goes to dashboard if success') and get Mermaid/Graphviz source — draw diagrams without a mouse or canvas. Off by default.
  • Use when: When you want to build a flowchart as code by voice without touching a mouse or canvas.
  • Example: Say 'A goes to B; B goes to C' and get a Mermaid flowchart.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Screenplay Auto-Format

  • Toggle: screenplay · Tier: optional · Config: [screenplay] — dialogue → Fountain
  • What it does: Formats dictated scenes and dialogue as Fountain screenplay markup (scene headings, character cues, smart curly quotes). For screenwriters and playwrights. Off by default.
  • Use when: When you're drafting a script and want scenes and dialogue formatted without typing Fountain markup.
  • Example: Dictate a scene and it lands as proper INT./EXT. Fountain markup.
  • Activate: yazses features enable screenplay then yazses restart

Style-Consistency Enforcer

  • Toggle: styleguard · Tier: planned — designed, not yet wired · Config: [styleguard] — apply your house style
  • What it does: Applies your style sheet to each dictation ('e-mail' not 'email', US spelling, 'cannot' not 'can not') so terminology stays consistent — a Vale-lite pass. Off by default.
  • Use when: When you write to a house style and need terms and spellings kept consistent automatically.
  • Example: Say 'email' and your style sheet rewrites it to 'e-mail' automatically.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Suggestion-Mode Dictation

  • Toggle: suggestmode · Tier: planned — designed, not yet wired · Config: [suggestmode] — edits as tracked changes
  • What it does: Emits dictated edits as CriticMarkup tracked changes (add, cut, oldnew) for an editor to review later, instead of applying them. Off by default.
  • Use when: When you edit a shared doc where changes must be reviewed before they're accepted, not applied.
  • Example: Your edit lands as oldnew for the author to accept later.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Semantic Line Breaks

  • Toggle: sembr · Tier: optional · Config: [sembr] — one clause per source line
  • What it does: Breaks dictated prose one clause per line so git diffs and merges stay clean — the rendered output is unchanged. For anyone versioning prose in git. Off by default.
  • Use when: When you version prose in git and want clean diffs by keeping one clause per source line.
  • Example: Dictate a paragraph and each clause lands on its own source line.
  • Activate: yazses features enable sembr then yazses restart

Acronym & Glossary Manager

  • Toggle: acronyms · Tier: optional · Config: [acronyms] — expand on first use
  • What it does: Expands an acronym on first mention ('World Health Organization (WHO)'), contracts it after, and warns about acronyms you never defined. Off by default.
  • Use when: When you write reports full of acronyms and need each defined on first use and kept consistent.
  • Example: Say 'WHO' the first time and it writes out the full name for you.
  • Activate: yazses features enable acronyms then yazses restart

Prosodic Auto-Punctuation

  • Toggle: prosodypunct · Tier: planned — designed, not yet wired · Config: [prosodypunct] — punctuation from prosody
  • What it does: Inserts periods, commas, and question marks from how you speak (pauses, pitch) — no need to say 'comma' or 'period'. Off by default.
  • Use when: When you want natural punctuation from how you speak instead of saying 'comma' and 'period'.
  • Example: Speak naturally and the periods and commas appear on their own.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Table Entry

  • Toggle: tablecsv · Tier: optional · Config: [tablecsv] — dictate rows of data
  • What it does: Bulk data entry by voice: 'row: Ada, 1815, London' types tab/comma cells and 'next row' moves down. For spreadsheets and forms. Off by default.
  • Use when: When you're doing repetitive row-by-row data entry and want to speak the cells instead of tabbing.
  • Example: Say 'row: Ada, 1815, London' to fill a spreadsheet row.
  • Activate: yazses features enable tablecsv then yazses restart

Voice Case Transform

  • Toggle: casetransform · Tier: optional · Config: [casetransform] — recase the selection
  • What it does: Recase the selected text by voice: 'make this snake_case', 'Title Case', 'SHOUT', 'camelCase'. Off by default.
  • Use when: When you need to recase a selection to snake_case, camelCase, or Title Case without retyping.
  • Example: Select a name, say 'make this snake_case', and it rewrites.
  • Activate: yazses features enable casetransform then yazses restart

Auto-Pairing & Wrap

  • Toggle: autopair · Tier: optional · Config: [autopair] — balance brackets, wrap selection
  • What it does: Balances brackets/quotes in dictated code and wraps a selection ('wrap this in parens'). Off by default.
  • Use when: When you dictate code by voice and keep leaving brackets or quotes unbalanced, or need to wrap.
  • Example: Dictate '(a plus b' and it closes to '(a plus b)'.
  • Activate: yazses features enable autopair then yazses restart

Inline Compute

  • Toggle: compute · Tier: recommended · Config: [compute] — types the answer
  • What it does: Say 'what's 15% of 240' and it types 36. On-device arithmetic and percentages, no cloud calculator. Off by default.
  • Use when: When you need a quick sum or percentage typed straight into your text without a calculator.
  • Example: Say "what's 15% of 240" and it types 36.
  • Activate: yazses features enable compute then yazses restart

Verbatim / Autoformat Toggle

  • Toggle: verbatim · Tier: recommended · Config: [verbatim] — freeze formatting on command
  • What it does: Say 'dictate verbatim' to freeze all formatting (ITN, punctuation, reflow) for exact capture, 'resume formatting' to restore — mid-burst. Off by default.
  • Use when: When you need exact literal capture (a quote, a code block) with no auto-formatting applied.
  • Example: Say 'dictate verbatim' and 'one hundred dollars' types literally.
  • Activate: yazses features enable verbatim then yazses restart

Structured-Markup Dictation

  • Toggle: markup · Tier: optional · Config: [markup] — speak lists & tables
  • What it does: Speak structure and get Markdown/org: 'bullet list: apples; oranges' → a list; 'table columns Name, Age; row Alice, 30' → a table. Off by default.
  • Use when: When dictating notes that need real lists or tables, not a flat paragraph.
  • Example: Say 'bullet list: apples; oranges; pears' to type a Markdown list.
  • Activate: yazses features enable markup then yazses restart

Spoken Regex Builder

  • Toggle: spokenregex · Tier: planned — designed, not yet wired · Config: [spokenregex] — dictate search patterns
  • What it does: Build regexes by voice: 'four digits dash two digits' → \d{4}-\d{2}. Feeds find dialogs and grep. Off by default.
  • Use when: When you need a regex for a find dialog or grep but don't want to type the syntax.
  • Example: Say 'four digits dash two digits' to build \d{4}-\d{2}.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

On-Device Condense

  • Toggle: condense · Tier: planned — designed, not yet wired · Config: [condense] — summarise your ramble
  • What it does: A condense variant inserts a tightened summary of your long dictation instead of the verbatim text. Local extractive summary. Off by default.
  • Use when: When you tend to ramble and want a tightened summary typed instead of the full transcript.
  • Example: Ramble for a paragraph and a tightened 2-sentence summary is typed.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Spreadsheet

  • Toggle: spreadsheet · Tier: planned — designed, not yet wired · Config: [spreadsheet] — grid nav + cells
  • What it does: Cell-addressed dictation + grid navigation for spreadsheets: 'next row', 'cell down', 'go to B7'. Hands-free 2D entry. Off by default.
  • Use when: When entering data into a grid and you need hands-free cell navigation and addressing.
  • Example: Say 'next row' or 'go to B7' to drive a spreadsheet.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Temporal Normalizer

  • Toggle: temporal · Tier: optional · Config: [temporal] — dates from speech
  • What it does: Resolves spoken dates against the clock: 'next Friday' → a concrete date, 'tomorrow', 'in two weeks'. Uses only the local clock. Off by default.
  • Use when: When dictating dates like 'next Friday' that should land as concrete calendar dates.
  • Example: Say 'next Friday' and it types the concrete date.
  • Activate: yazses features enable temporal then yazses restart

Emoji & Symbol by Voice

  • Toggle: symbols · Tier: optional · Config: [commands] symbols
  • What it does: Speak emoji, symbols and arrows: 'shrug emoji' → 🤷, 'right arrow' → →, 'degree sign' → °. Off by default — the names occur in ordinary speech.
  • Use when: When you often need emoji, arrows, or special symbols you can't easily produce by voice.
  • Example: Say 'right arrow' → → or 'shrug emoji' → 🤷.
  • Activate: yazses features enable symbols then yazses restart

Voice Unit Conversion

  • Toggle: convert · Tier: optional · Config: [convert] — inline conversions
  • What it does: Evaluate spoken conversions inline: 'twenty miles in kilometers' → '32.19 kilometers'. Offline, no cloud. Off by default.
  • Use when: When you say a unit conversion mid-dictation and want the answer typed, not the words.
  • Example: Say 'twenty miles in kilometers' → '32.19 kilometers'.
  • Activate: yazses features enable convert then yazses restart

Redaction Ink

  • Toggle: redaction · Tier: optional · Config: [redaction] — mask secrets before typing
  • What it does: Detects spoken secrets (card numbers, SSNs, keys, emails) and masks them before they're typed into another window. Regex + Luhn, local-only. Off by default.
  • Use when: When dictating near secrets (card numbers, SSNs) that must never be typed into another app.
  • Example: Speak a card number and it's typed as [CARD], not the digits.
  • Activate: yazses features enable redaction then yazses restart

Field-Aware Dictation

  • Toggle: fieldaware · Tier: planned — designed, not yet wired · Config: [fieldaware] — shape output by field
  • What it does: Reshapes output to the focused control: number field → digits, search box → no trailing period, password field → refuses to type. Off by default.
  • Use when: When dictating into forms where each field needs different formatting (digits, no period).
  • Example: Focus a number field and 'forty two' is typed as 42.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Entity ITN

  • Toggle: itn · Tier: optional · Config: [itn] — spoken emails/versions → written
  • What it does: Turns spoken structured entities into written form with no command words: 'john dot doe at gmail dot com' → the email, 'version two point one' → v2.1. Off by default.
  • Use when: When you dictate emails, versions, or numbers and want them written in proper form, no command words.
  • Example: Say 'john dot doe at gmail dot com' → john.doe@gmail.com.
  • Activate: yazses features enable itn then yazses restart

Dictation Reflow

  • Toggle: reflow · Tier: optional · Config: [reflow] — 'structure this' → outline
  • What it does: Say 'structure this' to rewrite your last ramble into bullets and action items. Pure heuristic; a local SLM refines it via the reflow extra. Off by default.
  • Use when: When you've brain-dumped a messy ramble and want it reshaped into clean bullets and action items.
  • Example: Ramble, then say 'structure this' → a bulleted outline.
  • Activate: yazses features enable reflow then yazses restart

Smart-Paste

  • Toggle: smartpaste · Tier: planned — designed, not yet wired · Config: [smartpaste] — adapt syntax to app
  • What it does: Adapts injected syntax to the target app (markdown bullets, code casing, URL autolinking) using local window info. No model. Off by default.
  • Use when: When you dictate the same text into different apps and want the formatting to fit each one.
  • Example: Dictate into markdown vs a terminal — syntax adapts to the app.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Code Mode

  • Toggle: code · Tier: planned — designed, not yet wired · Config: [code] — dictate code syntax
  • What it does: Dictate code: spoken symbols become punctuation and word-groups become cased identifiers (snake/camel/pascal). Activate via a command key. Off by default.
  • Use when: When you're writing code by voice and need spoken symbols and cased identifiers, not prose.
  • Example: Dictate 'def foo open paren' → 'def foo(' in code mode.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Math (LaTeX)

  • Toggle: math · Tier: planned — designed, not yet wired · Config: [math] — dictate equations
  • What it does: Dictate math and inject LaTeX ('x squared plus y squared' -> x^{2} + y^{2}). Common cases pure; nested expressions need the mathspeech extra. Off by default.
  • Use when: When you're writing equations by voice and want them injected as LaTeX.
  • Example: Say 'x squared plus y squared' → 'x^{2} + y^{2}'.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Tone-Aware Formatting

  • Toggle: affect · Tier: planned — designed, not yet wired · Config: [affect] — tone → !/?
  • What it does: Adds ! or ? based on your vocal tone (excited/question), beyond pause punctuation. Needs the affect extra for detection; conservative by default. Off.
  • Use when: When you want exclamation and question marks added from your tone, not spoken punctuation.
  • Example: Excited speech → an exclamation mark; questions → a question mark.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Editing & navigation

Revise, navigate, and manage text and windows by voice.

Spoken Edit Mode

  • Toggle: spoken-edit · Tier: optional · Config: [commands] spoken_edit
  • What it does: Edit the last dictation by voice ('change their to there', 'delete the last sentence'). Command-key gated. Off by default.
  • Use when: When you want to revise the text you just dictated by voice rather than by keyboard.
  • Example: Say 'delete last sentence' or 'capitalize that'.
  • Activate: yazses features enable spoken-edit then yazses restart

HatSelect Structural Editing

  • Toggle: hatselect · Tier: planned — designed, not yet wired · Config: [hatselect] — address tokens by spoken label
  • What it does: Every visible token gets a spoken label so you can edit structurally — 'select alpha to charlie', 'delete bravo' — without cursor motions (Cursorless-style). Off by default.
  • Use when: When you want to edit code or text structurally by label instead of moving the cursor.
  • Example: Say 'delete bravo' and the token labeled bravo is gone — no cursor.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

WordFind Reverse Dictionary

  • Toggle: wordfind · Tier: optional · Config: [wordfind] — describe a word, get it
  • What it does: Offline reverse dictionary for tip-of-the-tongue moments — 'the word for when water turns to gas' → a ranked shortlist (evaporation, …). Anomia/AAC-friendly. Off by default.
  • Use when: When a word is on the tip of your tongue and you can only describe what it means.
  • Example: Say 'the word for when water turns to gas' → evaporation.
  • Activate: yazses features enable wordfind then yazses restart

Spaced-Repetition Capture

  • Toggle: srscap · Tier: optional · Config: [srscap] — voice → Anki cloze cards
  • What it does: Say 'remember that X is Y' mid-dictation and it makes a local Anki cloze study card, scheduled by SM-2 — study material captured in the flow of work. Off by default.
  • Use when: When you're studying and want to bank facts as flashcards without breaking your dictation flow.
  • Example: Say 'remember that the capital of France is Paris' → a flashcard.
  • Activate: yazses features enable srscap then yazses restart

Word-Count & Goal Tracker

  • Toggle: wordgoal · Tier: optional · Config: [wordgoal] — track your writing goal
  • What it does: Counts dictated words and tracks a goal: say 'goal 500 words', then 'how many words so far?' for spoken progress. Off by default.
  • Use when: When you're writing toward a word-count target and want spoken progress without leaving your flow.
  • Example: Say 'how many words so far?' and it tells you your progress.
  • Activate: yazses features enable wordgoal then yazses restart

Voice Undo/Redo Timeline

  • Toggle: timeline · Tier: planned — designed, not yet wired · Config: [timeline] — undo YazSes output by voice
  • What it does: Undo/redo YazSes's own output across bursts by voice — 'undo the last sentence', 'redo' — even where the app's Ctrl+Z is unreliable. Off by default.
  • Use when: When you need to take back what YazSes typed across bursts in an app whose own undo is unreliable.
  • Example: Say 'undo the last sentence' to take back what YazSes just typed.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Session Bookmarks

  • Toggle: bookmarks · Tier: planned — designed, not yet wired · Config: [bookmarks] — checkpoints in a long session
  • What it does: Drop named anchors in a long dictation ('bookmark here as intro') and jump back ('jump to my last bookmark') after a break. Off by default.
  • Use when: When you're in a long dictation session and want named checkpoints to jump back to after a break.
  • Example: Say 'bookmark here', then 'jump to my last bookmark' after a break.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice Jump-to-Symbol

  • Toggle: jump · Tier: planned — designed, not yet wired · Config: [jump] — navigate code by voice
  • What it does: 'Jump to function tokenize', 'go to line 240' → the editor moves there (fuzzy symbol match, or a search fallback). Off by default.
  • Use when: When you're navigating a code file hands-free and want to jump to a function or line by voice.
  • Example: Say 'go to line 240' or 'jump to function tokenize' to navigate.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice Fuzzy File Open

  • Toggle: fileopen · Tier: planned — designed, not yet wired · Config: [fileopen] — open files by voice
  • What it does: 'Open the notes about the mortgage' → fuzzy-matches your local files and opens the best one. Mouse-free. Off by default.
  • Use when: When you know a file by topic but not its path and want to open it without the mouse.
  • Example: Say 'open the mortgage notes' to launch the right file.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Citation-by-Voice

  • Toggle: cite · Tier: optional · Config: [cite] — cite from your local .bib
  • What it does: Say 'cite Vaswani 2017' and it inserts a formatted citation from your local BibTeX library, fully offline. Off by default.
  • Use when: When writing a paper by voice and you want citations pulled from your local BibTeX library.
  • Example: Say 'cite Vaswani 2017' to insert a citation from your .bib.
  • Activate: yazses features enable cite then yazses restart

Voice Window Management

  • Toggle: windowctl · Tier: planned — designed, not yet wired · Config: [windowctl] — layout by voice
  • What it does: Hands-free desktop layout: 'move window left half', 'maximize', 'workspace 3'. Needs the windowctl extra for your compositor. Off by default.
  • Use when: When you want to arrange windows and switch workspaces without touching the mouse.
  • Example: Say 'move window left half' or 'workspace 3' to arrange your desktop.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Document Find-and-Replace

  • Toggle: findreplace · Tier: optional · Config: [findreplace] — edit the whole document
  • What it does: Edit the whole document by voice: 'replace every utilise with use'. Not just the last utterance. Off by default.
  • Use when: When you need to change a word across the whole document, not just the last utterance.
  • Example: Say 'replace every utilise with use' to edit the whole document.
  • Activate: yazses features enable findreplace then yazses restart

Clipboard-History by Voice

  • Toggle: cliphistory · Tier: optional · Config: [cliphistory] — recall copies
  • What it does: Recall recent copies by voice: 'paste the second thing I copied', 'the URL I copied'. Local in-memory buffer. Off by default.
  • Use when: When you've copied several things and need to paste an earlier one without re-copying.
  • Example: Say 'paste the second thing I copied' to recall a copy.
  • Activate: yazses features enable cliphistory then yazses restart

Commands & automation

Fire shortcuts, run tools, and automate actions by voice.

Say-Macro

  • Toggle: macros · Tier: optional · Config: [macros]
  • What it does: Speak a trigger word to expand canned text. Needs setup.
  • Use when: When you repeatedly type the same boilerplate and want a spoken shortcut for it.
  • Example: Say your trigger word to expand canned text (configure [macros]).
  • Activate: yazses features enable macros then yazses restart

Chorded Shortcut Synthesis

  • Toggle: chords · Tier: recommended · Config: [chords] — any keyboard shortcut by voice
  • What it does: Say any shortcut and it's pressed — 'press control shift P', 'escape twice', 'hit F5' — no macro registration needed. Off by default.
  • Use when: When you want to fire arbitrary keyboard shortcuts hands-free without registering each as a macro.
  • Example: Say 'press control shift P' and the command palette opens.
  • Activate: yazses features enable chords then yazses restart

Spoken Shell Pipeline Builder

  • Toggle: shellpipe · Tier: optional · Config: [shellpipe] — build pipelines, preview first
  • What it does: Speak stages ('list files, pipe to grep error, pipe to word count') → renders 'ls | grep error | wc -l' as text; nothing runs until you say 'run it'. Off by default.
  • Use when: When you want to build a shell pipeline by voice and see it as text before anything runs.
  • Example: Speak 'list files pipe to grep error' to build a previewed pipeline.
  • Activate: yazses features enable shellpipe then yazses restart

Voice Git Choreographer

  • Toggle: gitvoice · Tier: planned — designed, not yet wired · Config: [gitvoice] — safe git by voice
  • What it does: Drive git by voice via a structured grammar; destructive ops (force-push, reset --hard) wait for a spoken confirm and the undo is always spoken. Off by default.
  • Use when: When driving git hands-free and you want destructive commands gated behind a spoken confirm.
  • Example: Say 'force push' and it waits for confirm, and tells you the undo.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Terminal Command Safety Gate

  • Toggle: cmdsafety · Tier: planned — designed, not yet wired · Config: [cmdsafety] — confirm dangerous commands
  • What it does: In a terminal, holds a destructive command (rm -rf, curl|sh, force-push) until you say 'confirm', so a misrecognition can't fire it. Off by default.
  • Use when: When dictating into a terminal where a misheard rm or force-push could be catastrophic.
  • Example: Dictate 'rm -rf' in a terminal and it waits for you to say 'confirm'.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Slot-Filling Dictation

  • Toggle: slotfill · Tier: optional · Config: [slotfill] — one utterance → a form
  • What it does: Speak once and fill a named-field template: 'bug in login, high priority, affects Firefox' routes each value to its field. Off by default.
  • Use when: When filing a structured ticket or form and want one utterance routed to its named fields.
  • Example: Say 'high priority, affects Firefox' to fill a bug-report form.
  • Activate: yazses features enable slotfill then yazses restart

Few-Shot Command Spotter

  • Toggle: cmdspotter · Tier: planned — designed, not yet wired · Config: [cmdspotter] — enrolled micro-commands
  • What it does: Enroll a few examples of short commands ('send', 'stop') that fire instantly without a full decode. Needs the kws extra. Off by default.
  • Use when: When a few short commands come up constantly and you want them to fire without a full decode.
  • Example: Enroll 'send' once, then say it to fire the action instantly.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Ambient Audio-Event Guard

  • Toggle: audioguard · Tier: planned — designed, not yet wired · Config: [audioguard] — pause on interruptions
  • What it does: Auto-pauses dictation (or alerts) when it hears a doorbell, phone, alarm or your name. Needs the soundawareness extra. Off by default.
  • Use when: When dictating somewhere with interruptions (doorbell, phone) that should pause recording.
  • Example: The doorbell rings mid-dictation and recording auto-pauses.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Gesture Chords

  • Toggle: gesture · Tier: planned — designed, not yet wired · Config: [gesture] — multi-input chords
  • What it does: Bind chords (held key + nod / second key / sEMG squeeze) to actions like send or switch profile. Sensors need their own extras. Off by default.
  • Use when: When your hands are busy and you want to fire send or switch profiles with a nod, not a word.
  • Example: Hold the hotkey and nod to send (bind chords in [gesture]).
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice Snippets

  • Toggle: snippets · Tier: planned — designed, not yet wired · Config: [snippets] — spoken text expander
  • What it does: Say a trigger ('insert my signature') to type a stored template. Add entries under [snippets]. Off by default.
  • Use when: When you keep typing the same boilerplate (signature, address) and want a spoken shortcut.
  • Example: Say 'insert my signature' to type a stored template.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice-to-Tool (Spoken MCP)

  • Toggle: agent · Tier: planned — designed, not yet wired · Config: [agent] — run tools by voice
  • What it does: Speak an intent to run allowlisted tools via MCP; state-changing tools ask first. Needs the 'agent' extra + a local planner model. Off by default.
  • Use when: When you want to run allowlisted tools or actions by voice through a local planner.
  • Example: Say 'create a calendar event tomorrow at 3' (allowlisted tools).
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice Pilot (AT-SPI)

  • Toggle: pilot · Tier: planned — designed, not yet wired · Config: [pilot] — click by voice
  • What it does: Drive the desktop by voice via the accessibility tree ('click Save', 'focus the terminal'). Linux + pyatspi; labels only, no screenshots. Off by default.
  • Use when: When you want a hands-free desktop, clicking buttons by their labels on Linux.
  • Example: Say 'click the Save button' to drive the focused app via AT-SPI.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Multilingual

Dictate, translate, and switch between languages.

Polyglot Switch

  • Toggle: polyglot · Tier: optional · Config: [polyglot] — mixed-language
  • What it does: Handles dictation that mixes two languages.
  • Use when: When you naturally mix two languages in one sentence and need both transcribed correctly.
  • Example: Set [polyglot] pair='fa-en'; dictate mixing the two languages.
  • Activate: yazses features enable polyglot then yazses restart

Transliteration

  • Toggle: translit · Tier: optional · Config: [translit] — romanized → native script
  • What it does: Dictate your native language in Latin letters ('salam, chetori?') and inject the native script — Whisper nails romanized phonetics where native audio fails. Off by default.
  • Use when: When your native language transcribes better romanized and you want it injected in native script.
  • Example: Dictate 'salam' and it types سلام in Persian script.
  • Activate: yazses features enable translit then yazses restart

Per-Language Auto Switching

  • Toggle: langroute · Tier: planned — designed, not yet wired · Config: [langroute] — detect & swap model
  • What it does: Detects the language you speak and hot-swaps to its specialized model + punctuation, no manual toggle. Needs the per-language model files. Off by default.
  • Use when: When you switch spoken languages during a session and don't want to toggle models by hand.
  • Example: Switch languages mid-session and the right model loads automatically.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Compose-in-Target-Language

  • Toggle: compose · Tier: planned — designed, not yet wired · Config: [compose] — speak L1, type L2
  • What it does: Speak your strongest language and inject the text in a target language you write less fluently. Offline MT (translate extra). Off by default.
  • Use when: When you think best in your native language but must write the output in another one.
  • Example: Speak Farsi with [compose] target='en' and type English.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Two-Way Interpreter

  • Toggle: interpret · Tier: planned — designed, not yet wired · Config: [interpret] — face-to-face translate
  • What it does: Face-to-face mode: two speakers alternate and each turn is translated into the other language. Reuses the offline translate + TTS path. Off by default.
  • Use when: When you're in a face-to-face conversation with someone whose language you don't share.
  • Example: Set [interpret] pair='en-es'; each speaker's turn is translated.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Pronunciation Feedback

  • Toggle: pronunciation · Tier: planned — designed, not yet wired · Config: [pronunciation] — L2 practice
  • What it does: Practice mode: dictate a target phrase and get per-phoneme good/fair/poor feedback for accent training. Needs the pronunciation extra. Off by default.
  • Use when: When you're learning a language and want per-phoneme feedback on how close your accent is.
  • Example: Practice mode: dictate a phrase, see per-phoneme good/fair/poor.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Speech Translation

  • Toggle: translate · Tier: optional · Config: [translate] — dictate L1, type English
  • What it does: Speak another language and type English (Whisper's built-in translate; no extra download). Other targets need the seamless extra. Off by default.
  • Use when: When you think in another language but need the text to land in English.
  • Example: yazses features enable translate — speak any language, type English.
  • Activate: yazses features enable translate then yazses restart

Accessibility & input modalities

Alternative input, eyes-free feedback, and accessibility aids.

Read-Back Loop

  • Toggle: read-back · Tier: optional · Config: [tts] + [accessibility] read_back
  • What it does: Speaks the transcript back to you (accessibility). Downloads a TTS model on first use.
  • Use when: When you can't or won't look at the screen and need to hear what was transcribed.
  • Example: yazses features enable read-back — then it speaks the transcript back.
  • Activate: yazses features enable read-back then yazses restart

LoadGuard

  • Toggle: loadguard · Tier: planned — designed, not yet wired · Config: [loadguard] — cognitive-load guardrails
  • What it does: When your speech shows rising cognitive load (pauses, fillers, slowdown), widen confirmations and defer risky actions instead of firing them. Off by default.
  • Use when: When you're mentally taxed and want the system to slow down and confirm before risky actions.
  • Example: Sounding overloaded? Destructive commands wait for a wider confirm.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Echo Own-Audio Replay

  • Toggle: echo · Tier: planned — designed, not yet wired · Config: [echo] — 'play that back'
  • What it does: Say 'play that back' to replay your own captured audio for a text span (not TTS) — catch homophone/ASR errors by ear, eyes-free. Off by default.
  • Use when: When you suspect a homophone or ASR error and want to verify it by hearing your own audio.
  • Example: Say 'play that back' and hear your own recording of the last words.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Screen-Reader Pacing

  • Toggle: srpace · Tier: planned — designed, not yet wired · Config: [srpace] — pace injection to a screen reader
  • What it does: Pace injected text to a screen reader's reading rate, clause-chunked, instead of one burst — so the screen reader can announce it coherently. Off by default.
  • Use when: When a screen-reader user needs injected text paced so the reader can announce it coherently.
  • Example: Dictate a paragraph and your screen reader keeps up, clause by clause.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Interruptible Proofreading

  • Toggle: proofback · Tier: planned — designed, not yet wired · Config: [proofback] — barge-in read-back editing
  • What it does: Interrupt the spoken read-back ('stop — change that') and the cursor lands on the exact word being read — eyes-free proofreading. Off by default.
  • Use when: When you're proofreading a long dictation eyes-free and need to jump to a mistake as you hear it.
  • Example: Interrupt the read-back and the cursor lands on the word being read.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Vocal Morse

  • Toggle: morsevox · Tier: planned — designed, not yet wired · Config: [morsevox] — two-tone Morse text entry
  • What it does: Type by Morse using two vocal sounds (short/long) — full text from a single reliable vocalization, with adaptive timing. For locked-in/minimal-ability users. Off by default.
  • Use when: When you can produce only one or two reliable vocal sounds and need a full-alphabet entry path.
  • Example: One short hum, one long — spell a whole word by voice-Morse.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Mouth-Sound Switch Access

  • Toggle: mouthswitch · Tier: planned — designed, not yet wired · Config: [mouthswitch] — scan-and-select by mouth sounds
  • What it does: Drive a scanning selector with non-verbal mouth sounds ('pop' = advance, cluck = select) — the switch-access method for people who can't produce reliable speech. Off by default.
  • Use when: When you can't produce reliable speech and need to drive a scanning selector with mouth sounds.
  • Example: Pop your lips to move the highlight, cluck to select — no words.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Pitch-Contour Gestures

  • Toggle: contour · Tier: planned — designed, not yet wired · Config: [contour] — hum a shape to run a command
  • What it does: Hum a pitch shape as a word-free command: rising = confirm, falling = cancel, rise-fall = undo. Language-independent, works in noise. Off by default.
  • Use when: When you want to confirm or cancel hands- and word-free, even in noise where speech struggles.
  • Example: Hum a rising note to confirm, a falling one to cancel — no words.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Beam-Steered Spatial VAD

  • Toggle: spatialvad · Tier: planned — designed, not yet wired · Config: [spatialvad] — 2-mic direction gate
  • What it does: With a stereo/2-mic input, drops any sound not coming from your seat (a TV, a colleague) by its arrival direction — enrollment-free, complements Cocktail Filter. Off by default.
  • Use when: When you have a stereo mic and want sound from a TV or nearby colleague gated out by direction.
  • Example: A colleague talks beside you and it's gated out by direction.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Vocal Joystick

  • Toggle: vocaljoystick · Tier: planned — designed, not yet wired · Config: [vocaljoystick] — analog cursor control by voice
  • What it does: Continuous cursor/scroll control by sustaining vowels — 'ahh' right, 'eee' up, louder = faster, pitch-jump = click. No words. For severe motor impairment. Off by default.
  • Use when: When you have severe motor impairment and need continuous cursor/scroll control by voice.
  • Example: Hum 'eee' and the cursor glides up — louder moves it faster.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Earcon Feedback

  • Toggle: earcon · Tier: planned — designed, not yet wired · Config: [earcon] — non-speech state tones
  • What it does: Tiny structured tones signal daemon state eyes-free (rising motif = recording, buzz = low confidence, chime = command done) — faster than spoken read-back. Off by default.
  • Use when: When you want instant eyes-free confirmation of daemon state without waiting for a read-back.
  • Example: A rising two-note beep tells you recording started, no glance needed.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Local Voice Timer

  • Toggle: voicetimer · Tier: planned — designed, not yet wired · Config: [voicetimer] — offline timers & break reminders
  • What it does: Set a timer or break reminder by voice ('set a timer for 25 minutes'), announced by read-back — fully offline, no phone or cloud assistant. Off by default.
  • Use when: When you want to set a timer or break reminder by voice without a phone or cloud assistant.
  • Example: Say 'set a timer for 25 minutes' — it reminds you, fully offline.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Silent Lip-Reading

  • Toggle: lipread · Tier: planned — designed, not yet wired · Config: [lipread] — dictate with no voice
  • What it does: Dictate silently — a webcam reads your lips when you can't or shouldn't speak. Needs a webcam (vsr extra). Off by default.
  • Use when: When you can't or shouldn't speak aloud but still need to dictate (quiet room, privacy).
  • Example: Mouth the words silently and a webcam reads your lips into text.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Sign-Language Input

  • Toggle: sign · Tier: planned — designed, not yet wired · Config: [sign] — sign to the webcam
  • What it does: Deaf/HoH signers dictate by signing to the webcam; ASL is recognized on-device and typed. Needs a webcam (sign extra). Off by default.
  • Use when: When a Deaf or hard-of-hearing signer wants to dictate by signing instead of speaking.
  • Example: Sign to the webcam and your ASL is recognized and typed.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Head-Pointer

  • Toggle: headpointer · Tier: planned — designed, not yet wired · Config: [headpointer] — cursor by head pose
  • What it does: Move and click the mouse by tilting your head; pair with voice for a fully hands-free desktop. Needs a webcam (headpointer extra). Off by default.
  • Use when: When your hands are unavailable and you need mouse cursor control from head movement.
  • Example: Tilt your head to move the cursor; dwell to click.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Personal Read-Back Voice

  • Toggle: readback_clone · Tier: planned — designed, not yet wired · Config: [tts] clone_voice — your own voice
  • What it does: Read the transcript back in a clone of your own voice from a short enrollment. Permissive OpenVoice V2 default; embedding stays in the encrypted corpus. Needs the tts extra and downloads a voice-clone model on first use. Off by default.
  • Use when: When you want read-back spoken in a clone of your own voice, not a generic TTS voice.
  • Example: Enroll once; read-back then uses a clone of your own voice.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Vocal-Strain Guard

  • Toggle: voicehealth · Tier: planned — designed, not yet wired · Config: [voicehealth] — break reminders
  • What it does: Advises a break when your voice shows rising strain (jitter/shimmer/HNR) over a session. Advisory only, not diagnostic. Off by default.
  • Use when: When you dictate in long stretches and want a nudge to rest before your voice strains.
  • Example: Get a break reminder when your voice shows rising strain.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Voice Mouse Grid

  • Toggle: mousegrid · Tier: planned — designed, not yet wired · Config: [mousegrid] — click by voice
  • What it does: Drive the cursor and click by voice via a numbered grid ('three, seven, click') where no accessibility tree exists. Reuses the overlay. Off by default.
  • Use when: When you need to click somewhere no accessibility tree exists and want to do it hands-free.
  • Example: Say a grid number to move the cursor, then 'click'.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Modality Role Router

  • Toggle: modality · Tier: planned — designed, not yet wired · Config: [modality] — multi-input, experimental
  • What it does: Routes each input to its fastest role (gaze→point, EMG→command, voice→dictation). Needs EMG/gaze hardware; experimental. Off by default.
  • Use when: When you have EMG or gaze hardware and want each input assigned to its fastest role.
  • Example: Route dictation vs commands to different targets by role.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Glance-Type (camera)

  • Toggle: gaze · Tier: experimental — not advised yet · Config: [gaze] — look-to-pane, experimental
  • What it does: Uses the webcam to route dictation to the pane you look at. Experimental; needs a webcam + X11.
  • Use when: When you have several panes open and want dictation to land in whichever one you look at.
  • Example: Glance at a screen zone to choose where the next dictation lands.
  • Activate: yazses features enable gaze then yazses restart

Learning, memory & analytics

On-device learning, personal memory, and private analytics.

Voiceprint Mind (personalize)

  • Toggle: personalize · Tier: optional · Config: [personalize] — vocab bias
  • What it does: Biases STT toward terms you use often. Local only.
  • Use when: When your jargon or names get mis-heard and you want STT biased to your own frequent terms.
  • Example: yazses features enable personalize — biases STT to your frequent terms.
  • Activate: yazses features enable personalize then yazses restart

Learning loop

  • Toggle: learning · Tier: optional · Config: [learning] — yazses tune
  • What it does: Records an encrypted local corpus so yazses tune can improve accuracy. Opt-in; nothing leaves your machine.
  • Use when: When you want dictation accuracy to improve over time from your own corrected usage.
  • Example: yazses features enable learning; then 'yazses tune' to review proposals.
  • Activate: yazses features enable learning then yazses restart

Corpus Voiceprint Scrub

  • Toggle: corpus_scrub · Tier: optional · Config: [learning] anonymize_audio
  • What it does: Speaker-anonymizes learning-corpus audio before storage so retained clips keep what was said but not an identifiable voice. Needs learning on. Off by default.
  • Use when: When you enable the learning corpus but want stored audio stripped of your voice identity.
  • Example: Stored learning clips are pitch-shifted to hide your voice identity.
  • Activate: yazses features enable corpus_scrub then yazses restart

Mood Ledger

  • Toggle: sentiment · Tier: planned — designed, not yet wired · Config: [sentiment] — private mood journal
  • What it does: Tags each dictation with an emotion and builds a private mood-over-time view. Labels stay in the encrypted corpus. Needs the sentiment extra. Off by default.
  • Use when: When you want a private journal that tracks how your mood shifts across your dictations.
  • Example: yazses features enable sentiment — builds a private mood-over-time view.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Speaking Coach

  • Toggle: coach · Tier: optional · Config: [coach] — private speech analytics
  • What it does: Private on-device analytics of your dictation: filler rate, words-per-minute, vocabulary diversity, trend. From the encrypted corpus only. Off by default.
  • Use when: When you want to track and cut down your filler words, speaking pace, or vocabulary over time.
  • Example: yazses features enable coach — see filler rate + words-per-minute.
  • Activate: yazses features enable coach then yazses restart

Multi-User Profiles

  • Toggle: multiprofile · Tier: planned — designed, not yet wired · Config: [voiceprint] multi_profile
  • What it does: On a shared machine, loads each enrolled speaker's own vocab/hotkey/cleanup from their voiceprint — no manual switching. Needs the voiceprint extra + 2+ enrolled profiles. Off by default.
  • Use when: When several people share one machine and each wants their own vocab and settings loaded.
  • Example: Each enrolled speaker loads their own vocab/hotkey automatically.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Ask My Notes (voice RAG)

  • Toggle: rag · Tier: planned — designed, not yet wired · Config: [rag] — cited answers from local docs
  • What it does: Ask a question by voice and get an answer grounded in — and citing — your own local notes/docs. Needs the rag extra (embeddings + index). Off by default.
  • Use when: When you want a spoken, cited answer pulled from your own local notes and documents.
  • Example: Ask 'what did I note about the budget?' → a cited answer from your local docs.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Predictive Completion

  • Toggle: predict · Tier: planned — designed, not yet wired · Config: [predict] — voice autosuggest
  • What it does: A tiny local model suggests the rest of your sentence; accept by voice. Needs the predict extra + a model. Off by default.
  • Use when: When you want the daemon to finish your sentence so you can speak less.
  • Example: Accept the greyed-ahead completion by continuing to speak.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Spoken Recall & Scratch

  • Toggle: recall · Tier: optional · Config: [recall] — query past dictation
  • What it does: Search your past dictations ('yazses recall …') and capture spoken notes-to-self. Search requires the learning corpus enabled ([learning]); local corpus only, nothing leaves the machine. Off by default.
  • Use when: When you want to search things you dictated earlier or leave yourself spoken notes-to-self.
  • Example: yazses recall 'the address I dictated yesterday'.
  • Activate: yazses features enable recall then yazses restart

Conversation & recording capture

Multi-speaker capture, recordings, and noisy-environment focus.

Recording Import

  • Toggle: recimport · Tier: optional · Config: [recimport] — transcribe existing files
  • What it does: Run yazses transcribe <file> to batch-transcribe voice memos/lectures/meetings offline to .txt/.md/.srt/.vtt/.json. Add --diarize to tag who said what ('Speaker 1: …'), --names/--rename or an enrolled voiceprint for real names. Needs the diarization extra for speaker tags. Off by default.
  • Use when: When you have existing voice memos, lectures, or meeting recordings to batch-transcribe offline.
  • Example: Drop in a lecture recording and get a searchable .srt transcript.
  • Activate: yazses features enable recimport then yazses restart

Meeting Mode

  • Toggle: meeting · Tier: optional · Config: [meeting] — hands-free meeting scribe
  • What it does: yazses meeting start records a whole meeting hands-free (no key to hold), streams a live transcript, and at yazses meeting stop writes a speaker-labelled transcript ('Alice: …', 'You: …') plus opt-in notes. Speakers are found by voice embedding + clustering (auto count); fix a miscount with yazses meeting relabel. Needs the diarization extra for speaker tags. On-device; off by default.
  • Use when: When you're in a live meeting and want a hands-free, speaker-labelled transcript and notes afterwards.
  • Example: Hit start, put the phone down, and get who-said-what minutes at the end.
  • Activate: yazses features enable meeting then yazses restart

Crowd-Proof Dictation

  • Toggle: crowdproof · Tier: planned — designed, not yet wired · Config: [crowdproof] — dictate in a crowd
  • What it does: Reconstructs your enrolled voice out of overlapping babble before STT, so dictation survives an open-plan office or café. Needs the crowdproof extra. Off by default.
  • Use when: When you must dictate in an open-plan office or café where overlapping voices swamp the mic.
  • Example: Dictate in a noisy café and the interfering voices are stripped out.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Diarized Conversation Capture

  • Toggle: diarize · Tier: optional · Config: [diarize] — attributed multi-speaker
  • What it does: Capture a live conversation as attributed Markdown (Alice: …) and rename speakers by voice ('call speaker two Alice'). Needs the diarize extra. Off by default.
  • Use when: When capturing a live multi-speaker conversation you need attributed to each person.
  • Example: A two-person chat is typed as Alice:Bob: … you can rename by voice.
  • Activate: yazses features enable diarize then yazses restart

Meeting Scribe

  • Toggle: scribe · Tier: planned — designed, not yet wired · Config: [scribe] — who-said-what transcript
  • What it does: Records a multi-speaker meeting transcript on-device, tagging you as 'You' and others as Speaker N. Needs the scribe extra (diarization). Off by default.
  • Use when: When you're recording a multi-speaker meeting and want a who-said-what transcript.
  • Example: Meeting mode: turns are diarized into a labelled transcript.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Cocktail Filter (voice focus)

  • Toggle: cocktail · Tier: experimental — not advised yet · Config: [cocktail] — experimental
  • What it does: Tries to focus on your voice and reject other speakers. Currently over-rejects your OWN voice — leave off until improved.
  • Use when: When others are talking nearby and you want only your own voice to reach STT (still rough).
  • Example: yazses features enable cocktail --force — filters other voices (experimental).
  • Activate: yazses features enable cocktail then yazses restart

Voice Guard (biometric + anti-spoof)

  • Toggle: voiceguard · Tier: planned — designed, not yet wired · Config: [voiceguard] — experimental
  • What it does: Types only when the live speaker matches your enrolled voiceprint and the audio isn't a recording/synthetic. Needs enrollment + the voiceguard extra; false-reject risk (fail-open by default). Off by default.
  • Use when: When you must guarantee only your live voice types, blocking recordings, synthesis, or others.
  • Example: yazses features enable voiceguard --force — only your voice dictates.
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)

Glasses↔Desktop Bridge

  • Toggle: bridge · Tier: planned — designed, not yet wired · Config: [bridge] — phone/glasses mic, experimental
  • What it does: Dictate from a paired phone/glasses; the desktop does STT + typing. Reuses the remote transport; local link only. Experimental. Off by default.
  • Use when: When you want to dictate from a paired phone or glasses mic while your desktop does STT.
  • Example: Pair smart glasses to relay audio to the desktop (experimental).
  • Activate: not possible yet — designed but not wired into this build (yazses features enable refuses it; contributions welcome)