Skip to content

Add system-wide dictation for Pro users - #7652

Merged
ComputelessComputer merged 4 commits into
mainfrom
chore/anlg-382-system-dictation
Sep 17, 2026
Merged

ComputelessComputer merged 4 commits into
mainfrom
chore/anlg-382-system-dictation

Conversation

@ComputelessComputer

@ComputelessComputer ComputelessComputer commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator

Support configurable shortcuts and focused text insertion on macOS, Windows, and Linux. Gate access on Pro and handle recorder ownership, cancellation, and transcript recovery.

ANLG-382.


Summary by cubic

Adds system-wide dictation for Pro users. Dictation previously worked only inside the chat composer; now a configurable global shortcut starts recording from any app on macOS, Windows, and Linux, shows a phase overlay, and inserts the transcript into the focused text field.

New Features

  • Adds a dictation controller that manages press-and-hold and hands-free modes, including quick releases, cancellation, and transcript recovery.
  • Enforces recorder ownership through a transcription session ID, so a new session cancels the active one.
  • Preserves key releases and clipboard contents, validates editable targets, retains failed shortcut registrations, and cancels work racing native startup.
  • Keeps the last dictation when shortcuts or recording availability change, and clears it on disable or account changes.
  • Excludes the dictation overlay from persisted window state.
  • Adds Spanish translations for the dictation settings and recovery messages.

Dependencies

  • Adds @anlg/plugin-shortcut, the global-hotkey crate, and ashpd for cross-platform global shortcuts.

Implements ANLG-382.

Written for commit 018ca42. Summary will update on new commits.

Review in cubic

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 273 files

Not reviewed (too large): apps/desktop/src/i18n/locales/af/messages.ts (~2 lines), apps/desktop/src/i18n/locales/am/messages.ts (~2 lines), apps/desktop/src/i18n/locales/ar/messages.ts (~2 lines), apps/desktop/src/i18n/locales/as/messages.ts (~2 lines), apps/desktop/src/i18n/locales/az/messages.ts (~2 lines), apps/desktop/src/i18n/locales/ba/messages.ts (~2 lines), apps/desktop/src/i18n/locales/be/messages.ts (~2 lines), apps/desktop/src/i18n/locales/bg/messages.ts (~2 lines), apps/desktop/src/i18n/locales/bn/messages.ts (~2 lines), apps/desktop/src/i18n/locales/bo/messages.ts (~2 lines), and 40 more - if these are generated or fixture files, add them to ignored paths to exclude them from future reviews.

Note: This PR contains a large number of files. cubic selects up to 200 of the highest-priority eligible files for this review, so some files may not have been reviewed.

Re-trigger cubic

Comment thread plugins/shortcut/Cargo.toml Outdated
Comment thread crates/shortcut-macos/src/tap.rs
Comment thread crates/dictation-ui-macos/swift-lib/src/TextInsertion.swift
Comment thread apps/desktop/src/chat/components/input/use-dictation.test.tsx Outdated
Comment thread apps/desktop/src/dictation/controller.test.ts
Comment thread plugins/dictation/src/insertion/linux.rs Outdated
Comment thread apps/desktop/src/dictation/lifecycle.tsx
Comment thread plugins/shortcut/src/global.rs Outdated
Comment thread plugins/dictation/Cargo.toml Outdated
Comment thread plugins/dictation/src/commands.rs Outdated
@ComputelessComputer
ComputelessComputer force-pushed the chore/anlg-382-system-dictation branch from 6186b8f to 527b009 Compare September 16, 2026 23:47
@ComputelessComputer
ComputelessComputer added this pull request to stack #7659 September 16, 2026 23:47
@ComputelessComputer
ComputelessComputer force-pushed the chore/anlg-382-system-dictation branch from 88c2742 to 500cf25 Compare September 17, 2026 06:12
Support configurable shortcuts and focused text insertion on macOS, Windows, and Linux. Gate access on Pro and handle recorder ownership, cancellation, and transcript recovery.

ANLG-382.
Preserve key releases and clipboard contents, validate editable targets, retain failed shortcut registrations, and cancel work racing native startup. Strengthen ownership and lifecycle regressions. ANLG-382.
Retain recovery text while shortcuts or recording availability change, and clear it on disable or account changes. ANLG-382.
@ComputelessComputer
ComputelessComputer force-pushed the chore/anlg-382-system-dictation branch from 500cf25 to de332e7 Compare September 17, 2026 07:13
@ComputelessComputer
ComputelessComputer removed this pull request from stack #7659 September 17, 2026 07:14
@ComputelessComputer
ComputelessComputer added this pull request to stack #7672 September 17, 2026 07:14
Fill the dictation settings and recovery messages and regenerate the Spanish catalog.
@ComputelessComputer
ComputelessComputer removed this pull request from stack #7672 September 17, 2026 08:10
@ComputelessComputer
ComputelessComputer merged commit 38efab3 into main Sep 17, 2026
27 checks passed
@ComputelessComputer
ComputelessComputer deleted the chore/anlg-382-system-dictation branch September 17, 2026 08:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant