Programistyczne

Instalacja OpenCode i konfiguracja OmniProxy

Chcesz, aby asystent programistyczny rozumiał projekt, ale nie chcesz utknąć na instalacji i konfiguracji? OpenCode można uruchomić w terminalu, IDE lub jako aplikację komputerową, a następnie krok po kroku połączyć z używaną usługą modeli.

Dokumentacja sprawdzona
9 paź 2026
Przetestowana wersja
OpenCode 1.18.34

OpenCode to asystent programistyczny typu open source, który umożliwia pisanie kodu w terminalu, IDE lub aplikacji komputerowej. Nie przechowuje kodu ani kontekstu, dlatego nadaje się do projektów, w których prywatność ma znaczenie. Tryb build służy do modyfikowania projektu, natomiast plan jest domyślnie tylko do odczytu i sprawdza się przy poznawaniu nieznanego kodu oraz planowaniu zmian. Usługę modeli można wybrać zgodnie z własnymi potrzebami.

Przygotowanie przed instalacją

Najprostszym rozwiązaniem jest skrypt instalacyjny. Potrzebny jest nowoczesny terminal, czyli program terminalowy umożliwiający wykonywanie poleceń i pracę z plikami projektu, na przykład WezTerm, Alacritty, Ghostty lub Kitty. W systemie Windows najlepiej użyć WSL — narzędzia pozwalającego uruchomić środowisko Linux w systemie Windows, które oferuje pełniejszą funkcjonalność i lepszą wydajność.

Najłatwiej

Skrypt instalacyjny

  • curl opencode.ai/install
  • Użyj bezpośrednio na macOS Linux
  • W Windows zalecany jest WSL

macOS Linux

Homebrew tap

  • anomalyco/tap/opencode
  • Aktualizowany częściej niż formuła
  • Pakiet jest też dostępny dla Arch

Natywny Windows

Menedżer pakietów

  • choco lub scoop
  • Lub instalacja globalna przez npm
  • Możesz też pobrać pliki z sekcji Releases
Najpierw użyj skryptu instalacyjnego. Jeśli masz już doświadczenie z menedżerami pakietów, możesz skorzystać z innych wymienionych poleceń.

Przygotuj również identyfikator modelu z aktualnej listy modeli. Model ID to nazwa używana przez usługę do jednoznacznego rozpoznawania konkretnego modelu.

Instalacja i pierwsze uruchomienie

Najłatwiejsze polecenie instalacyjne to:

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

Można również skorzystać z następujących metod instalacji:

  • Node.js: npm install -g opencode-ai. Bun, pnpm i Yarn również mają odpowiednie polecenia instalacji globalnej — opisano je na stronie przedstawionej na końcu tego przewodnika.
  • Homebrew w systemach macOS i Linux: brew install anomalyco/tap/opencode. Użyj tego repozytorium tap, ponieważ jest aktualizowane częściej niż utrzymywane przez zespół Homebrew polecenie brew install opencode.
  • Arch Linux: wersja stabilna — sudo pacman -S opencode; nowszą wersję można zainstalować z AUR jako opencode-bin.
  • Windows: choco install opencode lub scoop install opencode; można także użyć npm install -g opencode-ai. Plik binarny można również pobrać z sekcji Releases. Obsługa instalacji za pomocą Bun w systemie Windows jest nadal rozwijana.

Przejdź do katalogu projektu, a następnie uruchom OpenCode:

cd /path/to/project
opencode

Przy pierwszym użyciu możesz uruchomić /init. Polecenie przeanalizuje projekt i utworzy plik AGENTS.md w jego katalogu głównym. Plik można dodać do Git, aby zachować te informacje w projekcie.

Pobieranie parametrów połączenia z OmniProxy

baseURL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Skopiuj pełny identyfikator z aktualnej listy modeli OmniProxy

baseURL to adres usługi, API Key to dane uwierzytelniające, a Model ID to pełna nazwa modelu.

W przypadku używania ścieżki /v1/chat/completions pakiet npm powinien mieć wartość @ai-sdk/openai-compatible. Chat Completions to interfejs obsługujący żądania konwersacyjne. Pakiet należy zmienić na @ai-sdk/openai tylko wtedy, gdy model korzysta ze ścieżki /v1/responses. Jeśli OmniProxy używa ścieżki uzupełnień czatu, zachowaj pakiet zgodności.

Skopiuj cały identyfikator modelu z aktualnej listy OmniProxy, zachowując również ukośniki. Dwa identyfikatory porównawcze z 2026-10-09 to claude-sonnet-5-5 i gpt-6-luna. Model gpt-6-luna obsługuje Chat Completions; wywoływanie funkcji w Chat Completions jest obsługiwane tylko wtedy, gdy reasoning_effort ma wartość none. Nie kopiuj identyfikatora, którego nie ma na liście.

Wprowadzanie konfiguracji narzędzia

