Voice Input
MoltShell includes a speech-to-text feature that lets you dictate terminal commands using your microphone. This is especially useful on mobile devices where typing long commands is cumbersome.
How to use it
- Click the microphone icon in the pane header (desktop) or in the mobile keyboard bar.
- Speak your command. A live transcript appears as you talk.
- When you stop speaking, the transcript becomes editable. You can correct any misheard words.
- Press Enter or click the Send button to execute the command.
- Press Escape or click Cancel to discard the transcript.
To cancel a recording in progress, right-click the microphone button (desktop) or wait for the recording to complete and then dismiss it.
How it works
Voice input uses Deepgram for speech-to-text, proxied through the Cloudflare Worker backend:
- Your browser captures audio using the Web Audio API with an AudioWorklet processor
- Raw PCM audio (linear16) is streamed over a WebSocket to the Cloudflare Worker
- The Worker forwards the audio stream to Deepgram's real-time STT API
- Transcription results stream back and appear live in the input bar
The audio is captured at 16kHz (or whatever sample rate your browser supports) and sent as raw PCM data for consistent results across browsers.
Desktop vs. mobile
On desktop, the microphone button appears in each pane's header bar, next to the copy and split buttons. After recording, the transcript appears in an editable bar below the pane header. Press Enter to send the command to the terminal.
On mobile, the microphone button is part of the keyboard helper bar at the bottom of the screen. The transcript appears in the command input field. You can edit it and tap Send.
Browser permissions
The first time you use voice input, your browser will ask for microphone permission. You must allow this for the feature to work. If you accidentally denied permission, you can reset it in your browser's site settings.
Supported browsers
Voice input works in modern browsers that support the AudioWorklet API:
- Chrome 66+
- Firefox 76+
- Safari 14.1+
- Edge 79+