Warning: Loca is still in its early testing phase
Please report issues via email or at the GitHub repository
Getting Started

Installing Loca

Last updated 2026-08-13

Loca comes in two parts: a Client, the app you look at, and a Core, the service that does the work. One installer sets up both. The common setup runs both on your own machine and does everything locally, with nothing sent anywhere until you decide otherwise, but the Core can just as well run on a different computer (see The Basics).

Laptop
Phone
Gaming PC
Client
Core
Client
Core
Phone
Laptop
Gaming PC
Client
Client
Core
Core
An example Loca setup: a Laptop running both a Client and a Core, a Phone running a Client, and a Gaming PC running a Core. The Laptop's Client uses the Laptop's Core, the Phone's Client reaches the Laptop's Core, and the Phone's Client also reaches the Gaming PC's Core.

They connect over the network, so one Core can serve many Clients and one Client can reach many Cores. The picture above is one such spread: a laptop running both halves, a phone that carries only the Client, and a desktop that runs a Core for the heavier work. You do not have to plan any of that up front, though. Run the installer with everything selected and you have a complete local setup; you can add or move Cores whenever you like (see Cores and Pairing).

Run the installer

Head to the Install page, pick your operating system, and download the installer: a .pkg on macOS, a setup .exe on Windows. It installs the Client and, pre-selected, the Core, along with the Core’s options: whether it keeps running in the background at login, and whether other devices on your network may pair with it. Keep the Core selected for the everything-local setup; uncheck it only if this device should connect to a Core on another machine. Re-running the installer over an existing Core updates its files but keeps its settings as they are; the network option can be changed afterwards in the Core’s settings.json.

Linux is the one split platform: the Client is an AppImage, a single portable file you make executable and run (and the build that keeps itself up to date), and the Core is a separate .deb or .rpm package that registers the Core service when you install it. Both are on the same Install page.

Note

If macOS or Windows warns about an unidentified developer the first time you open the installer (signed builds are rolling out), choose Open Anyway in System Settings under Privacy & Security on macOS, or More info, then Run anyway on Windows.

First launch

Open loca. If you installed the Core with it, the app finds it and connects on its own; there is nothing to configure, and you land in a short settings tour. If you skipped the Core, the app instead asks for the address of a Core on another machine and its pairing code (see Cores and Pairing).

Either way, once a Core is connected the Client remembers it and reconnects on its own. You can pair more Cores or switch between them later under Cores in Settings.

Headless and server installs

The same installer runs without a screen, for a Core on a server or an install scripted across machines. Each flag mirrors an installer option; a Core set up this way is paired from another device with a pairing code.

On Windows, run the installer from a terminal with /S for a silent install. /CLIENT=0 skips the app for a Core-only machine; /CORE=0 skips the Core; /SERVICE=0 skips the background service; /BINDALL=1 lets other devices on the network pair; /BEHINDPROXY=1 makes the Core trust a terminating HTTPS proxy in front of it instead of pinning its own certificate (servers only). For example, a headless Core reachable from your network: loca-latest-setup.exe /S /CLIENT=0 /BINDALL=1.

On macOS, run sudo installer -pkg loca-latest.pkg -target / for the default install. To change the selection, pass -applyChoiceChangesXML choices.xml; print the editable choice list with installer -pkg loca-latest.pkg -target / -showChoiceChangesXML. The choice ids are client, core, core-service, core-lan, and core-behindproxy (the proxy-trust option above, available only this way). A Core-only server that other devices may pair with:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
  <dict>
    <key>choiceIdentifier</key><string>client</string>
    <key>choiceAttribute</key><string>enabled</string>
    <key>attributeSetting</key><integer>1</integer>
  </dict>
  <dict>
    <key>choiceIdentifier</key><string>client</string>
    <key>choiceAttribute</key><string>selected</string>
    <key>attributeSetting</key><integer>0</integer>
  </dict>
  <dict>
    <key>choiceIdentifier</key><string>core-lan</string>
    <key>choiceAttribute</key><string>selected</string>
    <key>attributeSetting</key><integer>1</integer>
  </dict>
</array>
</plist>

(The client choice is locked in the GUI, so a Core-only install re-enables it before deselecting it, as above.) And the reverse, the app alone on a machine that connects to a Core elsewhere:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
  <dict>
    <key>choiceIdentifier</key><string>core</string>
    <key>choiceAttribute</key><string>selected</string>
    <key>attributeSetting</key><integer>0</integer>
  </dict>
</array>
</plist>

On Linux, the Core package is already headless: install the .deb or .rpm with your package manager and the service is registered.

What gets installed

A local setup leaves you with two things:

  • The Client, the desktop app you open from Applications, your app menu, or the Start menu.
  • A Core, with all of its state kept under ~/.loca.

That ~/.loca directory is where the Core keeps your sessions, memories, and settings, along with any models you download later. Keeping it on disk is what makes Loca local-first: your conversations are files on the machine running the Core, not rows in someone else’s database. (Snippets and the look of the app are kept by the Client instead, so they travel with it; see The Settings Panel.) If you ever want to take it all back off, see Uninstalling Loca.

Caution

Nothing leaves your machine until you point a setting at an External provider. When you do, the messages in those sessions are sent to that provider to be answered. See Language Model.

Staying current

Loca keeps itself up to date. When a new release is available, the app offers to install it, and the Core can stage and apply its own update in the background, rolling back if anything goes wrong. You can also download the latest installer at any time to jump straight to the newest build.

How new those builds are is set by your channel, which you can leave on its default for now. When you want to try faster-moving builds without disturbing your setup, see Updates and Channels.

Next, open the app and learn the few things particular to Loca in The Basics.