What's New

This page summarizes the most recent additions to LlamaForge. Each entry links to the full reference for that capability. For the longer-term direction, see the project's ROADMAP.md.

v0.19.0: See inside a model, talk to it, and leave it running

Everything from the v0.18 line in one release, plus start at login on Windows. The short version:

Each piece has its own entry below.

v0.18.42: Can I run it? on 42 cards, laptops included

Can I run it? now covers 42 graphics cards, up from 19: laptop GeForce cards from the RTX 3060 Laptop (6 GB) to the RTX 5090 Laptop (24 GB), the RTX 2080 Ti, 3050, 3080 Ti, 4060 Ti 8GB, 4070 Ti, 4080 Super and 5060, more Radeons, and Intel Arc A770 and B580. The index groups them into Desktop GeForce, Laptop GeForce, and Radeon and Intel Arc. Every page has the same verdict and llama.cpp line, worked out from the real GGUF headers.

v0.18.41: The llama.cpp line on every "Can I run it?" page

Each Can I run it? page now ends its verdict with the command that runs the pick, such as llama-server -hf unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q4_K_M -ngl 41 --n-cpu-moe 22 -c 8192 --no-mmproj on a 12 GB card, and the table gives the flags for every quant. Same memory math as the verdict, worked out from the real GGUF headers by the page generator.

v0.18.40: Keep the X-ray's flags

The X-ray of a model you have now does what the one in Discover does, and saves the result: a line says whether the weights fit your VRAM, a MoE gets the Experts on CPU slider, and Load it with shows the flags. Fit my VRAM moves the sliders to where the most weight fits, and Apply to this model writes them into its settings after asking, comments and other settings untouched. See Models.

v0.18.39: The exact flags for a MoE that doesn't fit

X-ray before download now places a MoE the way you'd run it: every layer on the GPU and the experts of the first few blocks in system RAM (--n-cpu-moe), so the CPU only runs a few active experts, never attention. An Experts on CPU slider moves that line, and Load it with shows the flags for the view, like -ngl 41 --n-cpu-moe 7, with a Copy button. The share card prints them too. See Discover.

v0.18.38: X-ray a model before you download it

Discover's file rows have an X-ray button. It reads only the file's GGUF header from Hugging Face, a few MB, and shows every layer and where it would land on your GPUs, starting at the most GPU layers whose weights fit your VRAM. A line says whether it fits, or by how much it's over. Compare with another quant and Share image work here too. See Discover.

v0.18.37: Share a quant compare as one image

With Compare with on, the X-ray's Share image now draws both quants on one 1200x630 card: the two layer stacks side by side on one scale, what the other quant costs (weights, GPU, system RAM) as the headline, and no paths. Handy for the "which quant fits my card?" threads. See Models.

v0.18.36: Which quant fits? Compare them in the X-ray

The X-ray now has Compare with: pick another quant of the same Hugging Face repo and see both layer stacks side by side, on one scale and under your model's own settings. LlamaForge reads only that file's GGUF header over HTTP Range, a few MB, so you see where a Q8_0 or an IQ4_XS would sit (GPU or system RAM, block by block) before downloading 20 GB. The GPU layers slider moves both. See Models.

v0.18.35: Share your model's X-ray

The X-ray has a Share image button. It turns what's on screen, slider included, into a 1200x630 card: one column per layer, coloured by what the layer holds, with the part in system RAM hatched, plus the quant mix and the GPU / RAM split. Post "my 26B at 10 GPU layers" next to "all layers" and the difference is plain to see. The card holds no paths. See Models & Tuning.

v0.18.34: Model X-ray

Every model's info card has an X-ray button. It takes the GGUF apart from its header, one bar per layer, split into attention, FFN, MoE experts and the rest, and hatches what stays in system RAM under your settings. On Gemma 4 26B it showed why 5 GB of a 15.4 GB model sat in RAM: n-cpu-moe=10 keeps the first ten blocks' experts there (about 440 MB each), plus the 748 MB embedding. Drag the GPU layers slider and watch the blocks move; nothing is saved. See Models & Tuning.

v0.18.33: Talk from your phone

The phone remote got a Talk button. Ask out loud from the sofa, and your PC hears you, answers, and the phone plays the answer in Qwen3-TTS's voice. It's the Voice tab's Talk, on the phone, and it stops recording by itself when you pause. Phones only allow the mic on HTTPS pages, so the Phone dialog now offers a Tailscale HTTPS link when this PC is on a tailnet: one tailscale serve --bg 8092 and there's no certificate to make. See Talk from your phone.