Provider można rozumieć jako zestaw ustawień używanych przez OpenCode do łączenia się z usługą modeli. Usługę zgodną z OpenAI, której nie ma na liście /connect, dokumentacja Provider określa jako niestandardowego Provider. Usługa zgodna z OpenAI używa takiego samego formatu żądań i może być obsługiwana przez klientów tego samego typu.

  1. W OpenCode uruchom /connect i przewiń do pozycji Other.
  2. Wprowadź Provider ID. W dalszej części używany jest identyfikator omniproxy. Powinien być łatwy do zapamiętania, ponieważ tego samego identyfikatora trzeba użyć w pliku konfiguracyjnym.
  3. Wprowadź API Key OmniProxy. Ten krok zapisuje tylko dane uwierzytelniające; adres i modele trzeba jeszcze dodać do pliku opencode.json. Dane uwierzytelniające są przechowywane w ~/.local/share/opencode/auth.json.
  4. Utwórz lub zmodyfikuj plik opencode.json w katalogu projektu:
{
  "$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. Uruchom /models. Niestandardowy Provider i jego modele pojawią się na liście.

Identyfikator podany w /connect musi być zgodny z kluczem w pliku opencode.json. Nie zapisuj prawdziwego klucza w tym pliku. Jeśli nie używasz /connect, w options.apiKey możesz zastosować zapis zmiennej środowiskowej, na przykład {env:nazwa_zmiennej}. W teście z 2026-10-09 przeprowadzonym w OpenCode 1.18.34 połączenie działało również po zapisaniu klucza bezpośrednio w options.apiKey projektu, bez używania /connect. Jeśli brama nie weryfikuje klucza, ta wartość może być ciągiem znaków zastępczych używanym wyłącznie lokalnie. Klucze w models muszą być pełnymi identyfikatorami z listy.

Klucz

/connect

  • Wybierz na samym dole Other
  • Ustal własny Provider ID
  • Jest przechowywany w auth.json

Projekt

opencode.json

  • Klucz provider musi mieć tę samą nazwę
  • Dla npm użyj pakietu kompatybilności
  • baseURL kończy się na /v1

Wybór

/models

  • Model pojawi się na liście
  • Wybierz jeden, a następnie zadaj pytanie
  • ID określa lista bramy
Klucz i adres są zapisywane w dwóch różnych miejscach. Provider ID musi być w obu miejscach taki sam.

Weryfikacja za pomocą rzeczywistego zadania

Najpierw uruchom rzeczywiste zadanie w katalogu projektu. Format odwołania do modelu to Provider ID/Model ID; zachowaj ukośniki występujące w Model ID:

opencode run --model omniproxy/claude-sonnet-5-5 --auto "Wyjaśnij, do czego służy wskazany przeze mnie plik, ale nie modyfikuj go."

Opcja --auto pozwala podczas tego uruchomienia korzystać z narzędzi, takich jak odczytywanie plików. W teście z 2026-10-09 przeprowadzonym w OpenCode 1.18.34 odczytano zawartość wskazanego pliku. Pierwsze uruchomienie trwało około dwóch minut.

Aby korzystać z trybu interaktywnego, uruchom opencode, a następnie wybierz model za pomocą /models. W obsługiwanym sposobie użycia można wyszukiwać pliki za pomocą @. Polecenie opencode auth list pozwala sprawdzić dane uwierzytelniające zapisane przez /connect, a w rejestrze wywołań OmniProxy można potwierdzić źródło i Model ID.

Uruchomienie

opencode działa

  • Najpierw przejdź cd do projektu
  • auth list wyświetla ID
  • Plik konfiguracji znajduje się w projekcie

Zadanie

Przeczytał kod

  • Zapytaj o konkretny plik
  • Sprawdź jego opis
  • Jeśli coś jest nie tak, użyj /undo

Rejestr

Brama go widzi

  • Źródło to OpenCode
  • Identyfikator modelu jest zgodny
  • Nie zatwierdzaj klucza
Po zapisaniu pliku konfiguracyjnego wykonaj jeszcze jedno rzeczywiste zapytanie w projekcie.

Częste błędy

  • Brak OmniProxy na liście /models: sprawdź, czy identyfikator z /connect jest zgodny z kluczem w opencode.json, czy npm ma wartość @ai-sdk/openai-compatible oraz czy baseURL kończy się na /v1.
  • Brak danych uwierzytelniających: uruchom opencode auth list. Provider korzystający ze zmiennych środowiskowych, taki jak Bedrock, nie pojawi się na tej liście; niestandardowy Provider skonfigurowany za pomocą /connect powinien być widoczny.
  • Niepełna funkcjonalność w systemie Windows: użyj skryptu instalacyjnego w WSL.
  • Nieprawidłowy Model ID: skopiuj go ponownie z aktualnej listy OmniProxy i zmień klucz w models.
  • Żądanie trafia do niewłaściwego interfejsu: dla uzupełnień czatu zachowaj @ai-sdk/openai-compatible. Nie zmieniaj pakietu ze względu na interfejs Responses, chyba że dany model w OmniProxy rzeczywiście korzysta z /v1/responses.

Oficjalne materiały

Informacje o instalacji znajdziesz w opisie OpenCode. Informacje o niestandardowych Provider znajdują się na stronie Providers. Identyfikatory modeli użyte w przykładach opisano na stronach Przegląd modeli Claude oraz GPT-6 Luna.

Zastąp każdy placeholder wartościami z własnej konfiguracji OmniProxy. Nigdy nie publikuj prawdziwego klucza.

Zapisany wynik lub HTTP 200 samo w sobie nie dowodzi pełnej kompatybilności Agenta. Sprawdź źródło i model w rejestrze połączeń OmniProxy.

Źródła oficjalne · OpenCode ↗