Releases: xfreeze2/quill
Release list
Quill 0.8.1
Fixes update checks failing with a bare HTTP 403 on shared networks.
Reported by @pedroknigge — the update check was hitting GitHub's unauthenticated REST API, capped at 60 requests/hour per IP, shared with anything else on that network talking to api.github.com. Easy to hit on a home or office NAT without Quill being the only thing responsible.
The check now uses the ordinary /releases/latest web redirect instead, which carries no rate-limit headers at all. The REST API is now only a fallback, and if it's ever the one that fails, a real rate limit shows as "GitHub rate limit reached — try again in Nm" instead of a bare status code.
Reproduced for real before fixing: burned through the actual quota from this machine's IP until the API returned 403, then confirmed the update check still succeeds under that exact condition.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.8.0
Quill now tells you when a newer version exists. Closes #2.
Checks once a day, plus Check for updates… in the menu for on demand. A one-time notice appears the first time a new version is seen, and never interrupts an active recording.
This is a notice, not an installer — Quill doesn't download or run anything on your behalf. It's self-signed and not notarised, so having it silently replace its own running binary is the same behaviour malware uses to persist; that's not a shortcut worth taking. The menu points you at the release, and updating is still the one-line install command.
Thanks @pedroknigge for the well-scoped writeup.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.7.1
Privacy fixes.
- Selected text is no longer written to the log. Replacing a highlighted passage used to record the first forty characters of it in
~/Library/Logs/Quill.log, so dictating over a password or private note left it readable on disk. Only a character count is kept now. - Recent transcripts can be cleared or switched off from Recent in the menu. They're stored in preferences as plain text, so if you dictate anything private, turn them off — that also wipes what's already stored.
- The log file is capped instead of growing indefinitely.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.7.0
You no longer need a Grok subscription.
Choose Use my own xAI API key… from the menu and paste a key from console.x.ai. Usage is billed to your own account. If you have both a key and a Grok session, the key is used.
The key is checked against xAI before it's saved, so a typo shows up immediately rather than mid-dictation.
How it's handled — it's a billable credential, so it's treated as one:
- Stored in your Mac's Keychain, never in preferences (a plist any process running as you could read)
WhenUnlockedThisDeviceOnly— unreadable while your Mac is locked, never synced to other hardware or restored from a backup- Entered in a secure field, so it's never drawn on screen
- Never written to the log — only whether an operation succeeded
- Only ever sent to
api.x.ai, over TLS - Removable any time from the same menu item
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.6.2
Dictated text no longer runs into what's already there.
A space is now added on either side when the words would otherwise collide — and left out where it would be wrong: after an opening bracket or an @, before a comma or full stop, and wherever there's already a space or a line break.
Two causes. The spacing decision was made inside the code that moves the cursor to the end of the field, so any app that won't let the cursor be moved — terminals among them — skipped it entirely. And only the leading side was checked, so text dropped at the cursor still collided with whatever followed.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.6.1
Fixes auto-finish cutting you off mid-sentence.
Auto-finish was deciding you'd stopped talking by watching the transcript. That was the wrong signal — transcript updates lag your speech and gap between sentences, so once the server finalised one sentence it could look like silence for several seconds while you were still talking, and the dictation ended under you.
It now listens to the microphone itself, against a noise floor that adapts to your room. New words count too, so either signal keeps the session open.
The default window is now 5 seconds rather than 3, which sat inside the range of an ordinary thinking pause. Options are 2 / 3 / 5 / 8 seconds, or off.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.6.0
Optional grammar cleanup, powered by Grok.
Turn on Clean up grammar in the menu and each dictation gets tidied before it lands — capitalisation, punctuation, apostrophes.
you said: so i was thinking maybe we could ship this on friday
you get: So I was thinking maybe we could ship this on Friday.
Uses the fastest non-reasoning model, so there's no thinking delay — about 0.9 seconds, with the connection opened while you're still talking.
Off by default, and it will not rewrite you. The result is checked before use: it must keep at least 70% of your original words, or your raw text goes in untouched. Same for any network or timeout failure. You can't lose your words to it.
Quill 0.5.0
Just stop talking, and it finishes.
Pause for three seconds and Quill ends the dictation and pastes on its own. Adjustable to 1.5 or 5 seconds, or switched off entirely.
Dictate over a selection. Highlight some text, tap the trigger, and what you say replaces it instead of being added after it. The highlight is captured the moment you start, so it survives clicking elsewhere.
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bashQuill 0.4.2
Speak anywhere on your Mac. The text lands where you point.
Tap Control, talk, then click into whatever window you want the words in. They appear there — at the end of what's already written, without touching your clipboard.
Runs on your existing Grok subscription. No API key.
- Say "that's it" or "that's all" to finish by voice
- Say "open Grok" mid-sentence to open a Grok Build session without stopping
- Press Escape to throw a dictation away
- 26 languages plus auto-detect
- Universal (Apple Silicon + Intel), macOS 12+
curl -fsSL https://raw.githubusercontent.com/xfreeze2/quill/main/install.sh | bash