Voice mode: configurable recording duration and silence timeout
Problem
The /voice command has a fixed recording duration/silence timeout that cuts off users who speak at a slower pace. There's currently no way to configure how long the recording runs before it stops.
This affects users who:
- Speak slowly or deliberately
- Pause to think mid-sentence before continuing
- Have speech patterns with natural gaps (e.g., non-native speakers, people with speech differences)
- Want to dictate longer, more detailed prompts
Proposed Solution
Add configurable settings for voice recording, for example:
VOICE_MAX_DURATION_MS— maximum recording length (default could stay as-is, but allow extending to e.g. 60s or 120s)VOICE_SILENCE_TIMEOUT_MS— how long silence is tolerated before auto-stopping (e.g. default 2s, configurable to 3-5s for slower speakers)
These could live in settings.json or as environment variables, consistent with how other timeouts (BASH_DEFAULT_TIMEOUT_MS, etc.) are configured.
Use Case
Users who speak slowly, pause to think mid-sentence, or have speech patterns with natural gaps get cut off before finishing their thought. This is especially relevant for accessibility — not everyone speaks at the same pace.
Related Issues
This is part of a broader cluster of voice mode UX requests:
- #30761 — Toggle/continuous listening mode (solve the "holding Space is tiring" problem)
- #33025 — Press-to-start/stop behavior for longer dictation
- #33393 — Rebindable push-to-talk key
- #33621 — Voice response output
The silence timeout config specifically would complement all of these — whether push-to-talk, toggle, or continuous mode, users still need configurable pause tolerance.
Alternatives Considered
- Speaking in shorter chunks (hold-release-hold) — works but breaks natural speech flow and thought process
- No workaround exists for the silence timeout specifically
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