claude-stt  by jarrodwatts

Speech-to-text for local code editor dictation

Created 1 month ago
350 stars

Top 79.8% on SourcePulse

GitHubView on GitHub
Project Summary

Speech-to-text input for Claude Code, jarrodwatts/claude-stt provides users with a local, privacy-first solution for dictating text directly into the Claude Code environment. It targets Claude Code users who want to reduce typing and improve workflow efficiency through voice commands, offering near real-time transcription with minimal latency and no data sent to external services.

How It Works

The plugin leverages Moonshine ONNX for fast, on-device speech-to-text inference. Users activate recording via a configurable hotkey (defaulting to Ctrl+Shift+Space). Audio is captured, processed locally in memory, and then discarded after transcription. The transcribed text is either injected directly into the Claude Code input field or falls back to the clipboard, ensuring a seamless and private user experience.

Quick Start & Requirements

  • Installation: Inside Claude Code, run /plugin marketplace add jarrodwatts/claude-stt, followed by /plugin install claude-stt, and finally /claude-stt:setup.
  • Prerequisites: Python 3.10-3.13, approximately 200MB disk space for the STT model, and microphone access.
    • macOS: Requires Accessibility permissions.
    • Linux: Requires xdotool and recommends X11 over Wayland due to limitations.
    • Windows: Requires pywin32.
  • Setup Time: The setup process involves dependency installation, model download (~200MB), and microphone checks.

Highlighted Details

  • Local Processing: All audio and transcription occur on-device using Moonshine ONNX.
  • Low Latency: Transcription time is approximately 400ms.
  • Privacy: Audio is processed in memory and immediately discarded; no data is sent to external services.
  • Configurability: Options include hotkey, recording mode (toggle/push-to-talk), STT engine, model size, output mode, sound effects, and maximum recording duration.

Maintenance & Community

No specific details regarding maintainers, community channels (e.g., Discord, Slack), or roadmap are provided in the README.

Licensing & Compatibility

The project is licensed under the MIT License, generally permitting commercial use and integration.

Limitations & Caveats

Wayland on Linux may present limitations for window management. Keyboard injection functionality relies on specific platform permissions (Accessibility on macOS, xdotool on Linux) and may conflict with other applications. The plugin tracks the original Claude Code window; ensuring it remains focused during recording is necessary for correct text insertion.

Health Check
Last Commit

3 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
15
Issues (30d)
7
Star History
87 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.