Skip to content

Roadmap

YazSes is an Apache-2.0, privacy-first voice dictation and local interaction project for Linux, macOS and Windows. It runs speech recognition on your own hardware, without an account or cloud transcription service. The current stable release is v2.51.0, with installers and package channels described in platform support. A published installer does not by itself prove that every input method works on that operating system or on every physical device.

Our direction: make YazSes the offline, keyboard-level microphone for the agent era: dependable on Linux, evidence-backed across platforms, usable by people who cannot comfortably hold a key, and interoperable with AI tools without silently sending prompts. This direction and its limits are recorded in ADR-030 (Accepted, 2026-10-22).

This is a decision and evidence roadmap, not a schedule or product promise. It separates shipped code, real-hardware proof, technical research, and conditional ideas. For the freshest development state read what we're building now, the release notes, and the changelog. For actionable work use milestones, the contributor ROADMAP.md, and the issue linked for each item.

What our status words mean

A release, a working code path, a passing synthetic test, and a successful experiment on physical hardware are different claims.

Label What is established What is not established
Released A command or capability is in a tagged build and can be reached where its documented prerequisites are met. Full compatibility with every OS, package, application or sensor.
Experimental / hardware-unverified Opt-in code exists and has synthetic, replay or CI evidence. Acceptable false activations, independently validated hardware, or a supported clinical/accessibility outcome.
In progress A bounded, permitted issue has a deliverable and acceptance criteria. A promised release date or a completed result.
Research / proposed A hypothesis, comparison, draft ADR or prototype is open to evaluation. A new enabled feature, an accepted ADR, or scheduled implementation.
Deferred / conditional Demand and an explicit decision must precede implementation. A commitment to build it.

For reachable features, the source of truth is the feature registry and yazses features command, which distinguish wired capabilities from designed-but-unwired ones. For actual installation and usage evidence, consult the platform validation matrix. It distinguishes Verified (HW), Reported, CI only and UNVERIFIED, records the exact release tested, and does not confer validation on later versions automatically.

How a claim gets earned

Release availability and real-device verification are separate evidence paths. A package can ship while a specific device remains unverified; a hardware trial can also fail. Only a complete positive hardware record for the same released build and setup can support a narrow compatibility claim.

flowchart TB
    D["Design or scoped technical decision"]
    T["Synthetic / replay tests and CI<br/>Code-path evidence only"]
    R["Published software release<br/>Installable, not device proof"]
    H["Physical-device trial by a named tester<br/>Exact version, OS and hardware; may pass or fail"]
    G{"Positive Verified (HW) record<br/>for that released build and setup?"}
    S["Bounded support claim<br/>Only what was actually verified"]
    U["No verified compatibility claim<br/>Preserve Failed, Reported or UNVERIFIED status"]
    D --> T
    T --> R
    T --> H
    R --> G
    H --> G
    G -->|"Yes"| S
    G -->|"No / incomplete"| U
    classDef verified stroke-width:3px
    classDef unverified stroke-dasharray:6 3
    class S verified
    class U unverified

Text equivalent:

Evidence Supports Does not support
Design / ADR Architecture or intention has been recorded. A working implementation.
Synthetic / replay / CI The specified test passed under simulated, recorded or runner conditions. Physical hardware, microphone permission or real app interaction.
Published release A named build and package can be installed. Compatibility with any particular device, desktop or feature path.
Real-device test A named tester records the exact build, OS, device, install path, actual result and relevant diagnostics. Results can be Verified (HW), Failed (HW) or Reported when incomplete. Any untested version, OS, device or other claim.
Bounded compatibility claim Both a published build and a complete positive Verified (HW) record for that tested route. Automatic promotion of every platform or a later release.

See the validation evidence standard and validation matrix. Failed and incomplete reports remain visible; neither becomes a positive compatibility claim.

Current technical position — November 2026

