# Third-party components

Current development builds embed Ghostty and Sparkle and call Google transcription/editing through the TypeScript backend. They do not link FluidAudio, download speech/editor weights, or bundle llama.cpp. The local-model notices below describe historical releases and retained developer comparison tools; their license files remain in the repository.

## Historical local speech and editor components

Murmello uses NVIDIA and Suno's Parakeet TDT-CTC 110M English model, converted to Core ML by Fluid Inference, and the FluidAudio Swift library. The model library additionally offers NVIDIA's Parakeet TDT 0.6B V2 and V3 models, converted and quantized by Fluid Inference.

- FluidAudio v0.15.6, Apache 2.0: https://github.com/FluidInference/FluidAudio
- Original model, CC BY 4.0: https://huggingface.co/nvidia/parakeet-tdt_ctc-110m
- Core ML conversion: https://huggingface.co/FluidInference/parakeet-tdt-ctc-110m-coreml
- Pinned model revision: `9bc92ead6e8f17eca92a869fd578ae76842b82ba`
- The complete library and model license texts are included in the app's Resources directory.

Optional model downloads (CC BY 4.0 model license):

- NVIDIA Parakeet TDT 0.6B V2: https://huggingface.co/nvidia/parakeet-tdt-0.6b-v2
- V2 Core ML conversion: https://huggingface.co/FluidInference/parakeet-tdt-0.6b-v2-coreml, revision `ee09c569f73759e6d44c9bd16766f477b2b36d39`
- NVIDIA Parakeet TDT 0.6B V3: https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
- V3 Core ML conversion, including the optional INT4 encoder: https://huggingface.co/FluidInference/parakeet-tdt-0.6b-v3-coreml, revision `7dd20fe6b1797d35f5e3307e8b1732d9a178edfe`
- License: https://creativecommons.org/licenses/by/4.0/ (full text included as `Model-LICENSE`). FluidAudio's Apache 2.0 library license is separate from the model license.

The model files are used without modification. Murmello adds audio capture, local inference orchestration, keyboard shortcuts, and text delivery. Credit for the model and its conversion remains with their respective authors.

FluidAudio contains additional components and their notices, including FastCluster and NeMo text processing. The NeMo text-processing license is also included in Resources. See the source distribution and LICENSE for upstream notices. Murmello uses the Parakeet ASR path without speaker identification or cloud transcription. Its optional local language models for writing cleanup are listed below.

The development comparison used Moonshine AI's `two_cities.wav` fixture from version v0.1.5 of https://github.com/moonshine-ai/moonshine. That recording is kept in `.work/downloads` and is not bundled with the application. The sample passage is from Charles Dickens' public-domain *A Tale of Two Cities*.

## Optional local text editor

Murmello uses Qwen3 1.7B Q4_K_M for opt-in local cleanup. The base model is [Qwen/Qwen3-1.7B](https://huggingface.co/Qwen/Qwen3-1.7B), under Apache 2.0; the license ships as `Qwen-LICENSE`. The [Unsloth GGUF conversion](https://huggingface.co/unsloth/Qwen3-1.7B-GGUF) is pinned to `d7f544eead698dbd1f15126ef60b45a1e1933222`. Model weights are downloaded separately.

The compact editor is [HuggingFaceTB/SmolLM2-360M-Instruct](https://huggingface.co/HuggingFaceTB/SmolLM2-360M-Instruct), under Apache 2.0. Its [official GGUF](https://huggingface.co/HuggingFaceTB/SmolLM2-360M-Instruct-GGUF) Q8_0 conversion is pinned to `593b5a2e04c8f3e4ee880263f93e0bd2901ad47f`, SHA-256 `48ab3034d0dd401fbc721eb1df3217902fee7dab9078992d66431f09b7750201`. The upstream [SmolLM license](https://github.com/huggingface/smollm/blob/main/LICENSE) ships as `SmolLM2-LICENSE`. The 386,404,992-byte model is a separate optional download. Only the selected editor runs, and it exits after editing.

The bundled local helper and required dynamic libraries come from [llama.cpp b10809](https://github.com/ggml-org/llama.cpp/releases/tag/b10809), copyright its contributors, under the MIT license. The upstream license is included at `Contents/Resources/llama-LICENSE`. The verified archive is pinned by SHA-256; see `CLEANUP.md` for exact model/runtime metadata. No runtime server is started.

## Software updates

Native software updates use [Sparkle 2.9.6](https://github.com/sparkle-project/Sparkle/tree/ac2def288cbff5cfc7df3ffef6abdf45b72bcb0a), under the MIT license with its bundled third-party notices. The complete upstream notice ships as `Contents/Resources/Sparkle-LICENSE`. Sparkle's source is included in the release source archive. System profiling is disabled; neither recordings nor transcripts are passed to the updater.

## Ghostty

The native terminal embeds [Ghostty 1.3.1](https://ghostty.org), copyright Mitchell Hashimoto and contributors, under the MIT license. The engine is built from the official source archive with Zig 0.15.2; source and compiler checksums are pinned in `scripts/terminal-engine.json`. Sentry crash reporting is disabled at build time. Upstream licensing is preserved in `Ghostty-LICENSE` and the bundled `Ghostty-Licenses` tree. The AppKit input adapter follows the upstream macOS embedder. Murmello supplies its own workspaces, tabs, menus and settings; it does not bundle the Ghostty desktop app.

Codex and Claude Code are the user's installed, unmodified CLIs. Agent buttons enter `codex` or `claude` into an interactive shell. Their code and credentials are not bundled with Murmello.

## Authentication service

The separate TypeScript account service uses Better Auth 1.7.4 and its OAuth
Provider plugin (MIT), node-postgres 8.23.0 (MIT), Fastify 5.12.4 (MIT), Zod 4.6.2
(MIT), and AWS SDK for JavaScript SESv2 3.1131.0 (Apache 2.0). Exact dependencies
and their integrity hashes are in `backend/package-lock.json`; upstream license
files remain in their installed packages. The service uses PostgreSQL, under
the PostgreSQL License. These server packages are not embedded in the native app.

## Web typefaces

The web pages self-host one open typeface, because they run under
`default-src 'none'` and cannot load a font CDN. It is redistributed under the
[SIL Open Font License 1.1](https://openfontlicense.org), which permits embedding
and web use.

- [Space Grotesk](https://github.com/floriankarsten/space-grotesk) by Florian
  Karsten. Latin subset of the variable font, at
  `backend/web/shared/fonts/space-grotesk-latin-var.woff2`.

[Figtree](https://github.com/erikdkennedy/figtree) by Erik D. Kennedy, also under
the OFL, is a design-time dependency only: the `murmello` wordmark in
`Assets/Branding/Murmello/lockup-prompt.svg` is Figtree SemiBold converted to
outlines, so no font file ships with it. See
[the brand spec](branding/MURMELLO_BRAND.md) for regenerating it.

The file is an unmodified upstream subset served by Google Fonts. The OFL requires
that the font not be sold on its own and that any modified version be renamed;
Murmello does neither.
