Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
OpenLess is a **cross-platform voice-input application** for macOS and Windows that positions itself as the open-source answer to [Wispr Flow](https://wisprflow.ai), [Typeless](https://www.typeless.com/), and Superwhisper. Opened in late April 2026 under the MIT license, it has gathered roughly 2,912 stars and 258 forks, and it is under active daily development — the most recent push landed on 31 July. The interaction is one gesture. Put the cursor in any text field — ChatGPT, Claude, Cursor, Notion, an email draft — hold a global hotkey, speak, release. OpenLess records, transcribes, rewrites the transcript in whichever style is active, and streams the result to the cursor. If insertion is blocked by the target application, the text goes to the clipboard instead, so nothing spoken is lost. ## The Distinguishing Feature Is Not Dictation Plenty of tools produce a word-for-word transcript. OpenLess's headline mode is **structured / AI-prompt mode**, which reshapes loose speech into something you can paste into an LLM. The README's worked example is the clearest statement of intent: a rambling 80-word run-on about a client proposal — filler, no punctuation, two half-finished thoughts — comes back as a numbered brief with the timeline and budget concerns separated and the requested tone preserved. Four output modes ship: **raw**, **light polish**, **structured** (the prompt mode), and **formal**, plus a translation hotkey that converts speech directly into a configured target language. Crucially, the project draws a hard line around what the model may do. The polish prompt explicitly instructs it that the transcript is text to clean, not a question to answer — say *"what features does this app still need"* and you get that sentence back, correctly punctuated, not a feature list. Each dictation is an isolated request with no accumulated conversation context. For a tool that sits between your voice and every text field on your machine, that restraint is a design decision worth more than another feature. ## Architecture The implementation is **Tauri 2** — a Rust backend with a React/TypeScript frontend — and the module layout is unusually disciplined for a project this young. Every backend module depends only on `types.rs`: | Module | Responsibility | |---|---| | `hotkey.rs` | Global hotkey — CGEventTap on macOS, `WH_KEYBOARD_LL` on Windows, rdev on Linux | | `recorder.rs` | Mic capture to 16 kHz mono Int16 PCM with an RMS callback | | `asr/` | Volcengine streaming ASR over WebSocket, plus Whisper HTTP | | `polish.rs` | OpenAI-compatible chat completions | | `insertion.rs` | AX focused-element insert, clipboard + Cmd+V, then copy-only fallback | | `coordinator.rs` | State machine: Idle → Starting → Listening → Processing | The dictation pipeline is a single line: `hotkey edge → Recorder.start + ASR.openSession → [audio frames] → hotkey edge → Recorder.stop + ASR.sendLastFrame → Polish → Insert → History.save`. Platform-native hooks rather than a cross-platform shim is the right call for a global hotkey — it is the one component where an abstraction layer would be felt on every single use. ## Speech and Model Backends The backend list is broader than the "bring your own key" label suggests. **Cloud ASR**: Volcengine streaming, OpenAI Whisper-compatible batch, and Apple Speech on macOS. **Local ASR**: bundled Qwen3-ASR at 0.6B and 1.7B via a vendored `Open-Less/qwen-asr` engine (forked from `antirez/qwen-asr`), plus Windows Foundry Local Whisper variants. **Polish providers**: Ark, DeepSeek, OpenAI, Doubao, Anthropic-compatible endpoints, or any OpenAI-compatible URL. Two recent additions target perceived speed and output fit. **Streaming insertion** writes polished text to the cursor character by character instead of waiting for the full result, falling back to a one-shot paste where an app cannot accept streamed keystrokes. The **Style Pack Marketplace** replaces the single fixed polish voice with named, hotkey-switchable style packs carrying their own system prompts — commit messages, cold emails, support replies — installable from a moderated community catalog or publishable with a GitHub identity. The dictionary handles the failure mode every dictation tool shares: proper nouns. Entries are pushed to Volcengine ASR as `context.hotwords` so they are recognised during transcription, *and* injected as semantic hints during polish, where the model decides per sentence whether to substitute — "Cloud" becomes `Claude` when context supports it and stays as-is when it genuinely means cloud computing. The app also auto-learns correction candidates from history. Credentials live in the OS vault (`com.openless.app` in macOS Keychain, Windows Credential Manager, or the Linux keyring), with a legacy plaintext JSON file read only as a migration source and deleted after a successful vault write. ## Rough Edges The defaults are China-centric. Volcengine streaming ASR and Ark polish are the documented happy path, and both require accounts on Chinese cloud platforms — everything is swappable for Whisper and OpenAI-compatible endpoints, but the setup instructions optimise for the other audience. macOS builds are ad-hoc signed rather than Apple-notarized, so first-run requires `xattr -cr /Applications/OpenLess.app` to clear a Gatekeeper "damaged" warning, which is exactly the kind of instruction that trains bad security habits. Documentation drift is visible too: the README's status section is headed v1.3.6 while the latest release tag is v1.3.14, and Android APKs ship in releases despite the project describing itself as macOS and Windows. There are 40 open issues, and Linux has hotkey code but no distributed build. ## Verdict OpenLess is a genuinely credible open replacement for a category that has been subscription-only, and its structured prompt mode is a better fit for the actual 2026 workload — dictating prompts to an LLM — than plain transcription. The Rust/Tauri foundation and the module discipline suggest it will hold up as it grows. Users outside China should budget an hour to swap in Whisper and an OpenAI-compatible polish endpoint, and should read the Gatekeeper workaround before installing rather than after.
ggml-org
Pure C/C++ port of OpenAI Whisper for edge deployment
CJ Pais
A free, open-source, cross-platform speech-to-text app that transcribes your voice entirely offline — press a shortcut, speak, and have the text pasted into any app.