Area Status Evidence gap or next step
Desktop dictation and transcription Released: local hold-to-talk, staged dictation, optional meeting/file transcription and multiple speech engines. Packages exist on Linux, macOS and Windows. The entire capture → decode → text-injection path requires per-platform physical validation.
Linux X11 / Wayland Released with outstanding compositor and Unicode checks. Linux-first is not a claim of universal Wayland correctness. Current X11 verification #642 and GNOME/KDE Wayland #643. The ydotool non-ASCII drop (#329) is fixed; confirming it on real GNOME and KDE sessions is part of #643.
Windows / macOS Released installers; preview-level end-to-end interaction evidence under ADR-030. Installing is not equivalent to successfully dictating. Cross-platform field tests #504 and desktop first-use campaign.
AI-agent microphone Released: the local stdio MCP server; since v2.45.0 its ask_human stops listening when you stop speaking, and an opt-in, off-by-default send-to opens the Claude or Codex desktop app with your prompt filled in and never sent; and the v2.49.0 release carries a one-click .mcpb bundle. Experimental / client-unverified: neither send-to nor the bundle has been tried in the real Claude or Codex apps, so pre-fill-without-send is the vendors' documented behaviour, not yet observed here. Not available: a listing in the official MCP registry (the entry is prepared; publishing is switched off). Send-to #637, MCP bundle #638 and registry listing #639 stay open until verified in real clients; stop-listening #640 is done.
Speech quality / languages Released engines and language settings. Language-specific performance and Mandarin support must be demonstrated, not inferred from a setting. ASR research epic #787, model evaluation #503, Mandarin release gate #505.
EMG, blink, jaw-clench switches Experimental, off by default, real-device evidence not established. Source readers and synthetic/replay paths exist; these do not read thoughts and are not medical devices. Biosignal validation protocol; ThinkGear first-device epic #826.
Android Source foundations only, including early Kotlin modules. There is no installable YazSes Android app/APK. Mobile programme, epic #81, research #789.
XR / expanded HCI Research only. A synthetic demonstration or an architecture document does not establish headset/device integration. XR programme and HCI programme #692, subject to ADR-030.

A shipped experimental hardware reader is not a qualified hardware device. The software may be part of a stable release even though no specific headset, armband, sensor, electrode setup or user has passed physical acceptance testing.

Execution order — outcomes first, not feature count

These are priorities and evidence states, not release dates or a four-era timeline. The engineering lanes can progress independently; only the arrows entering the decision gate express a prerequisite.

flowchart TB
    subgraph DELIVERY["Current permitted delivery"]
      direction LR
      P0["P0 - Desktop reliability and OS validation<br/>ACTIVE: hardware evidence incomplete"]
      P1["P1 - Agent-era voice interfaces<br/>RELEASED code: real-client validation pending"]
    end
    subgraph RESEARCH["Measure existing technology before expansion"]
      direction LR
      ASR["R1 - Offline ASR and languages<br/>RESEARCH: benchmark and acceptance gates"]
      BIO["R1 - EMG / blink switches<br/>EXPERIMENTAL: physical validation pending"]
    end
    subgraph HORIZON["Future surfaces: not scheduled feature releases"]
      direction LR
      AND["Android<br/>SOURCE FOUNDATIONS; no APK"]
      XR["XR / expanded HCI<br/>RESEARCH ONLY"]
    end
    G{"New capability permitted by ADR-030?<br/>Substantive outside-user evidence and recorded decision"}
    BUILD["Scoped engineering issue with acceptance criteria"]
    PARK["Remain research / deferred"]
    AND --> G
    XR --> G
    G -->|"Yes"| BUILD
    G -->|"No"| PARK
    classDef current stroke-width:3px
    classDef experimental stroke-dasharray:6 3
    classDef research stroke-dasharray:2 3
    class P0,P1 current
    class BIO experimental
    class ASR,AND,XR research

Text equivalent: P0 is the first priority but not yet fully verified; it covers the installed dictation path on actual OS and compositor combinations. P1 interfaces have shipped but still need client-version tests to establish review-before-send behavior. R1 ASR work is benchmark research; R1 biosignal input has released experimental code but awaits real-device and safety evidence. Android has source foundations without an installable application; XR and expanded HCI remain research only. Neither is scheduled for delivery without the explicit ADR-030 entry gate. None of these labels is a promise to ship the next stage.

Lane Success looks like Required evidence / issue
P0 — Make every existing claim true A first dictation succeeds; text arrives in the correct application; error and fallback reporting is honest; supported OS/compositors have current-version hardware evidence. X11 #642, Wayland #643, Windows/macOS #504. The engine-status (#644) and unwired-feature (#646) fixes are done; a regression in either is a bug. Active.
P1 — Agent-era input, narrowly scoped A user dictates, reviews, and personally submits a prompt. The shipped hand-off and MCP bundle are confirmed in the real client apps, named by version, without cloud transcription or automatic sending. ADR-031 and ADR-032 (both Accepted); open verification in #637, #638 and #639. Shipped; real-client verification pending.
P1 — First-use and distribution reliability Install, microphone permissions, model setup, text delivery and recovery are understandable to a new person. Desktop campaign, independent first-use reports #714, distribution evidence. Active.
R1 — More accurate local speech, measured Compare available models fairly by language and workload before suggesting a default or backend change. ASR research #787, benchmark protocol #793, engine decision #645. Research / bounded correctness changes.
R1 — Existing hands-free input, physically qualified Document false-trigger rates, user effort, stoppability, source integrity and recovery on real devices instead of assuming success from simulation. Hands-free #102, ThinkGear #826, accessibility research #790. Validation, not approval of a new feature wave.
R2 — Mobile and multimodal expansion A confirmed user problem, feasible offline/privacy model and reviewable architectural decision justify a small next experiment. Android #81, HCI #692, XR evidence-gated plan. Conditional / research-only while frozen.

