Features
A reference for the features Loach ships with today. We’re continuously extending this list - including new agentic capabilities. Pick a category below, or open any feature for the full description.
Chat experience
- Provider selectionSwitch between Ollama local models and any OpenAI-compatible endpoint (OpenAI, llama.cpp, LM Studio, vLLM, Groq, OpenRouter…) directly from the chat header - and start Ollama from Loach when it isn’t running, on demand or automatically at launch.
- Local model managementPull, copy, customize and delete local models from inside the app - no terminal required. The Models sidebar tab is a full UI over the Ollama HTTP API.
- Per-chat parametersSet
temperature,top_k,top_p,min_p,max_tokens,context length, per-chat system prompts and more. Per-chat values are layered over the model’s Modelfile defaults and Loach’s built-in defaults. - Personas and tonesPick a role (Code Reviewer, Translator, ELI5…) and a delivery style (Direct, Detailed, Playful, Skeptical, Socratic…). They layer on top of your custom instructions.
- Custom instructionsSet instructions globally, per-Space or per-chat - with template variables for your name, the date, time, weekday and timezone. One set applies: the Space’s if it has them, otherwise the chat’s, otherwise your global ones.
- Generation statsAn inline
tok/s · tokens · elapsedline under every finished reply, so you always know how the model performed. - Markdown renderingFull GitHub-flavoured Markdown with tables, task lists and footnotes - rendered live as the response streams. Thinking traces and tool calls fold into their own collapsible blocks.
- LaTeX mathFormulas typeset with KaTeX -
$$…$$,\(…\),\[…\]and```mathfences - with currency-safe$…$so “$5 and $10” stays prose. Bundled in the app; nothing is fetched. - Code blocks & canvasCode blocks are syntax-highlighted with line numbers and offer Open (in the canvas), Export and Copy, plus Preview on HTML blocks. The resizable code canvas gives any block a wider view, mirrors a reply live while it streams, previews HTML as a page in an offline sandbox, and can hand the snippet straight to VS Code.
- Slash commandsType
/in the composer to open a command palette -/fork,/compact,/model,/set,/stop,/remember,/lockand more. Tab completes, Enter runs, and destructive commands confirm first. - Context & compactionA bar below the message box shows how full the model’s context window is, broken down by system prompt, project instructions, memories, sources and messages. Compact context summarises older turns into the system prompt to free space - without losing your scrollback.
- Pinned responsesPin any reply from its
…menu and jump straight back to it from a Pinned bar under the chat header. Pins survive restarts and travel in backups. - Concurrency & queueOne generation at a time across all chats, with a FIFO queue and a Respond now action for jumping the line. A reply waiting on a tool approval keeps its turn, and cancelled streams preserve their partial output.
- Private ChatA dark-only, ephemeral chat surface. Nothing is written to disk, memory, tools, Library sources and working folders are off-limits, and only Ollama models are offered, never cloud ones - the transcript wipes the moment the overlay closes or Loach locks.
Organization
- SpacesGroup chats around a project, with shared instructions, reference sources - uploads or Library items - memory and a default model. Every chat inside the Space inherits the context.
- MemorySpace memory and opt-in Global memories note lasting facts about you after each reply, update or drop ones that changed, and show an Undo for every change. A searchable editor links each fact back to its chat; Private Chat never reads or writes memory.
- LibrarySave texts, files and links once, group them into datasets, and attach them to any chat (+ → From Library, or
#) or Space. Small sources go to the model in full; big ones are searched by keyword or by meaning, and each reply shows what it used. - SnippetsSave reusable prompts with an optional pinned model and click Run - or Run in Space - to start a fresh chat pre-filled. Parameterise them with custom
{{PLACEHOLDER}}variables - reusable globals or fill-in-on-use prompts. - Chat folders & labelsDrag one chat onto another to file both into a named folder, and tag chats with a colour label from any chat menu - it shows as a dot in the sidebar and Space view.
- Chat archiveMove chats out of the sidebar without deleting them, with an inline Undo if you mis-clicked. Restore or delete them from a dedicated archive view.
- SearchA global Ctrl + K palette across chats, message content, Spaces, Snippets and the Library - narrowed with a scope picker or an
in:filter - plus a browser-style in-chat finder with phrase highlighting. - Import and export contextCopy a chat’s context as Markdown (optionally a compacted summary), and paste an exported chat - JSON or Markdown - or any text back into any chat, inline or folded out of the transcript.
- Fork chatsBranch any conversation into a new chat - same model, Space, folder, settings and Library sources - from the header, a reply’s menu, or
/fork. The copy carries a “Forked from…” badge back to the source.
Input & output
- AttachmentsDrag and drop images, text and code, PDFs and DOCX files (up to 20 MB each) into the composer. Loach extracts the text and inlines it into the request; images go to vision-capable models, scaled down to 1024 px on their longest side by default.
- Attachment previewsClick an attachment to open the right viewer without leaving the chat: an image lightbox, a multi-page PDF preview, the code canvas for text and code, or a file-info card with Save.
- Voice dictationA mic button in the composer turns speech into text in real time. It appears where the system web view supports speech recognition - most Linux builds don’t.
- Web fetchOpt-in: drop up to five URLs into a message and Loach fetches each page, sanitizes it, and inlines the content into the request - no separate browser extension needed.
- Share a messageCopy any message as text or as a rendered chat-bubble image, save the image as a PNG, or open a pre-filled post on Facebook, X, Reddit or LinkedIn. Loach uploads nothing.
- Temporal awarenessOn by default: adds the current date, weekday and timezone to the system prompt, so models can answer “what day is it today?” correctly. Template variables cover the time too.
Advanced
- MCP supportRegister Model Context Protocol servers over Streamable HTTP or as local programs (
npx,uvx,node…), test the handshake and inspect their tools. A native dialog asks before any local program starts, and each tool call waits for your Allow once, Always allow or Deny unless you trust the server. - Built-in toolsLocal utilities the model can call mid-answer -
calculate,datetime,hash,json,unit_convert, PDF generation and more. Each toggles in Settings → Tools; all start off. - Work in foldersAdd a folder to a chat from the composer’s + menu and the model can list, find, read, search and edit its files - sandboxed to that folder, with no shell. Writes, edits, moves and deletes show you the change and ask first unless you allow that tool for the chat, and a
LOACHFILE.mdat the root adds the project’s own instructions. - Default model selectorPick the model new chats open with - a specific one, or whichever you used last, overall or per provider. No need to re-select on each fresh conversation.
- Model preloadingOptionally warm your default local model into VRAM at launch, so the first message streams faster.
- Low VRAM modeGlobal or per-chat toggle that sends Ollama’s
low_vramflag with every request - useful on lower-spec devices.
Security & data
- App lockOptional PIN, password or PIN + password gate at launch, with opt-in auto-lock after inactivity or on minimize and a lock-now shortcut. Credentials are hashed with Argon2id and stored in the OS credential manager.
- Data managementBack up your data to a JSON file (MCP headers, environment variables, secrets in a server’s arguments or address, and chats’ working folders are left out), restore it, or wipe with a few clicks - with a storage breakdown showing what your chats, attachments, Spaces and Library actually weigh on disk.
Appearance & updates
- ThemesTwo themes - Aurora (glassy, gradient) and Solid (flat) - each in Dark and Light, or following your system. Three font sizes scale text across the app.
- OTA updatesGet new features, fixes and security patches directly from the app on every install format - Windows, AppImage,
.deb/.rpmand macOS - with an opt-in check at launch that tells you when a new version is out.
Reference
- Onboarding wizardThe six-step first-launch wizard: welcome, provider, defaults, tools, custom instructions and a final screen. Sizes its model recommendation to your GPU (or RAM), and re-runs after a factory reset.
- Keyboard shortcutsSearch, new chat, find, attach, delete chat, sidebar and panel toggles, lock-now, the in-app cheat sheet, plus composer and palette keys - at a glance.