Utvecklare

Installation av OpenCode och konfiguration av OmniProxy

Vill du ha en kodningsassistent som kan förstå ditt projekt utan att fastna i installation och konfiguration? OpenCode kan startas från en terminal, IDE eller skrivbord, och sedan anslutas steg för steg till den modelltjänst du använder.

Dokumentation granskad
9 okt. 2026
Testad version
OpenCode 1.18.34

OpenCode är en öppen källkod-kodningsassistent som låter dig skriva kod från en terminal, IDE eller skrivbord. Den lagrar inte din kod eller kontext, vilket gör den lämplig för integritetskänsliga projekt. build används för att ändra ett projekt, medan plan är skrivskyddad som standard och är användbar för att förstå okänd kod och planera ändringar innan de görs. Du kan välja en modelltjänst baserat på dina behov.

Innan du börjar

Installationsskriptet är det enklaste alternativet. Du behöver en modern terminal—ett terminalprogram som kan köra kommandon och arbeta med projektfiler—som WezTerm, Alacritty, Ghostty eller Kitty. På Windows föredras WSL. Det tillhandahåller en Linux-miljö inom Windows med mer komplett prestanda och funktionalitet.

Enklast

Installationsskript

  • curl opencode.ai/install
  • Använd direkt på macOS Linux
  • WSL rekommenderas på Windows

macOS Linux

Homebrew tap

  • anomalyco/tap/opencode
  • Uppdateras oftare än formeln
  • Ett paket finns även för Arch

Inbyggd Windows

Pakethanterare

  • choco eller scoop
  • Eller installera globalt med npm
  • Du kan även ladda ner den från Releases
Börja med installationsskriptet. Om du redan är bekväm med pakethanterare, använd ett av de andra listade kommandona.

Förbered även modell-ID:t från den aktuella modellistan. Ett modell-ID är namnet som tjänsten använder för att identifiera en specifik modell korrekt.

Installera och starta för första gången

Det enklaste installationskommandot är:

curl -fsSL https://opencode.ai/install | bash

Du kan också använda en av dessa installationsmetoder:

  • Node.js: npm install -g opencode-ai. Bun, pnpm och Yarn har också motsvarande globala installationskommandon; se introduktionssidan i slutet av denna guide.
  • Homebrew på macOS och Linux: brew install anomalyco/tap/opencode. Använd denna tap eftersom den uppdateras oftare än brew install opencode, som underhålls av Homebrew-teamet.
  • Arch Linux: använd sudo pacman -S opencode för den stabila releasen, eller AUR-paketet opencode-bin för en nyare version.
  • Windows: använd choco install opencode eller scoop install opencode. Du kan också använda npm install -g opencode-ai. Binärfiler kan även laddas ner från Releases. Stöd för installation med Bun på Windows är fortfarande under utveckling.

Gå till din projektkatalog och starta sedan OpenCode:

cd /path/to/project
opencode

När du använder den för första gången kan du köra /init. Den analyserar projektet och skapar AGENTS.md i projektets rot. Denna fil kan checkas in i Git så att projektet behåller dessa instruktioner.

Hämta anslutningsvärden från OmniProxy

baseURL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Copy from the current OmniProxy model list

baseURL är tjänsteadressen, API Key är åtkomstuppgiften och Model ID är modellens fullständiga namn.

När du använder /v1/chat/completions, ställ in npm-paketet till @ai-sdk/openai-compatible. Chat Completions är en typ av chattförfrågningsgränssnitt. Växla till @ai-sdk/openai endast när modellen använder /v1/responses. När OmniProxy används via chat completions-slutpunkten, behåll kompatibilitetspaketet.

Kopiera hela modell-ID:t från OmniProxys aktuella lista, inklusive eventuella snedstreck. Per 2026-10-09 var två referens-ID:n claude-sonnet-5-5 och gpt-6-luna. gpt-6-luna stöder Chat Completions; funktionsanrop via Chat Completions stöds endast när reasoning_effort är none. Kopiera inte ett ID som inte finns i listan.

Ange verktygskonfigurationen

