by jarrodwatts
Speech-to-text input for Claude Code with live streaming dictation
# Add to your Claude Code skills
git clone https://github.com/jarrodwatts/claude-sttSpeech-to-text input for Claude Code. Hold a hotkey, speak, and your words appear in the input field — all processed locally.

Inside a Claude Code instance, run the following commands:
Step 1: Add the marketplace
/plugin marketplace add jarrodwatts/claude-stt
Step 2: Install the plugin
/plugin install claude-stt
Step 3: Run setup
/claude-stt:setup
Done! Press Ctrl+Shift+Space to start recording, press again to stop and transcribe.
Note: Setup installs dependencies (uv if available, otherwise a local
.venv), downloads the Moonshine model (~200MB), and checks microphone permissions.
Claude STT gives you voice input directly into Claude Code. No typing required — just speak naturally.
| What You Get | Why It Matters | |--------------|----------------| | Local processing | All audio processed on-device using Moonshine STT | | Low latency | ~400ms transcription time | | Push-to-talk | Hold hotkey to record, release to transcribe | | Cross-platform | macOS, Linux, Windows | | Privacy first | No audio or text sent to external services |
No comments yet. Be the first to share your thoughts!
Press Ctrl+Shift+Space → start recording
↓
Audio captured from microphone
↓
Press Ctrl+Shift+Space → stop recording
↓
Moonshine STT processes locally (~400ms)
↓
Text inserted into Claude Code input
Key details:
Customize your settings anytime:
/claude-stt:config
| Option | Values | Default | Description |
|--------|--------|---------|-------------|
| hotkey | Key combo | ctrl+shift+space | Trigger recording |
| mode | toggle, push-to-talk | toggle | Press to toggle vs hold to record |
| engine | moonshine, whisper | moonshine | STT engine |
| moonshine_model | moonshine/tiny, moonshine/base, other Moonshine model IDs | moonshine/base | Model size |
| output_mode | auto, injection, clipboard | auto | How text is inserted |
| sound_effects | true, false | true | Play audio feedback |
| max_recording_seconds | 1-600 | 300 | Maximum recording duration |
Settings stored in ~/.claude/plugins/claude-stt/config.toml.
| Platform | Additional Requirements | |----------|------------------------| | macOS | Accessibility permissions (System Settings > Privacy & Security) | | **Linux...