open-typeless
open-typeless is a macOS push-to-talk speech recognition app that streams transcription from Volcano Engine and inserts text at the cursor.
What is open-typeless?
open-typeless is a macOS desktop application built as a showcase for the Trellis framework. It provides a push-to-talk workflow that records speech from your microphone, performs streaming speech-to-text using Volcano Engine’s ASR service, and inserts the recognized text into the currently focused text cursor.
The project is intended for users who want to dictate into any app without switching windows. It also includes a floating, glassmorphism-style overlay that shows the current listening state and the live transcription while you hold the hotkey.
Key Features
- Push-to-Talk hotkey (press-and-hold): Hold the right Option key to start recording; releasing the key ends the recording and triggers automatic insertion.
- Real-time streaming transcription: Uses Volcano Engine ASR and streams partial results so the overlay updates as recognition progresses.
- Floating overlay for status and transcript: Displays a “Listening…” state plus the transcribed text with a frosted-glass appearance.
- Cursor insertion without window switching: Automatically inserts recognized text at the current cursor position so you can continue typing in the app you’re using.
- Does not steal focus: The floating window is designed not to interrupt the user’s workflow while they remain in their current application.
How to Use open-typeless
- Install dependencies: run
pnpm install. - Configure environment variables: copy
.env.exampleto.envand fill in Volcano Engine credentials.VOLCENGINE_APP_IDVOLCENGINE_ACCESS_TOKENVOLCENGINE_RESOURCE_ID(examples in the repo:volc.bigasr.saucfor model 1.0, orvolc.seedasr.saucfor model 2.0, marked as recommended)
- Start the app: run
pnpm start. - Authorize macOS permissions on first launch:
- Microphone permission (for recording)
- Accessibility (Auxiliary function) permission (for global hotkey handling and text insertion) After granting permissions, keep the app running in the background.
- Dictate: In any app with a text field, press and hold right Option, speak, then release. The app inserts the recognized text into the cursor.
Use Cases
- Dictating messages in any editor: Hold right Option to dictate into a chat, email editor, or document field; the recognized text appears at the cursor without manually pasting.
- Form filling with real-time feedback: Use the floating overlay to monitor what the system is recognizing while you speak, then release to commit the text.
- Quick note-taking across apps: Start and stop speech quickly with a press-and-hold key, keeping focus on the active window.
- Troubleshooting hotkey/text insertion issues: If the hotkey doesn’t respond or text doesn’t insert, check that Accessibility permission is enabled for the app and that the cursor is in an input area.
FAQ
-
Why doesn’t the hotkey work? Ensure the app has Accessibility (Auxiliary function) permission in System Settings → Privacy & Security → Accessibility, and that it’s added to the list of permitted apps.
-
Why can’t the app insert text? The target application must support text input, and the cursor should be in a text entry area. Also verify the Accessibility permission is correctly authorized.
-
Is there any startup delay for speech recognition? The first connection to the Volcano Engine service establishes a WebSocket connection and may take 1–2 seconds; subsequent use may be faster.
-
Can I change the hotkey? The repository states the hotkey is currently fixed to the right Option key, and customization would require modifying
src/main/services/keyboard/keyboard.service.ts(specificallytriggerKey).
Alternatives
- Built-in macOS dictation / voice input: Useful when you prefer system-level speech-to-text without setting up credentials for an external ASR provider. Workflow differs because integration and insertion behavior are handled by macOS.
- General speech-to-text tools with manual copy/paste: Adapters that provide transcription but typically require you to paste results into the target app, unlike this project’s cursor insertion approach.
- Text-expansion and hotkey dictation apps: Tools that help insert text via shortcuts; some focus on editing macros or transcription pipelines rather than streaming ASR with a frosted overlay and push-to-talk.
- Other developer-focused speech-to-text integrations: If you’re building your own workflow, you can use ASR APIs and global hotkey/clipboard or accessibility APIs; this differs by requiring more implementation rather than using a ready app.
Alternatives
Speech to Text Converter Online
A free online tool that converts audio and video files into accurate text transcripts in over 45 languages. It supports numerous file formats and requires no downloads or sign-ups.
Dictato
Dictato is an offline voice-to-text dictation app for macOS that transcribes on-device and inserts into any app you type in. No cloud.
Memo AI
AI-powered transcription service that converts audio and video files into text.
Sanota
Sanota turns your voice into clear, beautiful text—capture memories and ideas easily, then start for free.
OpenAI Realtime API
Build low-latency, multimodal voice and realtime audio experiences with OpenAI Realtime API—browser voice agents and realtime transcription.
Pewbeam
Pewbeam listens as you preach, detects Bible verses in real time, and displays them instantly on screen—no typing or clicking for pastors.