Delivery items with accepted scope belong to existing milestones. There are no dates, committed device models or unmeasured performance improvements hidden in this table.

How a research idea earns implementation

The accepted ADR-030 breadth freeze prioritizes reliability, truthful capabilities, first-use adoption and two small agent interfaces. Beyond that scope, a proposal stops at a Proposed ADR or an evergreen:research issue unless substantive outside-user feedback and a maintainer-recorded amendment justify it. Accessibility feature expansion also needs evidence from real hands-free users.

flowchart TB
    A["Step 1: Written hypothesis<br/>a falsifiable question"]
    B["Step 2: Local-only feasibility and licence check<br/>no cloud, no private data"]
    C{"Step 3: Human participants or body-contact sensors?"}
    D["Step 3a: Consent, privacy and device-safety review"]
    E["Step 4: Reproducible measurements<br/>named device, version and baseline"]
    F{"Step 5: Maintainer go or no-go"}
    G{"Step 6: ADR-030 breadth freeze:<br/>exception accepted and recorded?"}
    H["Step 7: Scoped implementation proposal<br/>opt-in defaults, tests and docs required"]
    Z["Stop: the result stays research"]
    A --> B
    B --> C
    C -->|"yes"| D
    C -->|"no"| E
    D --> E
    E --> F
    F -->|"go"| G
    F -->|"no go"| Z
    G -->|"yes"| H
    G -->|"no"| Z

Text equivalent:

  1. Write the hypothesis as a question that a measurement could answer no to.
  2. Check feasibility and licensing using local resources only, with no cloud service and no private data.
  3. For human participants, on-body sensors or accessibility trials, review consent, privacy, device safety and research requirements before measurement.
  4. Take reproducible measurements: named device, release, configuration and baseline, including the failures.
  5. A maintainer records a go or no-go. No-go ends as published research.
  6. Even a go meets the ADR-030 breadth freeze: without a recorded exception it also ends as research.
  7. Only an accepted exception can become a scoped implementation task. Any eventual release must be opt-in by default and include tests and docs. The stage chart above then decides what may be claimed about it.

A code test does not replace physical tests, and no step guarantees the next.

Explicit non-goals: no cloud dictation fallback, always-listening wake-word assistant, voice-triggered routing to third-party online services, or automatic sending of user prompts/messages. Installed models may be downloaded at a user's explicit request, but recognition must not rely on network access. ADR-019 defines strict outbound-data and consent rules.

Technical evaluation paths — independently reproducible

The project welcomes public, evidence-led evaluation of its existing interfaces on different devices. A report can be useful even if the result is negative; it does not imply any manufacturer relationship, endorsement, validated compatibility or release commitment.

Evaluation What to measure and report Blocking gate
Offline dictation on an edge CPU or desktop Exact hardware, OS, microphone and install channel; model revision/checksum and licence; cold start, real-time factor, end-to-end latency distribution, peak memory, error/recovery cases and offline-after-install behavior. When ground truth is permitted, WER/CER. Hardware validation guide, ASR benchmark methodology #793.
Mandarin and multilingual speech Chinese CER with native-reviewed ground truth; code-switch cases, punctuation/script behavior, failure examples; pinned model, provenance, resource use and latency. Mandarin architecture/model work #503, native release gate #505.
EMG or blink activation Source/firmware, safe electrode setup and stream integrity; intended-event hit rate, unwanted activations per usable hour with uncertainty bounds, stale/disconnected-source handling, max-hold release and recovery. Hardware guide, validation protocol, first ThinkGear physical test #832.
Accessible hands-free tasks Task completion, wrong-target rate, fatigue, emergency stop, recovery, keyboard alternatives and actual OS accessibility API limits. Accessible-workspace research #790 and eye-control programme.

Each result needs a dated version/commit, tested device, OS, configuration, model/source revision, baseline, method, measurements, failures and limitations. Distinguish synthetic replay, CI, single-device feasibility and independent multi-person evidence. Do not upload participants' raw audio, transcripts, voiceprints, personal learning data or biosignals to public issues or third-party coding agents. Human-subject research requires its own consent and review process; a single-person technical trial is not a clinical study. YazSes is not a medical device, and its biosignal switch does not decode thoughts.