v0.18.32: Talk, hands-free

The Voice tab holds a conversation now. Press Talk, ask, and a model on your GPU hears you, answers in a sentence or three, and Qwen3-TTS reads the answer out. Tick Hands-free and the mic reopens after each answer and stops when you pause, so you just keep talking. One model both hears and answers, so nothing swaps: on an RTX 5080, Gemma 4 E4B heard each question in about 0.2 s and answered in under half a second. The one-click model is now Gemma 4 E4B: Voxtral Mini turned out to answer spoken questions instead of writing them down. See Talk.

v0.18.31: Talk to it

The Voice tab now listens. Speech to text has a Record button: talk, press Stop, and the words come back from a model on your own GPU (Voxtral Mini turned 6.7 seconds of speech into text in under half a second on an RTX 5080). Speak it back hands them to Qwen3-TTS, so the whole voice loop runs on your machine. Nothing that can hear yet? One click gets Voxtral Mini 3B. Scripts get OpenAI's /v1/audio/transcriptions: the openai SDK works unchanged. See Voice.

v0.18.30: OpenAI's Batch API, on your GPU

Got a thousand documents to summarise? Stats → Batches takes a .jsonl of chat requests in OpenAI's batch format and works through them into a results file: now, or tonight once nobody has used the router for 20 minutes. Scripts written for OpenAI's /v1/files and /v1/batches work unchanged: point the openai SDK at the panel. A batch survives a restart, pauses while a speed comparison or Auto-Forge needs the GPUs, and a bad request fails one line, not the file. See Batches.

v0.18.29: Asked right after the update

When an update finishes, the Engine card now asks: you're on b7123 now, is it as fast as b7080 was on your models? The build you were on is already picked in the compare speed row, so it's one model and one click. The old build stays installed, so Use takes you back if the answer is no. See Build & Update.

v0.18.28: Is the update faster?

Compare speed now works on official builds too, not only PR builds. Got a new nightly but still running the old one? The Engine card's compare speed row runs llama-bench on your model with the build you're on and with the one you picked, and shows the change before you press Use. A regression on your GPU shows up as a minus sign in a table, not as a slow evening. See Build & Update.

v0.18.27: Is the PR faster?

A PR build now has a Compare speed button. Pick a model and LlamaForge runs llama-bench on it with your build and then with the PR, same model file and GPU settings, and shows both speeds side by side with the change in percent. A change inside the runs' own spread says within noise, so you don't mistake jitter for a speedup. Copy as markdown puts the table on your clipboard for the PR's thread. See Build & Update.

v0.18.26: Try a llama.cpp PR

Paste a llama.cpp pull request number into Build / Update and LlamaForge builds that PR beside your own build, with your GPU's flags. Then pick one model to run on it: that model loads on the PR in its own process, while the router and everything else stay on your build. The commit is fixed when you look the PR up, and Remove cleans it all away. See Build & Update.

v0.18.25: Checked tasks overnight

Checked tasks can now run themselves. Pick a time under Every night at and press Schedule: once nobody has used a model for 20 minutes, LlamaForge runs your ticked models through the 15 tasks before 06:00, and the table is up to date when you sit down. See Blind Arena.

v0.18.24: Share your checked tasks

Share image in Checked tasks turns the table into a 1200x630 card: one square per task, green for right, plus each model's score and speed. If your fastest model isn't the one that gets the most right, the card says so: "Fastest: ministral-3-3b, 228 tok/s, 8 of 15 right." See Blind Arena.

v0.18.23: Checked tasks

The Arena tab now has a second way to compare models. Checked tasks asks your models 15 short tasks with one right answer each (extraction, math, JSON, following instructions, reasoning), marks them with a script, and puts them in a table with each model's speed. Every model gets one line against the one in your main slot, like "gemma-4-12b beats qwen3-8b on 3 of 5 categories, 40% slower", and you can see exactly what each one got wrong. It runs in the background, one model at a time; start it before bed. See Blind Arena.

v0.18.22: Faster arena rounds

