Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Cross-platform local voice typing and meeting transcription for macOS and Linux.
| Date | Stars |
|---|---|
| 2026-07-24 | 274 |
| 2026-07-25 | 273 |
| 2026-07-28 | 273 |
| 2026-07-30 | 273 |
| 2026-08-06 | 273 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
15.0
growth rate 0.00%/day
# HoldSpeak
<p align="center">
<img src="https://raw.githubusercontent.com/karolswdev/HoldSpeak/main/docs/assets/pixellab/holdspeak-mark.png" alt="HoldSpeak logo, a held key with rising soundwaves" width="120">
</p>
<p align="center"><strong>One local copilot, two modes: dictation that types anywhere and learns how you work, and meetings that end with decisions, actions, and follow-ups instead of a recording. Nothing leaves your machine.</strong></p>
[](https://github.com/karolswdev/HoldSpeak/blob/main/LICENSE)
[](https://github.com/karolswdev/HoldSpeak/actions/workflows/test.yml)
[](https://www.python.org/downloads/)
[](#platform-support)
Hold a key and speak, and your words land in whatever app you are in,
optionally rewritten by your own model with your project's context. Record or
import a meeting, and it comes back as reviewable decisions, action items, and
typed artifacts, with a follow-up panel that shows what is still open. One
local runtime on macOS and Linux does both, for the two places a developer's
voice does work: the keyboard and the meeting. Whisper runs locally; the LLM is
one you run or point at. No cloud, no account, no telemetry.
> **Status: 0.x, early but real.** HoldSpeak is on PyPI (`pip install holdspeak`).
> The features are mature; APIs, config, and defaults can still change while it is
> pre-1.0. Upgrades are safe by default (your data is backed up first). Feedback
> and contributions welcome.
## The two modes
| Dictate | Meet |
| --- | --- |
|  |  |
| Hold the hotkey, speak, release: the text goes into the active app. Turn on the dictation pipeline and rough speech is routed by intent, enriched with your project's context, and rewritten for its target (Codex, Claude, the terminal, the browser, your editor). Every run lands in the dictation journal; one tap on a wrong result teaches the correction memory. Voice commands map a spoken keyword to a real action (open a URL, launch an app, run a command). Say the wake phrase and it listens hands-free, with the result previewed, never typed, until you confirm; an optional preview mode does the same for every dictation (the card shows the text first, Type it commits, Discard drops it). The spoken language setting pins any of Whisper's 99 languages, and the spoken-symbol dictionary types your own vocabulary ("double colon" becomes `::`). Activity pre-briefing offers what you touched recently as dictation context, source-cited. | Capture mic and system audio live with speaker labels, or import a recording or a transcript file you already have (vtt and srt keep their real timestamps and speaker names). 14 built-in plugins call your LLM to pull typed artifacts out of the transcript: decisions, action items, ADRs, risk registers, incident timelines. Meeting aftercare then shows what is open, decided, and changed since last time; an accepted action can become a filed issue, and the digest or follow-up draft can go to your team through Send to Slack, all on a propose, approve, execute flow that never acts without you. The archive is searchable and filterable by date, speaker, tag, and open actions. |
This is what they look like in the product, not in pixel art. A saved meeting
comes back as typed, reviewable artifacts:
<p align="center">
<img src="https://raw.githubusercontent.com/karolswdev/HoldSpeak/main/docExcerpt of 26,383 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:b77e37d4b05fbffc, topic:speech-to-text, desc:transcription
matched fp:b77e37d4b05fbffc, topic:privacy