Open-source BYOK voice dictation — speak anywhere, transcribe fast, type it in.
Project description
sybl
Open-source, bring-your-own-key voice dictation. Put your cursor anywhere, hold a global shortcut, speak, and sybl transcribes it fast — then types it in for you.
The open-source alternative to closed dictation tools like Wispr Flow. No subscription, no sybl-hosted backend: your audio goes straight to the STT provider you choose.
Features
- Global push-to-talk — hold a system-wide hotkey, speak, release to finish
- BYOK STT — Groq Whisper (batch) and Deepgram (streaming) today; pluggable providers
- Types where you were focused — clipboard-paste injection on Windows
- Daemon + TUI — background service with a Textual dashboard for logs, history, and settings
- Listening pill — small overlay near your cursor while dictating (Windows)
- Custom vocabulary — STT hints for names and jargon via
sybl config vocab - Voice commands —
new line,period,commain final transcripts - Local-first — no telemetry; API keys in the OS keyring
Install
pipx install sybl
Or with uv:
uv tool install sybl
Requires Python 3.12+. Windows is the primary supported platform for the full core loop (hotkeys, injection, indicator).
Quick start
sybl doctor
sybl config init
sybl config set-key groq
sybl start
In another terminal:
sybl tui
Hold Ctrl+Alt+Space (default), speak, release — the transcript is pasted into whatever app had focus. Press Esc while holding to cancel.
See Getting started for the full walkthrough.
Documentation
| Doc | Description |
|---|---|
| Getting started | Install, first run, daemon + TUI |
| Providers | Groq & Deepgram BYOK setup |
| Configuration | config.toml reference |
| Permissions | Microphone and injection notes |
| Development | Local dev, phases, integration tests |
| Roadmap | What's built and what's next |
| Daemon architecture | IPC and process model |
Contributing
Contributions welcome! See CONTRIBUTING.md and AGENTS.md for architecture and conventions.
License
MIT © Rikhil Nellimarla
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sybl-0.1.0.tar.gz.
File metadata
- Download URL: sybl-0.1.0.tar.gz
- Upload date:
- Size: 136.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2017f7590b09f33e0aee4e8bf0559edb481a9a294351cc48110eb4b5fe1f9cc
|
|
| MD5 |
315966253b9684901a922541e653197f
|
|
| BLAKE2b-256 |
091389553db8444cf95594b8277f153082eff85e764a0ea78ac38c2bc4c32df9
|
Provenance
The following attestation bundles were made for sybl-0.1.0.tar.gz:
Publisher:
release.yml on Rikhil-Nell/sybl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sybl-0.1.0.tar.gz -
Subject digest:
c2017f7590b09f33e0aee4e8bf0559edb481a9a294351cc48110eb4b5fe1f9cc - Sigstore transparency entry: 1994382964
- Sigstore integration time:
-
Permalink:
Rikhil-Nell/sybl@43742a7d052b1e8024c58f23d1f226febc4636b2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Rikhil-Nell
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43742a7d052b1e8024c58f23d1f226febc4636b2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file sybl-0.1.0-py3-none-any.whl.
File metadata
- Download URL: sybl-0.1.0-py3-none-any.whl
- Upload date:
- Size: 79.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8377724332b5f8d9d333c886fe6b10109a243143551f5b4e360adbbab328292
|
|
| MD5 |
9893ec082c916ea6da6d659ebaea95d6
|
|
| BLAKE2b-256 |
d0ed4ac3ae5c45cb2222cf14c527bbddf48b14244ebb708455f6c7ea9a280fa7
|
Provenance
The following attestation bundles were made for sybl-0.1.0-py3-none-any.whl:
Publisher:
release.yml on Rikhil-Nell/sybl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sybl-0.1.0-py3-none-any.whl -
Subject digest:
c8377724332b5f8d9d333c886fe6b10109a243143551f5b4e360adbbab328292 - Sigstore transparency entry: 1994383131
- Sigstore integration time:
-
Permalink:
Rikhil-Nell/sybl@43742a7d052b1e8024c58f23d1f226febc4636b2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Rikhil-Nell
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43742a7d052b1e8024c58f23d1f226febc4636b2 -
Trigger Event:
release
-
Statement type: