MCPcopy Index your code
hub / github.com/ElwinLiu/handless

github.com/ElwinLiu/handless @v0.2.10

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.2.10 ↗ · + Follow
1,274 symbols 2,980 edges 231 files 219 documented · 17%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Handless logo

Handless

Free, open-source macOS speech-to-text.

Press a shortcut, speak, get text in any app. Run locally for privacy or use cloud APIs.

Website Build Lint License: MIT

简体中文 · 繁體中文 · 日本語

Features

  • Local transcription -- download models in Settings, runs fully on-device
  • Cloud STT via OpenAI or Soniox
  • Voice Activity Detection (local models only)
  • LLM post-processing to clean up or reformat transcriptions
  • macOS (Intel & Apple Silicon)
  • 17 languages

Install

Download for macOS (Intel & Apple Silicon)

Also available at handless.elwin.cc. Build from source: see BUILD.md.

CLI

Remote control (talks to a running instance):

handless --toggle-transcription    # Toggle recording
handless --toggle-post-process     # Toggle recording + post-processing
handless --cancel                  # Cancel current operation

Startup flags:

handless --start-hidden            # No main window
handless --no-tray                 # No tray icon
handless --debug                   # Verbose logging
handless --help                    # All flags

Combine freely: handless --start-hidden --no-tray

macOS: invoke the binary directly: /Applications/Handless.app/Contents/MacOS/Handless --toggle-transcription

Troubleshooting

Cmd+Shift+D opens the debug panel.

Contributing

See CONTRIBUTING.md. For translations: CONTRIBUTING_TRANSLATIONS.md.

License

MIT

Acknowledgments

Forked from Handy v0.7.8.

Whisper | whisper.cpp | NeMo Parakeet | Moonshine | SenseVoice | Silero VAD | Tauri | Handy

Extension points exported contracts — how you extend this code

ShortcutAction (Interface)
Shortcut Action Trait [3 implementers]
src-tauri/src/actions.rs
SimpleTooltipProps (Interface)
* Simple tooltip wrapper for common use cases. * Wraps children in a Radix Tooltip with the given content.
src/components/ui/Tooltip.tsx
SettingsStore (Interface)
(no doc)
src/stores/settingsStore.ts
ProviderStatusContext (Interface)
(no doc)
src/lib/utils/providerStatus.ts
PostProcessStats (Interface)
(no doc)
src/hooks/usePostProcessStats.ts
ValidationResult (Interface)
(no doc)
scripts/check-translations.ts
VoiceActivityDetector (Interface)
(no doc) [2 implementers]
src-tauri/src/audio_toolkit/vad/mod.rs
IconProps (Interface)
(no doc)
src/components/Sidebar.tsx

Core symbols most depended-on inside this repo

get_settings
called by 123
src-tauri/src/settings.rs
as_str
called by 121
src-tauri/src/settings.rs
push
called by 86
src-tauri/src/audio_toolkit/audio/resampler.rs
write_settings
called by 65
src-tauri/src/settings.rs
transcribe
called by 46
src-tauri/src/cloud_stt/mod.rs
useSettings
called by 45
src/hooks/useSettings.ts
cn
called by 38
src/lib/utils.ts
check_response
called by 23
src-tauri/src/cloud_stt/mod.rs

Shape

Function 916
Method 144
Interface 99
Class 82
Enum 33

Languages

Rust64%
TypeScript36%

Modules by API surface

src/bindings.ts118 symbols
src-tauri/src/settings.rs107 symbols
src-tauri/src/shortcut/mod.rs52 symbols
src-tauri/src/managers/history.rs36 symbols
src-tauri/src/audio_toolkit/text.rs29 symbols
src-tauri/src/clipboard.rs28 symbols
src-tauri/tests/cloud_stt.rs22 symbols
src-tauri/src/shortcut/handy_keys.rs22 symbols
src-tauri/src/overlay.rs20 symbols
src-tauri/src/managers/model.rs20 symbols
src-tauri/src/commands/mod.rs20 symbols
src-tauri/src/audio_feedback.rs20 symbols

For agents

$ claude mcp add handless \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page