v0.3 public alpha · open source macOS dictation

Speak.
It types.

Hold a shortcut. Say anything. Release. Text appears in whatever app you're using — Discord, Slack, email, code editor, terminal. Built for people who want to inspect the trick.

macOS 14+ ChatGPT sign-in Menu bar app
Slack — #api-platform
R
romain wait did we ever rate limit the realtime websocket for free ChatGPT users? 11:02 AM
T
tibo nope, 15M tokens/min across the board. was too busy shipping Codex to notice 11:03 AM
Transcribing via ChatGPT sign-in... can you file the launch issue with the exact macOS version, install path, and whether paste failed in Slack or everywhere?
Real-time transcription Works across apps Screen-aware mode Learns vocabulary Transparent alpha

How it works

Three seconds from thought to text.

1

Hold your shortcut

Choose Ctrl+Space, Ctrl+Option, or Cmd+Option. A floating pill appears and your mic is live.

2

Speak naturally

Talk like you're texting a friend. ChatFlow handles punctuation, formatting, and cleanup.

3

Release → text appears

Your words land right where your cursor is. In any app. No switching windows.

Pro tip

Add Shift for Enhanced mode

Hold Shift with your chosen shortcut to send screen context for technical terms, project names, and visible labels. Use normal mode when the screen is sensitive.

Builder notes

The useful bits are not hidden.

Auth

ChatGPT OAuth PKCE

ChatFlow opens a browser sign-in, receives the callback on localhost, exchanges the code for tokens, and keeps them in a local owner-only file.

Realtime

PCM16 over WebSocket

Core Audio captures microphone input, converts it to 24 kHz mono PCM16, and streams chunks to OpenAI's Realtime API.

Injection

Paste first, fallbacks after

The transcript lands in the focused app through clipboard paste and accessibility checks, because custom macOS text fields vary wildly.

hotkey -> Core Audio -> PCM16 chunks -> Realtime WebSocket -> transcript -> focused app

Features

Small app, sharp edges documented.

Smart formatting

Adapts to the app you're in.

Discord? Casual, light punctuation. Email? Proper sentences. Code editor? Preserves technical terms. Terminal? Raw output. ChatFlow detects the active app and adjusts.

Vocabulary

Learns your words.

Edit a transcription and ChatFlow remembers. Next time you say "ChatFlow" instead of "chat flow" — it just knows.

Zero setup

Sign in with ChatGPT.

No API key flow for the alpha. Sign in with ChatGPT, then ChatFlow streams audio over OpenAI's Realtime API path for transcription.

Privacy

Audio streams directly to OpenAI. Never stored.

Your voice goes to OpenAI's Realtime API and back as text. ChatFlow does not intentionally save audio. Enhanced mode screenshots are processed in memory and sent for context, so normal mode is better for sensitive screens.

See it in action

Same voice, different apps. ChatFlow adapts.

Discord
rec ngl that pr was a mess lol but we got it working

Discord / Slack

Casual tone, minimal punctuation, abbreviations preserved. Like texting.

VS Code — auth.rs
rec // TODO: refactor the OAuth callback handler to use PKCE instead of implicit flow

Code editor

Technical terms preserved. Syntax keywords kept literal. Perfect for comments and docs.

Gmail — Compose
rec Hi team, I wanted to share a quick update on our progress this quarter. We've shipped three major features and seen a 40% improvement in latency.

Email / Docs

Proper sentences, formal grammar, clean paragraphs. Ready to send.

Terminal — zsh
rec git commit -m "fix: update OAuth client_id to use PKCE flow"

Terminal

Raw, technical output. Commands, paths, and flags kept as-is.

Get it

Public alpha, signed before it ships.

Download v0.3.0 DMG

Developer ID signed app inside the DMG. Not notarized for this alpha, so Gatekeeper may still ask for one extra confirmation.

Download ChatFlow.dmg

Build from source

git clone https://github.com/chokshiroshan/chatflow.git cd chatflow && ./build.sh dmg ./build.sh release-dmg # public artifact

First launch walks through ChatGPT sign-in, Microphone, and Accessibility. File rough edges in GitHub Issues with your macOS version and target app.

Stop typing.
Start talking.