Voice input: on-device STT default, API-key fallback, keybinding + level animation
- Dominant language
- Rust
- Stars
- 41k
- Forks
- 3.6k
- Avg merge
- 13h 59m
- Merged PRs (30d)
- 299
Description
Thinking blocks expand by mouse-click only (ReasoningAction::Expand is an InteractionTarget; no keyboard path). Voice input should follow the same inline pattern: on-device speech recognition where the OS offers it, with a wired STT API-key fallback (add the key slot), a single keyboard command to start/stop, and a live level/listening animation in the composer while sound is accepted. Keep the collapsed transcript rendering untouched.
Contributor guide
Research direction
Start by reading the ReasoningAction::Expand and InteractionTarget paths, then trace the composer and keyboard-command handling. Identify where OS speech recognition, the STT API-key slot, and listening-level animation belong. Done means start/stop works from one command, on-device recognition is preferred with fallback available, the animation appears while accepting sound, and collapsed transcript rendering is unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- audio-video-rtc, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100