After you vote, Same prompt, new pair asks the same prompt of two other models, and Rematch these two asks it again of the same two, shuffled again. Your last ten prompts sit in a Recent prompts list above the prompt box, kept in this browser only. Building a board that means something takes a few dozen rounds; now each one is a click. See Blind Arena.

v0.18.21: Arena board as an image

Share image under the Arena board draws it as a 1200x630 card: your top six models with Elo and wins-losses-ties, the vote count and your GPU names. Download it or copy it to the clipboard, ready for a post. It holds no prompts, paths or hosts. See Blind Arena.

v0.18.20: Blind Arena

A new Arena tab: two of your models answer the same prompt, shown only as Left and Right in random order. You vote, then the names and speeds appear, and an Elo board on your PC ranks your models on your own prompts and GPUs. See Blind Arena.

v0.18.19: Chat from your phone

Click Phone in the top bar, turn it on and scan the QR code: your phone gets a chat page for the models on your PC, streaming from your own GPUs with live tokens per second and GPU memory. Nothing to install on the phone, no account, no cloud relay. On a Tailscale network it works from anywhere. See Phone Remote.

v0.18.18: Live demo in your browser

Try LlamaForge without installing it. The demo is the real panel, served from the docs site, with every screen answered from a recording of a real RTX 5080 + 5060 Ti box: its models, GPU cards, Auto-Forge leaderboard (Qwen3.8-27B at 118 tokens/s on code), stats, Discover, Embers and Help. Click anything; changes are answered with a note that nothing runs there.

v0.18.17: LlamaForge agent skill

Your coding agent, on your own GPU. npx skills add dadwritestech/LlamaForge (or the Claude Code plugin: /plugin marketplace add dadwritestech/LlamaForge) installs a skill that teaches Claude Code, Codex and other agents to drive LlamaForge: see what fits your GPUs, download and load a model, speed-tune it, and hand it grunt work. It asks you before anything slow or disruptive. See Agent Skill.

The MCP server gained Auto-Forge: forge_start, forge_status, forge_apply and forge_undo. An agent can start a run, follow it and show you the result; on the test machine forge_status reported a Qwen3.8-27B setup at 118 tokens/s on code. It applies the winner only when you say so.

v0.18.16: Re-upload watch

GGUF makers often replace a file in a release's first weeks to fix a template or a broken quant, and until now nothing told you. Once a day LlamaForge asks Hugging Face whether each model's file still matches yours. A changed one gets a re-uploaded badge, the date and commit message, and a Re-download button. See Models.

A model's editor has a Samplers row. Recommended reads the temperature, top-p, top-k and other sampler values the model's makers publish in generation_config.json, from the GGUF repo or the base model on its card, and shows them next to yours. Use these writes only the values that differ. See Models.

v0.18.14: Template doctor

A model's editor has a Template row. Check compares the chat template inside your GGUF with the repo you downloaded it from and the base model's, and says when yours is stale. A stale template is the usual cause of broken tool calls and thinking that won't switch off. One click uses the newer template through llama.cpp's --chat-template-file; the GGUF isn't touched. See Models.

v0.18.13: Free disk space

Setup has a Free Disk Space card. One click lists the models nobody has used in 90 days (from Stats), largest first, and any GGUF that's a byte-identical copy of another, like the same quant in two apps' folders. Each row has a Delete button that asks first, then unloads the model, deletes the file (every part of a split one) and removes it from your config. See Setup.

v0.18.12: Sleep idle models

Setup has a Sleep idle models card. Pick a number of minutes and any llama.cpp model that sits idle that long frees its VRAM and RAM, stays in the list as sleeping (a hollow light), and wakes on the next request. On a test here a 3B model went from about 3.2 GB of VRAM to under 0.5 GB asleep, and woke for a chat request in 0.65 s. See Setup.

v0.18.11: Share your rig

Stats has a Share my rig button: a 1200x630 image (and markdown) of your GPUs, RAM and OS, your five most-used models with their speed and token counts, and how many tokens this machine has generated. Download it, copy it, post it. See Stats.

v0.18.10: The router comes back on its own

If llama.cpp's router crashes, every app pointed at it gets "connection refused" until someone notices. LlamaForge now probes it every 5 seconds and, after 15 seconds without an answer, starts it again with the same settings. Models aren't preloaded; the next request loads its model as usual.

v0.18.8: Embedding and reranker models, set up for RAG

v0.18.7: AMD and Intel GPUs show up

v0.18.6: Start at login, if you want it

