quill logo

quill

Ultra-minimalist macOS recording + transcription.

SwiftSwiftMIT 1.7k 112Health 90
GitHub

What is it?

What it is

A minimal, fully local macOS meeting recorder and transcriber that captures microphone and system audio as separate tracks and generates speaker-tagged transcripts on-device.

Why it exists

To provide a privacy-focused, local-only recording solution that avoids the need for virtual audio devices or kernel extensions while ensuring high-quality transcription through separate audio tracks.

Who should use it

macOS users who need a privacy-focused, local-only meeting recorder and transcriber that captures both microphone and system audio without virtual audio drivers.

Who should avoid it

Users on non-macOS operating systems, users requiring multi-language support (currently English-only for the default engine), and users who cannot install command-line tools via Swift.

How it works

A quick walkthrough in plain English

How quill works

Step 1 of 3

You interact with it

Open quill, send a request, or connect it to your stack.

Features

Menu-bar recording with one-click start/stop
Separate mic and system audio tracks (dual-track recording)
On-device transcription using Parakeet TDT 0.6B v2 (English)
Speaker-tagged transcript merging both tracks
Automatic resumption of pending transcriptions on launch
Configurable output directory and post-stop hooks
Single Swift binary with no app bundle
Core Audio process tap for system audio capture (no virtual device or kernel extension)
CAF file format for resilient recording (no finalization needed)

Advantages

  • Fully local processing; no data leaves the machine
  • Privacy-focused with explicit TCC permissions
  • Low overhead: single binary, minimal dependencies
  • Works offline after model download
  • Efficient transcription (~20 sec per hour on Apple Silicon)
  • Simple installation via Swift build or manual copy
  • Menu-bar UI with visual recording indicator
  • Supports custom recordings directory and hook integration
  • Resilient to crashes: recordings remain readable if process dies mid-meeting

Disadvantages

  • Requires macOS 15+ (Core Audio process tap availability)
  • Currently English-only transcription (Parakeet v2); other languages pending Whisper fallback
  • Records all system audio (including notifications, music) which may need manual silencing
  • Initial model download (~600 MB) may be large for constrained environments
  • Echo cancellation optional and may cause slight audio ducking when enabled
  • Performance best on Apple Silicon; Intel Macs may be slower
  • No built-in language detection or multi-language support yet

Installation

native

cd quill
swift build -c release
sudo cp .build/release/quill /usr/local/bin/quill
quill install --launch-at-login

FAQ

How do I install quill on macOS?

Clone the repository, build with `swift build -c release`, then copy the binary to a location in your PATH (e.g., `/usr/local/bin/quill`). Optionally run `quill install --launch-at-login` to start it as a LaunchAgent.

Where are recordings saved and how can I change the location?

By default sessions go to `~/Recordings/<yyyy.MM.dd-HHmm>/`. You can override this with the `--out` flag (`quill run --out <dir>`) or set `recordings_dir` in `~/.config/quill/config.json`.

What happens after I stop a recording?

Transcription starts automatically on-device. Progress appears in the menu bar and a notification fires when the transcript is ready. The session folder contains separate mic and system audio CAF files, meta.json, transcript.json, transcript.md, and a transcribe.log.

Can I disable transcription or use a different engine?

Yes. In `~/.config/quill/config.json` set `transcription.enabled` to `false` to only record, or change the `engine` field (currently `parakeet`). A Whisper engine is planned as a fallback.

What should I do if I encounter permission issues or silent recordings?

Run `quill doctor` to verify permissions, recordings folder, and model cache. Ensure microphone and System Audio Recording are granted in System Settings → Privacy & Security. If recordings are silent, check the System Audio Recording permission specifically.

Loading documentation…
View on GitHub

Featured in Videos

YouTube tutorials and walkthroughs for quill

Alternatives

Similar projects ranked by category, topics, and text overlap.

Compare
quill | MushyBook