En leverantör (Provider) kan förstås som en uppsättning konfigurationsvärden som OpenCode använder för att ansluta till en modelltjänst. Leverantörsdokumentationen behandlar en OpenAI-kompatibel tjänst som inte finns listad under /connect som en anpassad leverantör. En OpenAI-kompatibel tjänst använder samma förfrågningsformat och kan anropas av samma typ av klient.

  1. Kör /connect i OpenCode och scrolla till Other.
  2. Ange ett leverantörs-ID. Exemplet nedan använder omniproxy. Välj ett ID som är lätt att komma ihåg eftersom du måste använda samma i konfigurationsfilen.
  3. Ange OmniProxy API-nyckeln. Detta steg sparar endast autentiseringsuppgiften; adressen och modellerna måste fortfarande läggas till i opencode.json. Autentiseringsuppgiften lagras i ~/.local/share/opencode/auth.json.
  4. Skapa eller ändra opencode.json i projektkatalogen:
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "omniproxy": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OmniProxy",
      "options": {
        "baseURL": "https://your-omniproxy-origin.example/v1"
      },
      "models": {
        "claude-sonnet-5-5": { "name": "Claude Sonnet 5.5" },
        "gpt-6-luna": { "name": "GPT-6 Luna" }
      }
    }
  }
}
  1. Kör /models. Den anpassade leverantören och dess modeller visas i listan.

ID:t som anges under /connect måste matcha nyckeln i opencode.json. Lägg inte en riktig hemlig nyckel i denna fil. Om du inte använder /connect kan du använda miljövariabelsyntax i options.apiKey, såsom {env:VARIABLE_NAME}. Vid testning den 2026-10-09 med OpenCode 1.18.34 anslöt även det att lägga nyckeln direkt i projektets options.apiKey utan att använda /connect. Om gatewayen inte validerar nyckeln kan detta värde vara en platshållarsträng som endast används på den lokala maskinen. Nycklarna under models måste använda de fullständiga ID:na från listan.

Nyckel

/connect

  • Välj Other längst ner
  • Välj ditt eget leverantörs-ID
  • Lagras i auth.json

Projekt

opencode.json

  • Leverantörsnyckeln måste använda samma namn
  • Använd ett kompatibelt npm-paket
  • baseURL slutar med /v1

Välj

/models

  • Modellen visas i listan
  • Välj en innan du ställer en fråga
  • Använd ID:t från gateway-listan
Nyckeln och adressen lagras på två olika platser. Leverantörs-ID:t måste vara detsamma på båda.

Verifiera med en verklig uppgift

Kör en verklig uppgift från projektkatalogen först. Modellreferensformatet är Provider ID/model ID; bevara alla snedstreck inom modell-ID:t:

opencode run --model omniproxy/claude-sonnet-5-5 --auto "Explain what a file you specify does. Do not modify the file."

--auto tillåter denna körning att använda verktyg såsom fil-läsningsverktyg. Vid testning den 2026-10-09 med OpenCode 1.18.34 läste den framgångsrikt innehållet i den angivna filen. Den första körningen tog cirka två minuter.

För interaktiv användning, kör opencode, välj sedan en modell med /models. Du kan använda @ för att söka efter filer. Använd opencode auth list för att bekräfta autentiseringsuppgiften som sparats via /connect, kontrollera sedan OmniProxys förfrågningsloggar för att verifiera källan och modell-ID:t.

Starta

opencode startar

  • cd först till projektet
  • auth list visar ID:t
  • Konfigurationsfilen finns i projektet

Uppgift

Den läste koden

  • Fråga om en specifik fil
  • Granska dess förklaring
  • Använd /undo om den har fel

Loggar

Synliga i gatewayen

  • Källan är OpenCode
  • Modell-ID matchar
  • Checka inte in nyckeln
Efter att ha sparat konfigurationsfilen, slutför en verklig förfrågan inifrån projektet.

Vanliga fel

  • OmniProxy visas inte under /models: Kontrollera att ID:t som anges under /connect matchar nyckeln i opencode.json, att npm är inställt till @ai-sdk/openai-compatible och att baseURL slutar med /v1.
  • Autentiseringsuppgiften saknas: Kör opencode auth list. Leverantörer som Bedrock som förlitar sig på miljövariabler visas inte här; en anpassad leverantör konfigurerad via /connect bör vara synlig.
  • Windows-funktionalitet är ofullständig: Använd installationsskriptet inuti WSL istället.
  • Modell-ID:t är ogiltigt: Kopiera det igen från OmniProxys aktuella lista och uppdatera motsvarande nyckel under models.
  • Förfrågningar går till fel slutpunkt: Behåll @ai-sdk/openai-compatible för chat completions. Ändra inte paketet för Responses-gränssnittet om inte den modellen på OmniProxy faktiskt använder /v1/responses.

Officiella referenser

För installation, se OpenCode introduction. För anpassade leverantörer, se Providers. För modell-ID:n som används i exemplen, se Claude model overview och GPT-6 Luna.

Ersätt varje platshållare med värden från din egen OmniProxy-konfiguration. Publicera aldrig en riktig nyckel.

Ett sparat resultat eller HTTP 200 ensamt bevisar inte fullständig agentkompatibilitet. Kontrollera källa och modell i OmniProxys anropslogg.

Officiella källor · OpenCode ↗