v0.18.5: A GPU box with no screen

v0.18.4: Paste-ready settings for your apps

v0.18.3: Thinking effort, per model

v0.18.2: Multi-model that keeps VRAM free on its own

v0.18.1: Ollama users skip the download

v0.18.0: Bring your Ollama models

v0.17.3: A star, once, when it's earned

v0.17.2: Share your Auto-Forge result

v0.17.1: Claude Code launch fixes

v0.17.0: Auto-Forge, Claude Code on a folder

v0.16.4: Elastic VRAM, live RAM

v0.16.3: Game mode

v0.16.2: load progress, Thinking and Vision switches

v0.16.1

v0.16: Embers, several models at once, an MCP server, Voice

v0.15: llama.cpp sizes memory, honest diagnosis, safer by default

Click browse recipes on the Profiles strip to see tested setups people have shared: the model, the hardware it ran on, what the key knobs do, and an on this machine badge when you already have the file. Import runs the normal recipe import, so a missing model downloads from Hugging Face and the same knob filter applies. The list comes live from the repo's recipes/ folder, so a merged recipe appears without a release; offline, LlamaForge shows the copy that shipped with your version. To add yours, export it with ↗ and open a pull request (see recipes/README.md).

See Models & Tuning and HTTP API.

Shareable recipes

Any llama.cpp profile can be shared as a recipe: click ↗ on its chip and copy readable JSON with the model file, the Hugging Face repo it came from, its knobs, and the llama.cpp build it was made on. Paste a recipe into + import recipe to get the same preset and profile. If you don't have the model, Download from <repo> & import fetches it. Only tuning knobs are imported; paths, hosts, keys and logging flags are always dropped.

See Models & Tuning and HTTP API.

One-click launch profiles

Save a model, a preset, and (optionally) a specific installed llama.cpp build as a named profile from the model's editor, then launch the whole combination from a ▶ chip above the model list. If the pinned build isn't the active one, LlamaForge switches to it, waits for the router, applies the preset, and loads the model. That's useful when a new llama.cpp release regresses one model and you want to keep it on the build that worked. Builds a profile pins are kept out of the automatic pruning after an update.

See Models & Tuning and HTTP API.

Focused scanning and a lighter Models tab

Setup can now persist one or more model folders instead of walking every drive, while an explicit blank list still selects the platform defaults. A llama.cpp model can be Unregistered from models.ini without deleting its GGUF file. The Models view also avoids polling collapsed logs, shares GPU telemetry through a short cache instead of spawning nvidia-smi per browser poll, and keeps the CRT scanline look without the expensive full-viewport blend mode.

Fresh bootstrap runs now accept an existing llama.cpp checkout and derive its build/server paths, removing the hand-edit step reported by WSL2 users.

See Setup, Models & Tuning, and Install.

Fail-closed network and explicit credentials

Network Access now distinguishes the loopback-only dashboard from the router it controls. LlamaForge accepts only local (127.0.0.1) or LAN (0.0.0.0) router scope, requires a usable key for every newly configured LAN router, and refuses LlamaForge-owned starts/restarts when that policy is unsafe. Existing manual or legacy settings are shown for repair rather than silently rewritten. Routine dashboard state is redacted; Client Config, Agent Config, and generated keys are deliberate no-store actions. This is tested product behavior in an early preview, not a formal security standard or audit certification.

See Security, Setup, HTTP API, and Connect an Agent.

ik_llama as a second llama-family engine

The Build tab now builds and drives ik_llama.cpp alongside stock llama.cpp, switched with one control (POST /api/engine/switch). The switch is gated on a capability probe: a binary whose llama-server lacks router mode (--models-preset) is refused with an explanation rather than taking the router down, and ik_llama keeps its own models.ini registry (a -ikllama sibling of the main one). Per-model tuning comes along automatically because the knob schema is parsed from whichever binary is active.

See Build & Update and models.ini Format.

Bind a preset as a model's default

Named presets can now be bound to a model, not just applied once. Binding writes the preset's knobs into the model's section and — the point of it — editing a bound preset re-syncs every model using it. A ◉/○ dot on each preset chip toggles the binding; the bound chip is highlighted. Hand edits still win, and unbinding leaves the knobs in place.

See Models & Tuning.

Auto-wired MTP draft models

