localm
Fine-tune this chat. Blank fields use your defaults from Settings › Chat (system prompt, sampling); set one here to override it for this conversation only.
Advanced sampling, seed, grammar
     

Coder session

Destructive actions ask for your approval below, unless you enable auto-approve. Runs the localcoder agent against a project directory; it can read, write, and run code.

Models

Find models

Add a model

From HuggingFace (owner/repo[:file.gguf]) or an https URL, or add one already on disk - paste a folder/file path, or use Browse to pick a folder.
Already have models in a ComfyUI install? Preview and import them in bulk.
Picks up new models from the ComfyUI folder already set in Settings - one click, no folder picker.

Registered models

Image generation

Runs your local ComfyUI FLUX pipeline. The LLM unloads automatically to free VRAM for the image model, and reloads on the next chat request.

Generate

Advanced seed, guidance, denoise, CFG, LoRA strength

History

Tick thumbnails to select for bulk actions; click one for details, metadata, and per-image actions.

Workflow

The ComfyUI workflow this page uses. Upload one (in ComfyUI: Save -> API format) and select it, or keep the built-in default.

Music generation

Runs the ACE-Step workflow on your local ComfyUI (same VRAM handover as image generation). Track length is arbitrary; longer tracks just take longer.

Generate

Advanced seed, steps, CFG

History

Tick a card to select it for bulk actions; click one for details, metadata, and per-track actions.

Workflow

The ComfyUI workflow this page uses. Upload one (in ComfyUI: Save -> API format) and select it, or keep the built-in default.

Video generation

Slowest generator here: minutes to hours per clip, so iterate with short durations and fewer steps. Keep the native 1280×704 resolution or quality collapses. Runs Wan 2.2 on your local ComfyUI.

Generate

Advanced resolution, seed, steps, CFG

History

Tick a card to select it for bulk actions; click one for details, metadata, and per-clip actions.

Workflow

The ComfyUI workflow this page uses. Upload one (in ComfyUI: Save -> API format) and select it, or keep the built-in default.

Knowledge

Index folders or files into collections, then pick a collection in the chat parameters drawer - replies get grounded in the most relevant excerpts, with citations. Retrieval is BM25 (always works offline); when an embedding model is set up, semantic (vector) search is blended in. Collections live in the localm data directory under rag/.

Embedding model

Semantic search uses a small embedding model, loaded separately from your chat model. Choose the built-in one (downloaded once, on this machine) or any model from your list. BM25 lexical search always works without one.
Checking…

New collection

Collections

Plugins

LocaLM is a model loader plus a plugin engine. Only chat is active out of the box; install the others as you need them. Enabling or disabling a plugin takes effect instantly - no restart, no model reload.

First-party plugins

External plugins

A third-party plugin is a folder with a plugin.toml manifest under ~/.localm/plugins/; it can add a CLI command and export tools to the coder agent. Installation is a local directory copy.

Settings

Stored in config.json in your data directory. Pick a section on the left; each one saves on its own. Engine values apply on the next model load.

Live tuning (apply now)

Adjust the running model without a reload: how much of it is on the GPU, and how large its context window is. Runtime & GPU holds the persisted next-load defaults; these apply right now. The VRAM figure is an estimate.
How much of the model to offload to the GPU (0-999).
The most tokens the model can attend to (4096).
estimate unavailable
How many models may stay loaded at once. Blank lets free-VRAM arithmetic decide (a model loads alongside the others only when it provably fits); 1 forces strict single-resident. Saves immediately.
Names that are never evicted to make room for another model. Protects an already-loaded model; it never loads one. Saves immediately.

Appearance

How the wordmark is drawn in the sidebar. Saved in this browser only.

Owner key

The one key that grants full access to this server - the named keys below are limited slices of it. Roll it if it may have leaked, or set one you already use. This browser stays signed in; every other device keeps working only once you give it the new key.

Keys & devices

Mint a named, scope-limited key to pair another device or person - each key gets only the capabilities you check, and a QR is shown to scan (no typing). A coder key is restricted (read + edit, no shell); coder (full) and admin are owner-only. The secret is shown once - revoke a key to unpair that device.

Sign in on this device

Save an API key on this device (a secure cookie) so you stay signed in. Leave blank and Save to sign out.

Companion app

This app talks only to the server that served it. To use LocaLM on your phone, open one of these addresses on the phone (on the same Wi-Fi, or over a private network like Tailscale), trust the certificate once, and install it from there.
Use your browser's Install app / Add to Home screen to pin LocaLM as an app.

Server controls

Control this LocaLM server from here instead of force-closing the window (which can crash without a clean unload). The model is unloaded first either way. Restart brings the server back automatically; Shut down stops it (start it again from your launcher or terminal).

Other running instances

Each localm gui/localm serve you start advertises itself, so other launches can find it instead of double-loading a model. This lists every one running on this machine right now (the server behind this page is not shown here - use Server controls above for that).

Your data

Erase the conversations stored on this device. This cannot be undone.

Report a bug

Describe what went wrong. We save an editable report to your data folder with a safe diagnostic snapshot (OS, GPU, backend, loaded model, settings subset, dependency versions, recent activity, and any browser console errors) - never your API key, config secrets, or chat content. You can review and send it to the maintainer.

Changelog

See what changed in each localm release - the full version history, newest first.

Updates

App launcher

Rebuild the native launcher (LocaLM.exe on Windows, the LocaLM menu entry on Linux) so Task Manager and the taskbar show LocaLM instead of python. Needed again after a Python upgrade, which replaces the interpreter this launcher is a copy of.

Inference runtime

Check for a newer llama.cpp runtime build for your installed backend, or install one on a machine that has none yet. You always start it - it never re-provisions on its own. A build that fails to load on this machine is never kept: setup-llama walks back to an older one that does.
Which prebuilt to install. Changing this re-downloads the runtime; nothing is replaced while a model is loaded, and your pick is never swapped silently if it turns out not to load here.
Optional. A llama.cpp release tag such as b10355 installs exactly that build and pins it; default returns to the build localm ships and confirmed, and latest tracks upstream's newest, which localm has not tested.

Diagnostics

Run localm's active self-checks - the same ones localm doctor performs in a terminal. They try the things that silently break an install: loading the runtime, spawning the worker process every model load needs, and creating a nested venv. Nothing is installed or changed, and a run takes about half a minute.

Logs

Copy every log file of this running instance into a folder you choose - handy when sending diagnostics. Each export goes into its own timestamped subfolder, so nothing is overwritten.

Upload files

Send files from this device or your phone into localm's uploads folder, so models and tools can read them. They are stored on the host, separate from chat attachments. Large model weights use the model downloader instead.