LocalAI/docs/opencode.md
2026-10-15 00:01:26 +02:00

2.5 KiB

opencode mit dem zentralen LocalAI-Server

opencode ist ein Coding-Agent für das Terminal. Er läuft auf dem Client-PC und arbeitet dort auf deinem Code. Nur die Modell-Anfragen gehen an den Server.

1. opencode installieren

System Befehl
Arch / CachyOS sudo pacman -S opencode (oder AUR opencode-bin)
Linux / macOS allgemein curl -fsSL https://opencode.ai/install | bash
macOS (Homebrew) brew install sst/tap/opencode
Windows npm i -g opencode-ai (Node.js nötig) oder scoop install opencode

2. Konfiguration einspielen

System Pfad
Linux / macOS ~/.config/opencode/opencode.json
Windows %USERPROFILE%\.config\opencode\opencode.json
mkdir -p ~/.config/opencode
cp ~/.config/opencode/opencode.json ~/.config/opencode/opencode.json.bak 2>/dev/null
cp client/opencode.json ~/.config/opencode/opencode.json

Die Vorlage liegt unter client/opencode.json. Sie nutzt zwei Umgebungsvariablen:

Variable Wert
LOCALAI_HOST 127.0.0.1 (auf dem Server), 192.168.178.72 (LAN), 100.73.82.219 (NetBird)
LOCALAI_API_KEY LLM_API_KEY aus der .env des Servers

fish (~/.config/fish/config.fish):

set -gx LOCALAI_HOST 100.73.82.219
set -gx LOCALAI_API_KEY <KEY>

bash/zsh (~/.bashrc / ~/.zshrc):

export LOCALAI_HOST=100.73.82.219
export LOCALAI_API_KEY=<KEY>

Windows (PowerShell, dauerhaft):

[Environment]::SetEnvironmentVariable("LOCALAI_HOST", "100.73.82.219", "User")
[Environment]::SetEnvironmentVariable("LOCALAI_API_KEY", "<KEY>", "User")

3. Benutzen

cd ~/mein-projekt
opencode
  • /models zeigt die Modelle. Dort sollten nur LocalAI (alegab-pc)-Einträge stehen.
  • /init erzeugt eine AGENTS.md mit Projektwissen. Das hilft lokalen Modellen sehr und lohnt sich einmal pro Projekt.
  • Tab wechselt zwischen dem Build-Agenten (darf ändern) und dem Plan-Agenten (nur lesen).

Hinweise

  • small_model zeigt bewusst auf dasselbe Modell wie model. Ein zweites Chat-Modell würde auf dem Server bei jedem Titel- oder Zusammenfassungs-Aufruf einen Modellwechsel auslösen.
  • Die Kontextgrenzen in limit.context passen zur Server-Konfiguration (-c in llama-swap/config.yaml). Ändert man die eine Seite, muss man die andere mitziehen.
  • Fehlercodes (401/403/Timeout): siehe Tabelle in continue.md. Die Ursachen sind dieselben.