Know what your machine can actually run.

Most local-LLM apps decide whether a model fits by comparing its file size to your VRAM. That ignores the KV cache, the compute buffers, and the memory your display already took. Kayon does the real arithmetic, gives every quant a verdict, and shows you the working.

v1.5.2 · Windows 10/11 x64 · MIT licensed · Checksums and release notes

The installer is not code-signed yet, so Windows SmartScreen will warn you: “Windows protected your PC.” Click More info, then Run anyway. Code signing is on the roadmap. We would rather tell you here than let you meet it unprepared.

What “shows its work” actually means

Kayon decides whether a model fits by adding up four things. Three of them are what the usual check leaves out.

The fit calculation
TermWhat it accounts for
Model weightsThe part everyone counts. Taken from the file for a model you have not downloaded yet, and refined to exact tensor sums once it is local.
KV cacheGrows with your context length, and it is the term that turns a comfortable fit into thrashing at 32k. Kayon exposes an f16 / q8_0 toggle because the choice roughly halves it.
Compute buffersScratch space the runtime allocates while generating. Only true for the exact llama.cpp build in use: one upstream bump moved the output-logits buffer out of VRAM entirely and invalidated the previous model.
Display headroomThe VRAM your desktop, browser and everything else already took. Measured as real free memory from NVML, not as the card’s advertised capacity.

The check it replaces

file_size < VRAM

That comparison ignores three of the four terms, which is why it will happily tell you a model fits and then leave you watching it swap. Where the arithmetic cannot be done honestly (SSM, linear and hybrid attention), Kayon returns UNVERIFIED_ARCH rather than inventing a number.

Fit verdicts

Six answers, and one of them is an admission.

Every quant of every model gets a verdict computed for your GPU at your context length. Expand any one in the app to see the arithmetic it came from.

  1. FITS_FULLYRuns entirely on the GPU, with room to spare.
  2. FITS_TIGHTFits, but with little headroom.
  3. GPU_CPU_SPLITPartially offloaded. Runs, slower.
  4. CPU_ONLYWill not fit on the GPU, but fits in RAM.
  5. EXCEEDS_MACHINEWill not run here.
  6. UNVERIFIED_ARCHNon-standard attention (SSM, linear or hybrid), so the KV cache cannot be modelled honestly. Kayon says unverified rather than guess.

What else is in there

The fit verdict is the reason to install Kayon. These are what you find once it is open, all of it local and all of it inspectable.

Adopts your Ollama models in place
Finds your Ollama store and hard-links the blobs into its library. No copy, no re-download, zero bytes moved. It takes Ollama’s blob digest as the checksum for free, and deleting Kayon’s link never touches Ollama’s blob.
A catalog pinned to real checksums
Discovered from Hugging Face at launch. Every quant’s SHA-256 and byte size come pinned from Git-LFS metadata, so learning a hash costs one small JSON call instead of a 4 GB download. Nothing enters your library without matching its pinned hash.
Chat with an agentic tool loop
Offered only when the loaded model’s chat template actually supports tool calling. Detected at load, never guessed. Calculator, file read/list/write, a Python interpreter, and opt-in web search. Every call and result renders inline and persists with the message.
A workspace, and artifacts that never execute
Each chat gets a folder. Files the model creates land there; a Files panel opens markdown, code, images, real PDF pages and HTML in place, fully offline. HTML renders script-free, and the viewer states which scripts it refused to run.
A network log that accounts for everything
Kayon accounts for every outbound call it can make: catalog lookups, model downloads, update checks, and telemetry if you opted in are the four always-present kinds; web search and fetch are a fifth, and only run at all if you switch the per-session Web toggle on. Each is separately controllable and each appears in the log, including Kayon’s own update check. An update path that skipped the log would make the log a lie.

Honest tradeoffs

What it does not do yet.

Taken from the project’s own README. A tool arguing for honest arithmetic cannot hide its own limitations and expect to be believed.

Code execution is not sandboxed in v1
The `code` tool is confirmation-gated, isolated-mode, cwd-scoped and killed on timeout. Approved code still runs with your OS permissions. The app says so rather than dressing it up as isolation; a WASM or OS-jail sandbox is the post-v1 hardening.
Discovered catalog entries are not Kayon-signed
They are pinned to Hugging Face’s published hash and enforced by the download checksum gate; only the bundled anchor catalog is signed. Hugging Face is already the download origin, so this keeps trust with a single party. A deliberate tradeoff.
Fit constants are only true for the bundled runtime
They were measured against the exact llama.cpp build Kayon ships. One upstream bump moved the output-logits buffer out of VRAM and invalidated the previous model outright, so re-measuring is part of bumping the pin.
One platform in v1
Windows on an NVIDIA card is the only measured configuration. No macOS, no AMD, no multi-GPU offload, no multimodal, no serving. Without an NVIDIA card Kayon still runs, but the verdicts it gives you are RAM-based.

Questions

Do I need an NVIDIA GPU?
No. Without one Kayon still runs and gives you RAM-based verdicts instead of pretending. You need Windows 10 or 11, x64.
Do I need Ollama?
Only if you want Kayon to adopt models you already have. It is otherwise optional.
Does anything leave my machine?
Only the call types named in the network log: catalog lookups, model downloads, update checks, telemetry if you opted in, and web search/fetch if you switched the per-session Web toggle on. Each is separately controllable. Telemetry is off by default, and when you turn it on you see the literal payload before anything sends.
What happens when I upgrade?
Run the newer installer over the old one. Your library, chat history and settings survive. Kayon installs for your user rather than the machine, so applying an update is a click rather than an admin prompt.
Why does it say UNVERIFIED_ARCH?
The model uses non-standard attention (SSM, linear or hybrid), whose KV cache the standard formula cannot model. Rather than invent a number that would look authoritative and be wrong, Kayon declines to answer.

Find out what your card can really run.

Free, MIT licensed, no account. The llama.cpp runtime ships inside the installer, so chat and the benchmark work the moment it opens.