# Minna: local doc search with grounded LLM

Minna indexes documents into a hybrid vector-plus-full-text store with citation-grounded chat, but requires macOS 26 beta and ships PostHog telemetry on…

Canonical page: https://makerportal.ai/blog/notiary-hackernews-49362669
Author: Joshua Hrisko, Principal Engineer — MakerPortal
Published: 2026-08-20
Section: Readout / On-Device AI · 6 min read
Tags: notiary, on-device-ai, metal-ane

---

Minna ships a hybrid vector-and-full-text document search engine with a grounded LLM chat interface, all running locally on macOS, and the constraint that distinguishes it from comparable local retrieval tools is that every AI-generated response must be backed by a direct quote pulled from the user's own corpus. The detail most engineers assuming a privacy-first local tool would not expect: PostHog analytics run by default, with PII stripped and IP addresses dropped at collection, but the outbound pipeline is present.

## What it is

Minna is an open-source macOS application that indexes local documents into a hybrid vector-plus-full-text store and exposes both a search interface and a citation-grounded LLM chat interface. The entire index lives in a single `.irisdb` file that the README says can be moved between machines — a different operational shape from the directory-of-shards you get from most embedded vector stores.

Three inference paths are available: MLX-based on-device models (the default is Qwen3 4b Instruct, 4-bit quantized from the mlx-community Hugging Face hub), Apple Foundation Models (the on-device inference API arriving with macOS 26), and external cloud LLM providers whose API keys are stored encrypted in the macOS Keychain. MLX and Apple Foundation Models are stated to make no network calls on the inference path, independent of telemetry.

Building from source requires macOS 26, Xcode 26, and Git LFS. macOS 26 is in public beta at time of writing; that is a hard gate for anyone on a stable OS release. The README does not mention a pre-built binary distribution.

| Fact | Detail | Condition / source |
|---|---|---|
| License | Apache-2.0 | README |
| Platform | macOS only | README |
| Build requirements | macOS 26+, Xcode 26+, Git LFS | README |
| Standard on-device model | Qwen3 4b Instruct, 4-bit (MLX) | README |
| Secondary on-device path | Apple Foundation Models | README; requires macOS 26 at runtime |
| External provider support | Yes; credentials encrypted in macOS Keychain | README |
| Index format | Single `.irisdb` file, portable | README |
| Search type | Vector + full-text hybrid | README |
| Telemetry | PostHog; PII stripped, IP dropped | README |
| Inference network calls (on-device paths) | None claimed | README — not independently verified |
| AI response grounding | Every statement backed by a direct quote from corpus | README claim; impel-intelligence |

## Performance figures and their conditions

The README supplies one benchmark: approximately 12 ms search latency across a corpus of 250 long documents chunked into 30,000 total document pieces. Impel-intelligence is the source; this studio has not run the benchmark. No hardware is specified. No query type is described. No indication is given of whether 12 ms is median, mean, or a single-observation best case. No comparison baseline — against SQLite FTS5, a local FAISS store, or a comparable on-device retrieval tool — appears alongside it.

That is the complete set of quantitative claims in the release material. There are no figures for embedding throughput, memory footprint at index time, or model inference latency on the Qwen3 4b path. The 30,000-chunk corpus is modest — roughly a few hundred dense PDFs or several thousand short notes — which limits what the figure implies about scaling. For engineers curious about the latency floor imposed by Apple's on-device inference stack more generally, our [Espresso CoreML overhead note](/blog/biquadia-github-1173023018) provides a relevant reference point.

## What this is actually useful for

The workload Minna fits is personal document retrieval where traceable AI answers matter more than generative flexibility. The citation requirement — every generated statement backed by a direct quote — is the load-bearing design decision. It rules out open-ended synthesis and positions the tool squarely in retrieval-augmented Q&A territory. If your workflow is "search what I've written on a topic and have it explain it back to me," this fits well. If you need the model to reason across many sources and produce a draft that synthesises them, the grounding constraint will work against you rather than for you.

The portable single-file index is a practical operational advantage: you can back it up, version it, or copy it to another machine without managing a directory of shards. Whether the format is stable across Minna versions is a separate question the README does not address.

Where Minna does not fit: any non-macOS environment, production retrieval pipelines that need programmatic API access rather than a GUI, concurrent multi-user shared corpora, or deployments where zero third-party telemetry is a hard requirement. The macOS 26 build gate also means that evaluating the source today requires a public beta installation; anyone on a stable release is blocked until Apple ships the GA.

The privacy posture deserves a precise reading. The README is consistent and specific in its on-device claims: inference paths through MLX and Apple Foundation Models make no network calls, and LLM provider credentials are encrypted at rest in the Keychain. Neither commitment covers the PostHog pipeline. Engineers operating in regulated environments or under strict egress policies should audit the specific events being logged before pointing Minna at sensitive document corpora, even given the stated data-minimisation configuration.

## What the release does not settle

The 12 ms figure carries no hardware label. The difference in vector search throughput between an M1 and an M3 Max across 30,000 chunks is not negligible, and the figure cannot be projected to a different machine without running it there. Beyond search latency, there are no published figures for: memory footprint at index time or search time, which embedding model is used to populate the vector component of the hybrid index, or how retrieval quality and latency behave as corpus size grows significantly past the benchmark threshold. The `.irisdb` format is not documented in the public README — schema, versioning, and interoperability are all open questions.

---

*Method: this note was drafted by us.anthropic.claude-sonnet-4-6 from a single source — the published README of [impel-intelligence/Minna](https://github.com/impel-intelligence/Minna). Before publication an automated gate re-checked every extracted claim against the source document (10 claim(s) and 2 quantity(ies) verified) and every claim-shaped number in the draft against that evidence (0 derived from it, no rows from our own tables were supplied to the draft). The studio has not re-run impel-intelligence/Minna's benchmarks; figures attributed to it are its own.*

## Questions this note answers

### Does "no network calls" for on-device models also cover telemetry?

No, and the README draws the line explicitly. The no-network-calls claim covers MLX and Apple Foundation Models inference paths only. PostHog runs as a separate channel; the README describes a data-minimisation configuration (PII stripped, IP addresses dropped), but that is not the same as the channel being absent.

### What hardware do I actually need to run this?

The README states that building from source requires macOS 26 and Xcode 26, both currently in public beta. No minimum RAM or chip generation is specified. The Apple Foundation Models path depends on Apple's on-device inference stack, which has its own hardware eligibility requirements not listed in the README. The MLX path with Qwen3 4b Instruct at 4-bit quantisation should run on any Apple Silicon Mac that can install macOS 26, but memory requirements are not stated.

### Is the `.irisdb` format usable outside of Minna?

Not in any documented way. The README names the format and notes it is portable between machines running Minna, but provides no schema documentation, versioning guarantees, or external tooling. If you need to migrate your index to a different retrieval system, plan to reindex from the original source documents rather than relying on the file directly.

### Can I turn off the telemetry?

The README does not describe an opt-out mechanism. It describes the current PostHog configuration — PII stripped, IP dropped — but mentions no toggle, environment variable, or build flag to disable reporting entirely. Whether one exists requires reading the source directly.