Where contributors can make measurable progress

The milestone policy distinguishes delivery issues (one milestone), epics (derived from their children), and evergreen research, translation and open-ended field reports (the appropriate evergreen:* label, no milestone). A research idea is not a release obligation.

Work you can join Tracking
A release-versioned real-user dictation test Verified everywhere — #13, first-use #714
Safe voice prompts for coding agents Agent-era mic — #14, workflow research #788
Packaging, measured accuracy and contributor documentation Install anywhere — #6, speech accuracy — #7, contributor experience — #9
Real-world hands-free safety and accessibility Hands-free — #10, ThinkGear #826, research #790
Android foundations, not a promised APK Android M0–M3, epic #81

There is also voice control — milestone #8, Hugging Face and multimodal HCI research and the future XR study. None overrides ADR-030's active constraints.

The destination — vision, not a delivery calendar

YazSes aims to make a keyboard optional for more people, with private speech processing under the user's control. Foundation dictation is released; selected perception and editing functions exist as opt-in features; more ambitious understanding and interaction need evidence.

Horizon Question Status today
Reliable input Does speech arrive in the intended application without loss or surprise? Active P0; cross-platform validation remains incomplete.
Grounded interaction Can a user direct and revise input safely without a keyboard? Parts released; hands-free user and compositor evidence still required.
Local understanding / recall Can a person search and manipulate their own material with verifiable sources? Some local building blocks exist; semantic cited recall is not a committed release.
New modalities and spaces Do accessible sensors, mobile surfaces or XR meaningfully reduce effort? Conditional research, not the next automatic feature wave.

The faculties, by how far each has got

Each box carries its status in words, so the picture still reads in greyscale; the table under it gives the same information as text for screen readers. A thick outline is released, a dashed outline is experimental or opt-in, a dotted outline is research or not committed. The shapes say nothing about dates, and a dotted box is not a promise.

flowchart TB
    D["Reliable input: hold-to-talk dictation<br/>Released; platform checks open"]
    T["Reliable input: file and meeting transcription<br/>Released; meetings opt-in"]
    M["Grounded interaction: local MCP server<br/>Released"]
    S["Grounded interaction: send-to Claude or Codex<br/>Experimental; client-unverified"]
    G["Grounded interaction: gaze, head pointer, Voice Pilot<br/>Experimental; off by default"]
    B["Grounded interaction: EMG, blink, jaw-clench<br/>Experimental; no device proof"]
    K["Understanding and recall: keyword recall<br/>Opt-in"]
    R["Understanding and recall: semantic, cited recall<br/>Not a committed release"]
    P["New modalities: mixed-language switching<br/>Deferred; not wired"]
    A["New modalities: Android<br/>Source foundations only"]
    X["New modalities: XR<br/>Research only"]
    D ~~~ T ~~~ M ~~~ S ~~~ G ~~~ B ~~~ K ~~~ R ~~~ P ~~~ A ~~~ X
    classDef released stroke-width:3px
    classDef experimental stroke-dasharray:6 3
    classDef research stroke-dasharray:2 3
    class D,T,M released
    class S,G,B,K experimental
    class R,P,A,X research

Text equivalent:

Horizon Faculty Status today
Reliable input Hold-to-talk dictation Released; per-platform physical validation is still open.
Reliable input File and meeting transcription Released; meeting capture is opt-in.
Grounded interaction Local MCP server with ask_human Released.
Grounded interaction Send-to Claude or Codex Experimental / client-unverified; off by default; pre-fills and never sends.
Grounded interaction Gaze, head pointer, Voice Pilot Experimental; off by default.
Grounded interaction EMG, blink and jaw-clench switches Experimental; real-device evidence not established.
Local understanding and recall Keyword recall of your own words Opt-in; needs the local learning corpus.
Local understanding and recall Semantic, cited recall Not a committed release.
New modalities and spaces Mixed-language switching Deferred; designed but not wired.
New modalities and spaces Android Source foundations only; no installable app.
New modalities and spaces XR Research only.

The boxes run from the most established faculty to the least. Their order says nothing about what is built next, and a dotted box is not a promise.

Three promises that hold across all of it

flowchart LR
  accTitle: Three promises that hold across every faculty
  accDescr: Offline, opt-in and private, each tied to the thing that enforces it.
  O["Offline by default<br/>enforced by an egress-inventory test"]
  F["Off by default<br/>new features ship dormant, enforced by tests"]
  L["Private learning corpus<br/>encrypted, opt-in, never leaves the machine"]
  classDef promise stroke-width:3px
  class O,F,L promise

