Skip to main content
otter-assist runs the local model behind Otter Assistant. It listens on a Unix socket tied to your Wayland display, does inference on-device, and can call out for knowledge lookup, web search, weather, or desktop search. The chat window is otter-assistant.
otter-assist, otter-assistant, and otter-assist-data ship in otter-shell-extras, not the base otter-shell metapackage. Install with pikman install otter-shell-extras.

Packages

Packaged builds load the model from /usr/lib/otter-assist/models/ (from otter-assist-data). Indexes land under /usr/lib/otter-assist/indexes/.

Start the daemon

If you use the assistant, start this with your session:
Useful flags:
Vulkan is the default backend. Set backend = cpu to load the CPU llama library instead, so the daemon never pulls in Vulkan drivers. Thread count defaults to min(cpu_count, 8).

Control CLI

infer streams plain token chunks as they arrive. --json infer and chat stream newline-delimited JSON events (message_delta, tool_requested, approval_required, final).

Configuration

Defaults live in ~/.config/otter-shell/otter-assist.conf. Use the Assist tab in otter-settings, or edit the file:
Web search only fires on its own when web_enabled and web_always_allow are both true, and the prompt actually needs current or web-backed info. Otherwise you get an approval_required event and no network call. Desktop search returns metadata and content previews only. Every prompt gets the current UTC date and time, so the model does not invent relative dates. The packaged default model is the v12 full-knowledge LFM2.5 1.2B Q4_0 checkpoint.

Session setup

Add otter-assist to compositor autostart when you use Otter Assistant. See Session setup. Keep otter-search running if you want the desktop search tool.