More local transcription choices for Quill.

lmn451 proposed adding adapters for Handy and configurable local commands to Quill, a macOS meeting recorder and transcriber. The change keeps Quill's built-in Parakeet path as the default.

Pull request
PR #76 is open and unmerged.
Release
This is a pending proposal, not an accepted or released Quill feature.
Author
lmn451 proposed the change in humanitas-labs/quill.
Related request
Issue #75 is also open.

Honor the configured engine.

The proposal addresses a mismatch: Quill's transcription path used Parakeet regardless of a configured engine, leaving Handy's already-downloaded models and other local command-line engines unavailable through configuration. The change adds provider selection without replacing the existing default.

DESIGN INTENT

Choose an engine; keep transcription local.

A shared provider selection is proposed for transcription and quill doctor. Handy can reuse a model the user has already downloaded in Handy, while a custom command can wrap another local inference engine. The proposal does not add cloud providers or automatic model downloads.

Three proposed provider paths.

The engine is selected in Quill's configuration. These are behaviors described by open PR #76, not features available in a released version.

DEFAULT

Parakeet stays built in

The existing on-device Parakeet engine remains the default. Users who do not choose another engine keep that path; the proposal does not replace it.

engine: "parakeet"
HANDY

Reuse an installed Handy model

With transcription.engine set to handy, the adapter would call Handy's headless CLI and pass an explicit configured model ID. That ID is independent of the model selected in Handy's UI. The model must already be downloaded in Handy; this path does not download it.

engine: "handy"
LOCAL COMMAND

Connect a local executable or wrapper

The proposed command provider runs a configured executable with literal argument templates, including the audio and model values. A wrapper can adapt another CLI, but it must perform local inference and return the documented JSON output; Quill is not proposing a cloud service.

engine: "command"

Select a Handy model explicitly.

In the proposal, optional provider fields live inside transcription in ~/.config/quill/config.json. This example follows the pinned Quill documentation; use the ID for a model you have already downloaded in Handy.

PROPOSED CONFIG

Handy engine with a configured model ID

{
  "transcription": {
    "engine": "handy",
    "handy_model": "handy-computer/parakeet-unified-en-0.6b-gguf/parakeet-unified-en-0.6b-Q8_0.gguf"
  }
}

The example ID is documented in the proposal's README. The Handy UI's current selection does not override Quill's configured ID, and Quill does not fetch a missing model.

Check capability and readiness separately.

The proposed diagnostics check whether the selected provider can be used; they do not claim that every custom wrapper has been validated end to end.

HANDY CLI

Required headless commands

The Handy build needs --transcribe-file, --list-models, and --json.

MODEL

Already downloaded

The configured Handy model must appear as available locally; the proposed doctor check verifies this before transcription.

CUSTOM COMMAND

Executable check is limited

For a custom provider, quill doctor checks the executable. A test recording is still needed to check the model and JSON output compatibility.

Text output means coarser timestamps.

The Handy file interface returns text without word-level timestamps. The proposed adapter converts audio to 16 kHz mono, 16-bit PCM WAV, then processes chunks of at most five minutes. For each nonempty chunk, it would create one segment using the chunk's actual audio duration and offset it onto the recording timeline.

TRADE-OFFS

Chunk boundaries are visible in precision.

One coarse segment per chunk is less precise for overlapping conversation than Parakeet's word-based segments. Each Handy chunk starts a new process and reloads the model, so context can be lost at chunk boundaries. The timing proposal also carries chunk and recording-segment offsets, rather than claiming word-level alignment for Handy text.

Inspect the proposal and its source projects.

Quill remains the project maintained by humanitas-labs; Handy remains the separate project maintained by cjpais. PR #76 is open and has not been merged or released.