OpenLess: An Open-Source AI Voice Input Tool That Turns Speech into Polished Text
One-line positioning
OpenLess is an open-source desktop voice input tool: hold a hotkey, speak, release it, and AI-polished text appears at your current cursor.
Basic information
| Item | Details |
|---|---|
| Project | OpenLess |
| GitHub | https://github.com/appergb/openless |
| Website | https://openless.top |
| Positioning | Open-source voice input plus AI text polishing |
| Platforms | macOS 12+, Windows 10+ |
| Stack | Tauri 2, Rust, React, TypeScript |
| License | MIT |
| Current version | v1.2.21-tauri |
| GitHub popularity | 900+ stars |
What problem does it solve?
Many voice input tools only produce a literal transcript. The result often still needs manual cleanup: removing filler words, fixing punctuation, and restructuring the text.
OpenLess focuses on a more practical goal: turning spoken language directly into usable written text.
The workflow is straightforward. Put your cursor in ChatGPT, Claude, Cursor, Notion, an email draft, WeChat, Slack, or almost any other text field. Press a global hotkey and speak. OpenLess records your voice, transcribes it, polishes the text with AI, and inserts the result at the cursor. If direct insertion is blocked, it falls back to copying the output to the clipboard so your dictation is not lost.
Its most distinctive mode is the AI prompt mode. You can speak loosely, and OpenLess turns your words into a structured prompt with clearer context and constraints, ready to send to ChatGPT, Claude, or Cursor.
For example, you might say:
I want ChatGPT to write a SQL query from the orders table, get last month’s orders, group by customer, sort by amount descending, and return the top ten.
OpenLess can turn that into:
Please write a SQL query that:
- Pulls orders from last month from the `orders` table.
- Groups by customer.
- Sorts by total amount, descending.
- Returns the top 10 rows only.In this workflow, OpenLess is not just a dictation tool. It turns spoken thoughts into text that is easier to send, ask, or submit.
Core features
1. Global-hotkey voice input
OpenLess lets you trigger recording with a global hotkey. You can place your cursor in any input field and start speaking. The project currently supports both push-to-talk and toggle recording modes, and Esc can cancel the current session.
2. Multiple output modes
OpenLess does not stop at raw transcription. It provides several output modes:
- Raw: output the transcript directly.
- Light polish: fix filler words, punctuation, and obvious wording issues while preserving meaning.
- Structured: turn loose speech into a structured AI prompt.
- Formal: rewrite spoken text into a more formal written style.
The structured mode is the key differentiator, especially for people who frequently write AI prompts.
3. Insert text at the current cursor
OpenLess is not trying to become another note-taking app. Its purpose is to reduce input friction. The polished text is inserted directly into the app you are already using, such as a browser, chat app, editor, or document tool.
If an app blocks direct insertion, OpenLess falls back to the clipboard, and you can paste the result manually.
4. Dictionary and hotwords
The project includes a dictionary feature for product names, people names, and technical terms. Enabled entries are used as hotwords during speech recognition and as semantic hints during polishing.
This is useful if you often dictate English product names, technical terms, or internal team vocabulary.
5. History and settings
OpenLess provides a main window for overview, history, dictionary, style, and settings. You can review the original transcript and polished output for previous recordings, and you can adjust language, hotkeys, and model credentials.
6. Local-first and bring-your-own credentials
Many similar tools are closed-source subscription products where your data, dictionary, and model calls stay inside the vendor’s account system.
OpenLess takes a different approach: the app is open source, data is kept primarily on your own machine, and you configure the speech recognition and text polishing services yourself. It currently supports Volcengine ASR, OpenAI Whisper-compatible batch ASR, and Ark / DeepSeek / OpenAI-compatible Chat Completions.
Who is it for?
OpenLess is a good fit for:
- People who frequently write prompts for ChatGPT, Claude, Cursor, or Gemini.
- Users who write emails, specs, and long messages but do not want to type everything manually.
- Developers who want to dictate code comments, commit messages, or PR descriptions.
- Users who prefer an open-source option over fully closed subscription voice input tools.
- Heavy macOS or Windows desktop users.
If your daily work involves turning thoughts into written text, OpenLess can fit naturally into that workflow.
Quick start
End users can download installers from GitHub Releases:
- macOS:
OpenLess_<version>_aarch64.dmg - Windows:
OpenLess_<version>_x64-setup.exe
On first launch, you need to grant the required permissions.
For macOS:
- Grant microphone access.
- Grant accessibility access.
- Quit and reopen OpenLess.
- Fill in ASR and LLM credentials in Settings.
For Windows:
- Grant microphone access.
- Check that the global hotkey listener is active in Settings.
- Fill in ASR and LLM credentials.
Developers can run it from source with:
git submodule update --init --recursive
cd openless-all/app
npm ci
npm run tauri devThe active app lives in openless-all/app/. The desktop client is built with Tauri 2, a Rust backend, and a React / TypeScript frontend.
Conclusion
OpenLess can be understood as an open-source AI voice input assistant.
It does not answer questions, execute tasks, or try to become another AI client. It focuses on one job: turning what you say into clearer text that is ready to send, ask, or paste into the current input field.
For people who frequently write prompts, long messages, emails, specs, or code-related descriptions, this is a practical direction. Open source, bring-your-own credentials, local-first storage, and AI-prompt-oriented restructuring are the main reasons OpenLess is worth watching.