A scan now attaches an mtp-* speculative draft sidecar to its parent model the way mmproj already is, filling spec-draft-model. It enables spec-type=draft-mtp only when the sidecar actually declares NextN layers — the signal llama.cpp itself gates on — so a model that can't use MTP is never broken. The wiring is additive: it never overwrites a spec-type you set by hand (e.g. an ngram mode).

See models.ini Format.

Offload-aware VRAM-fit rating

The FITS / TIGHT / CPU OFFLOAD badge in Discover now defers to the same physics estimate as the Will-it-run panel instead of a raw size-vs-VRAM guess. A large MoE that runs fast with its experts on CPU reads as TIGHT rather than being mislabeled CPU OFFLOAD just for being bigger than VRAM. The size heuristic remains the fallback when no prediction is available.

See Discover.

A more forgiving first run

Several fresh-install rough edges are gone. A missing config.json is seeded from config.example.json instead of crashing; models.ini is created if absent; a relative models_ini resolves against the repo root so the router never comes up with zero models; a busy router port is reported by name instead of failing silently; a freshly installed tool is detected without a restart; and a build whose llama-server succeeded but whose UI-asset step failed reports "built, with warnings" instead of BUILD FAILED.

See First Run, Setup, and Troubleshooting.

Lite and Advanced modes, with a guided first run

A first-run wizard now walks a new install through engine detection, hardware review, model selection, and a recommended tune — then applies it and loads the model. The dashboard runs in one of two modes: Lite presents a reduced, task-oriented set of controls; Advanced exposes every server flag. A hardware auto-tune proposes per-model settings (GPU-layer offload, KV-cache type, context ceiling, and intent presets for balanced / speed / context / coding) sized to the detected VRAM.

See First Run and Models & Tuning.

Anthropic-compatible endpoint

The panel exposes an Anthropic-compatible POST /v1/messages endpoint that translates to the local OpenAI-style router, with full streaming and tool-use support. Combined with the existing OpenAI-compatible surface, LlamaForge can serve clients written for either API against your local models.

See HTTP API.

One-click agent setup

A Connect an Agent panel generates — and optionally writes — the configuration for Claude Code, Codex, and pi.dev, pointing each at your local endpoint. Claude Code is scoped to 127.0.0.1; generated files are backed up before any change is written.

See Connect an Agent.

Context Wiki

A working directory of Markdown context documents, composed into named profiles and selected per model. An active profile is delivered two ways: injected into requests through the Anthropic shim and the OpenAI proxy, or exported into an agent's native context file (CLAUDE.md / AGENTS.md) inside a managed marker region. Because the injected prefix is stable, the router's prompt-cache reuses it across requests.

See Context Wiki.

Light and dark themes, plus a colorblind-safe mode

The dashboard now offers a Light theme alongside the original dark one, and an independent Colorblind-safe mode that applies a universal Okabe–Ito status palette and adds non-color cues (glyphs and labels) so status never depends on hue alone. The two axes are orthogonal — all four combinations are valid — and each choice persists per device.

See Theming & Accessibility.

In-app documentation

The documentation you are reading is available inside the dashboard under the Help view and is also published as a static site. Both surfaces render from a single Markdown source, so they never drift.

A collapsible sidebar layout

Navigation moved from a top tab bar to a left sidebar that collapses between a compact icon rail and a labeled, expanded state. Settings are pinned at the bottom; the layout adapts to narrow windows with an overlay drawer. All existing navigation, theming, and keyboard shortcuts are unchanged.

See Keyboard Shortcuts.

Refine benchmark in the Models panel

A Refine button now sits inline in each model's editor (beside the Presets bar). Pick an intent (balanced / speed / context / coding), click Run, and it auto-generates knob recommendations, benchmarks candidates with real completion requests (~200 tokens each), and applies the fastest config. A results table shows tok/s per candidate and which was chosen. The same autotune engine used in the first-run wizard is now available anytime from the main Models tab.

See Models & Tuning.

VRAM "Will-it-run" panel

Before downloading, the Discover tab now shows a Will-it-run panel that predicts whether a model quant will fit your GPU and at what approximate speed. It factors in MoE active-vs-total parameters, your GPU's memory bandwidth (with manual overrides in Setup), and the quant's size — then rates it as FITS, TIGHT, or CPU OFFLOAD with an estimated tok/s. The same estimate appears as a badge when you expand a model in Discover.

See Discover.