Text equivalent:

Promise What backs it
Offline tests/test_egress_inventory.py fails the build when a module gains an unregistered outbound path (ADR-019).
Off by default New features ship dormant; tests/test_features_defaults.py and tests/test_dormant_features.py check it.
Private learning corpus The corpus is encrypted, opt-in, and nothing leaves your machine; it is one of the three categories that may never leave (ADR-019).

Read the architecture, the ADRs, mobile programme and research participation guide for design background and evidence requirements.

Shipped history — where to verify it

The authoritative source for a historical claim is the release notes, GitHub tags/releases, and changelog. Representative milestones include v1 offline hold-to-talk, v2.12 Meeting Mode and file import, v2.14 the optional Parakeet and gaze interfaces, and later experimental biosignal source integrations. Releasing code does not certify a physical device or an end-to-end OS path.

The latest version entries are generated from the changelog at docs build time:

Release Date What it brought
v2.51.0 2026-11-06 Glance-Type says what works on your session, clearer doctor reports, and Mandarin safety checks
v2.50.0 2026-11-06 Settings that keep your changes, a first-run ready notice, and safer files and sockets
v2.49.0 2026-11-05 owner-only private files, a Hands-free settings page, and fixes for silent failures
v2.48.1 2026-11-03 fixes: tray stop, pinned microphone, Persian dictation, clearer errors
v2.48.0 2026-11-02 biosignal switches (off by default), a lighter-memory option, and honest language docs
v2.47.0 2026-10-31 updates that actually apply, and fixes for what silently failed

Future work

Nothing here is scheduled. Each item is labelled with the status words defined above, and none overrides the ADR-030 breadth freeze.

Idea Status Why it is not built, and what would change that
Cloud escalation for transcription Deferred: designed, deliberately not implemented Offline stays the only path, so "nothing leaves your machine" is never quietly weakened. ADR-019 applies the same guardrails to any future feature, lists every way data can leave today, and names three things that may never leave whatever the consent: voiceprint embeddings, the learning corpus, and anything captured from someone who did not consent.
Third-party plug-ins Declined, not deferred A plug-in would sit on the dictation hot path with the microphone, the transcript and the injector. ADR-018 records the reasoning and what would reverse it: a real isolation boundary.
Other agent protocols Released: MCP server over stdio. Declined: FastAPI and agent-to-agent ADR-020 gives the reasons.
Personal speech adapters (LoRA) Deferred On-device fine-tuning for your own voice, including atypical speech, waits for a measured accuracy win on held-out data. Prompt-level personalisation from your own corpus already ships.
Per-language model switching and code-switch dictation Deferred The routing logic exists but nothing calls it yet: no decode path produces the per-span language IDs it needs, and no code-switch-adapted model ships.
Silent-speech input (sEMG) Experimental / hardware-unverified The activation seam ships; real-device evidence is not established.
Vision-based screen commanding Conditional Gaze targeting exists as an experimental, off-by-default capability (not hardware-validated); deeper pure-vision commanding depends on platform support that is not universal.
Spoken recall with cited retrieval Research yazses recall already searches your past dictation by keyword (opt-in). Semantic, cited, fully offline retrieval is not a committed release.
Multi-step task chaining over long sessions Research No design is accepted.

When a research direction does ship, it follows the same rule as everything else: off by default, opt-in, on-device.

Known limits

  • Physical validation is incomplete and does not carry forward automatically to newer versions. See the evidence matrix.
  • Wayland input varies with compositor and injector. GNOME and KDE require current-version evidence #643, and the ydotool non-ASCII fix (#329) still needs confirming on real GNOME and KDE sessions. Do not infer universal Wayland support.
  • macOS and Windows remain preview-level for complete dictation under ADR-030 even while desktop installers are published.
  • Models trade speed, memory and language coverage. First model installation may need an explicit download; local transcription does not. Optional features may need separate lazy-loaded extras.
  • Mandarin needs native validation #505; configuration is not proof of high-quality support.
  • Biosignal input is experimental and off by default. A parser, simulator, replay or driver test does not establish real-board accuracy, safety, or accessibility outcomes.
  • There is no Android app or XR integration to install today. Their source and research programmes are linked above.

Request a feature or report a verifiable result

Use the GitHub issue templates and review the validation standard. Include the exact build, device, OS and non-sensitive reproduction steps. For new research, identify the user need, falsifiable hypothesis, baseline, failure/stop criteria and existing issues. For studies and community contributions see students, researchers and industry.

A single reproducible success or failure on a named real system can advance this roadmap more than another untested feature proposal.