Szybki start z OpenCode: instalacja, konfiguracja i uruchomienie

Zainstaluj Oh My Opencode i pracuj szybciej.

Page content

Oh My Opcode przekształca OpenCode w harnes do kodowania wieloagentowego: orchestrator deleguje zadania do specjalistycznych agentów działających równolegle.

oh my opencode agents with laptops and gpu

Najkrótszy model mentalny, którego potrzebujesz: zainstaluj wtyczkę, a następnie użyj słowa kluczowego ultrawork (lub ulw), gdy potrzebujesz wykonania o pełnej mocy przez wielu agentów.

Ten szybki start obejmuje instalację i konfigurację na pierwszy dzień. Gdy już zaczniesz:

Wszelkie szersze narzędzia AI dla programistów znajdziesz w przeglądzie narzędzi dla deweloperów AI. Jeśli wolisz alternatywę opartą na piaskownicy i działającą w przeglądarce zamiast OpenCode, OpenHands przyjmuje inne podejście architektoniczne do kodowania agentowego.

Dlaczego istnieje Oh My Opencode

OpenCode to open-source’owy agent do kodowania AI, który działa jako interfejs terminalowy i obsługuje nieinteraktywne uruchomienia CLI do skryptów i automatyzacji.

Oh My Opencode podnosi ten limit znacznie wyżej. Dodaje pełną warstwę orkiestracji zbudowaną wokół agenta „Sisyphus", współpracę wielu specjalistów i ściślejszą integrację narzędzi. Wynikiem jest system, w którym złożone zadania inżynierskie — te, które normalnie wymagałyby nadzoru nad kilkoma promptami — są planowane, delegowane i weryfikowane w jednym przepływie pracy.

Dwie koncepcje pojawiają się stale, więc opanuj je przed cokolwiek innym:

  • Tryb Ultrawork: przełącznik przepływu pracy aktywowany słowem kluczowym. Dodanie ultrawork lub ulw do promptu aktywuje równoległe wykonanie w tle, integrację z LSP, zarządzanie kontekstem i automatyczną dekompozycję zadań — to nie jest tylko wybór stylistyczny.
  • Specjalistyczne agenty: nazwane role, takie jak @oracle dla architektury i @librarian dla badań i dokumentacji. Możesz ich wywołać jawnie lub pozwolić orchestratorowi przekierować do nich automatycznie.

W tym artykule terminy Oh My Opencode, oh-my-opencode oraz Oh My OpenCode są używane zamiennie — wszystkie odnoszą się do tej samej wtyczki w ekosystemie OpenCode.

Wymagania wstępne i terminologia

Najpierw musisz zainstalować i uruchomić OpenCode. Zobacz nasz Szybki start z OpenCode, aby dowiedzieć się, jak zainstalować, skonfigurować i uruchomić.

Domyślnie opencode uruchamia interfejs terminalowy, gdy jest wywoływany bez argumentów, a możesz również użyć opencode run ... do nieinteraktywnego wykonania.

Oh My Opencode wymaga skonfigurowania co najmniej jednego dostawcy. OpenCode ładuje dostawców z poświadczeń, zmiennych środowiskowych lub projektu .env. Najszybszy sposób, aby to załatwić:

opencode auth login
opencode auth list

Poświadczenia przechowywane są w pliku ~/.local/share/opencode/auth.json.

Warto znać jedną nazwową dziwność z góry: repozytorium GitHub upstream jest teraz brandowane jako oh-my-openagent („dawniej oh-my-opencode"), ale nazwa wtyczki i pakietu w konfiguracjach nadal brzmi oh-my-opencode. Obie nazwy krążą w postach społecznościowych — to ta sama rzecz.

Szybki start z instalacją

Istnieje wiele ścieżek (instalator CLI, ręczne klonowanie repo lub „niech agent zainstaluje"). Prawidłowy wybór zależy od tego, czy chcesz powtarzalny przepływ instalacji, czy pełną kontrolę manualną.

Jeśli masz zainstalowanego Buna, bunx to odpowiednik npx dla Buna, zaprojektowany do szybkiego uruchamiania pakietów npm bez osobnego kroku instalacji globalnej.

Aby zainstalować bunx na Linuksie:

curl -fsSL https://bun.com/install | bash

Automatyczna instalacja z OpenCode

Możesz wykonać prompt w OpenCode i zainstaluje on OmO automatycznie.

Install and configure oh-my-opencode by following the instructions here:
https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/heads/dev/docs/guide/installation.md

Zada Ci kilka pytań dotyczących subskrypcji LLM, które posiadasz, i zarejestruje Oh My Opencode w wtyczkach OpenCode.

Ścieżka ręczna: uruchom instalator Oh My Opencode za pomocą bunx lub npx

Interaktywny instalator, który zapyta o Twoje dostawców i automatycznie wygeneruje „optymalną" konfigurację, a także nieinteraktywny tryb do automatyzacji i agentów.

Instalacja interaktywna:

bunx oh-my-opencode install
# lub jeśli wolisz narzędzia npm
npx oh-my-opencode install

Instalacja nieinteraktywna (przydatna dla skryptów zaopatrzeniowych, obrazów CI lub „instalacji agenta"):

bunx oh-my-opencode install --no-tui \
  --claude=<yes|no|max20> \
  --openai=<yes|no> \
  --gemini=<yes|no> \
  --copilot=<yes|no>

Co robi instalator na wysokim poziomie:

  • rejestruje wtyczkę w konfiguracji OpenCode
  • generuje przypisania modeli na podstawie dostępności dostawcy i reguł zapasowych
  • zapisuje konfigurację oh-my-opencode obok plików konfiguracyjnych OpenCode

Ścieżka ręczna: sklonuj repo i uruchom skrypt instalacyjny

Istnieje również „ludzki" przepływ manualny: sklonuj repozytorium, zainstaluj zależności, a następnie uruchom skrypt instalacyjny, który wykryje lokalizację Twojej konfiguracji OpenCode, utworzy kopię zapasową i połączy ustawienia.

git clone https://github.com/code-yeongyu/oh-my-opencode.git ~/.oh-my-opencode
cd ~/.oh-my-opencode
npm install
npm run install

Jeśli skrypt nie może automatycznie znaleźć Twojej konfiguracji OpenCode, ustaw zmienną środowiskową ścieżki konfiguracyjnej jawnie przed ponownym uruchomieniem instalatora.

Szybka lista kontrolna weryfikacji

Po instalacji sprawdź trzy rzeczy:

  • plik konfiguracyjny Oh My Opencode istnieje w rozpoznawalnej lokalizacji
  • można wywołać specjalistyczne agenty
  • słowo kluczowe ultrawork działa zgodnie z oczekiwaniami

Przykłady do skopiowania:

# Pokaż plik konfiguracyjny wtyczki (spróbuj lokalizacji pasującej do Twojego ustawienia)
cat .opencode/oh-my-opencode.json
cat ~/.config/opencode/oh-my-opencode.json

# Szybki test agenta
opencode run "Use @oracle to analyse the architecture of the current project"

# Szybki test uruchomienia ultrawork
opencode run "ulw list all configuration files in this project"

Jeśli wszystkie trzy testy przejdą, jesteś naprawdę gotowy — nie tylko zainstalowany.

Konfiguracja i strojenie

Gdzie znajduje się konfiguracja i jak działa priorytet

Oh My Opencode szuka plików konfiguracyjnych w kolejności priorytetowej, przy czym konfiguracja na poziomie projektu ma pierwszeństwo przed konfiguracją na poziomie użytkownika. Dokumentowana kolejność wyszukiwania to:

  • .opencode/oh-my-opencode.json (poziom projektu, najwyższy priorytet)
  • ~/.config/opencode/oh-my-opencode.json (poziom użytkownika na macOS i Linuksie)
  • %APPDATA%\opencode\oh-my-opencode.json (poziom użytkownika na Windows)

Sama OpenCode również obsługuje wiele źródeł konfiguracji i łączy je zamiast zastępować, przy czym późniejsze źródła nadpisują wcześniejsze tylko w przypadku konfliktu kluczy. To ma znaczenie, ponieważ zazwyczaj chcesz stabilną bazę globalną plus nadpisywania na poziomie repozytorium.

Obsługa JSONC dla zdrowych konfiguracji

Zarówno OpenCode, jak i Oh My Opencode obsługują JSONC, co oznacza, że możesz zachowywać komentarze i przecinki końcowe w plikach konfiguracyjnych bez łamania parsowania. Jest to szczególnie pomocne przy dokumentowaniu, dlaczego wybrano określone limity lub modele.

Słowo kluczowe „ultrawork" i co ono włącza

ultrawork (lub ulw) to przełącznik trybu, do którego sięgniesz najczęściej. Wstaw go do opisu zadania, a system włączy równoległe wykonanie w tle, integrację z LSP, zarządzanie kontekstem i automatyczną dekompozycję zadań. To nie jest podpowiedź dla modelu — to twardy wyzwalacz, który zmienia strukturę całego uruchomienia.

Równoległość i zadania w tle

Oh My Opencode udostępnia kontrolę równoległości dla wykonania w tle poprzez sisyphus.max_concurrent_tasks.

Nie gonić tutaj za wysoką równoległością. Każdy plan dostawcy ma sufit — na przykład Claude Max20 kończy się na 3 zadaniach równoległych — a przekroczenie tego prowadzi do niestabilnych ukończeń i trudnych do debugowania przekroczeń czasu. Zacznij ostrożnie i zwiększaj tylko po czystych uruchomieniach.

Minimalna konfiguracja równoległości wygląda tak:

{
  "sisyphus": {
    "enabled": true,
    "max_concurrent_tasks": 2,
    "task_timeout": 300
  }
}

Równoległość 2 jest bezpiecznym punktem startowym dla większości planów.

Routing modeli dla poszczególnych agentów i kategorii

Oh My Opencode zbudowano wokół idei, że różne zadania korzystają z różnych modeli, więc konfiguracja obsługuje:

  • wybór modeli, warianty i rozszerzenia promptów dla poszczególnych agentów
  • routing oparty na kategoriach dla pracy „szybkiej" vs „głębokiej"
  • modele zapasowe, gdy Twój preferowany dostawca jest niedostępny

Pogłębione spojrzenie na specjalistyczne agenty omawia pełny system routing modeli w szczegółach — w tym dlaczego pewne agenty nie mogą być przełączane na niewłaściwą rodzinę modeli, pełne łańcuchy zapasowe i jak bezpiecznie nadpisywać modele dla konfiguracji self-hosted.

Rozdzielanie modeli jest warstwowe: Twoje jawnie nadpisanie wygrywa, następnie zapasowy dostawca, a potem domyślny system. Łańcuch zapasowy zaczyna się od Twoich natywnych dostawców i może zejść do alternatyw, takich jak GitHub Copilot, jeśli nic innego nie jest dostępne — co oznacza, że źle skonfigurowany agent rzadko zawiedzie cicho; po prostu użyje słabszego modelu.

Praktyczna konfiguracja startowa, którą możesz dostosować (zalecany JSONC):

{
  "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",

  // Zachowaj równoległość ostrożnie, dopóki nie zaufasz limitom swojego dostawcy
  "sisyphus": {
    "enabled": true,
    "max_concurrent_tasks": 2,
    "task_timeout": 300
  },

  // Strojenie agentów
  "agents": {
    "oracle": {
      "enabled": true,
      "model": "openai/gpt-5.2",
      "variant": "high",
      "temperature": 0.7,
      "prompt_append": "Provide concise tradeoffs and a clear recommendation"
    },
    "librarian": {
      "enabled": true,
      "model": "google/gemini-3.1-pro"
    }
  },

  // Routing kategorii dla szybkich zapytań vs głębszej pracy
  "categories": {
    "quick": { "model": "opencode/gpt-5-nano" },
    "visual-engineering": { "model": "google/gemini-3.1-pro" }
  }
}

Pole $schema jest warte zachowania — odblokowuje autouzupełnianie w większości edytorów i wykrywa literówki w nazwach agentów, zanim zmarnujesz uruchomienie na błędną konfigurację.

Integracja MCP i haczyki

Oh My Opencode obsługuje serwery MCP (Model Context Protocol) poprzez blok konfiguracyjny, w którym definiujesz polecenie serwera, argumenty i zmienne środowiskowe.

W praktyce łatwiejszą ścieżką jest zarządzanie MCP bezpośrednio przez OpenCode za pomocą grupy poleceń opencode mcp — obsługuje dodawanie, listowanie i uwierzytelnianie OAuth bez konieczności ręcznego dotykania plików konfiguracyjnych.

Przykłady przepływów pracy do skopiowania

Dwa poniższe przykłady są intencjonalnie ukształtowane jak „prawdziwe repozytorium": pokazują, jak wywołać orkiestrację, jak celować w specjalistyczne agenty i jak utrzymać wyniki weryfikowalne.

Przykład: Przegląd architektury z Oracle i mapą repo

Użyj tego, gdy dołączasz do nowego kodu bazowego lub dziedziczysz usługę i potrzebujesz szybkiego, aktywnego widoku architektury. Oracle jest specjalistą tylko do odczytu — nie może wprowadzać zmian, może tylko doradzać.

Uruchom to z korzenia projektu:

opencode

OpenCode uruchomi swój interfejs terminalowy domyślnie, gdy zostanie uruchomiony bez argumentów.

Następnie poproś Oracle o wygenerowanie analizy architektury i konkretnego planu refaktoryzacji lub modularizacji:

Use @oracle to analyse the architecture of this repository.
Identify the key bounded contexts, major dependency edges, and the highest risk components.
End with a refactoring plan that can be executed in small PRs.

Dla logowania lub skryptów, pomiń całkowicie TUI i użyj opencode run:

opencode run "Use @oracle to analyse the architecture of this repository and propose a staged refactor plan"

opencode run przekazuje prompt bezpośrednio i kończy się po zakończeniu — dokładnie tego potrzebujesz dla kroków CI lub potoków automatyzacji.

Przykład: Wdrożenie pełnej funkcjonalności z orkiestracją ultrawork

Użyj tego, gdy potrzebujesz funkcji, która dotyka wielu plików lub warstw, lub gdy chcesz automatycznie włączyć zadania w tle i specjalistyczne agenty.

Zacznij od promptu ultrawork:

opencode run "ultrawork implement a new /health endpoint with readiness and liveness checks, add tests, update documentation, and verify it runs locally"

Słowo kluczowe ultrawork aktywuje wszystkich skonfigurowanych specjalistycznych agentów, równoległość zadań w tle i głębsze narzędzia jednym ruchem. Nie potrzebujesz osobnych promptów do planowania, implementowania i testowania.

Kiedy używasz ultrawork, nadal możesz jawnie sterować zachowaniem specjalistów. Na przykład możesz wymusić najpierw projekt architektury:

opencode run "ultrawork ask @oracle to design the endpoint contract and dependencies first, then implement with minimal changes and add tests"

Łączenie ultrawork z jawnymi odwołaniami do agentów, takimi jak @oracle, jest idealnym miejscem: otrzymujesz pełną orkiestrację, ale nadal kontrolujesz, który specjalista zajmuje się kluczowymi decyzjami projektowymi.

Jedna rzecz, którą trzeba zrobić dobrze dla większych zadań ultrawork: zachowaj równoległość w granicach limitów dostawcy. Zacznij od 2, wykonaj kilka zadań czysto, a następnie zdecyduj, czy zwiększyć. Przekroczenie limitu planu nie przyspiesza rzeczy — sprawia, że są niezawodne.

Rozwiązywanie problemów i najlepsze praktyki

Słowo kluczowe Ultrawork nie jest aktywowane

Jeśli ulw lub ultrawork jest ignorowane, potraktuj to jako sygnał do sprawdzenia ładowania wtyczki i zgodności wersji. Zgłoszono co najmniej jeden regres, gdzie wykrywanie słów kluczowych nie wstrzykiwało oczekiwanego promptu trybu ultrawork, a śledzenie wskazywało na dedykowany haczyk wykrywający słowa kluczowe.

W praktyce najszybsze naprawy to:

  • potwierdź, że wtyczka jest zarejestrowana i pliki konfiguracyjne są obecne (zobacz listę kontrolną weryfikacji powyżej)
  • zaktualizuj OpenCode lub wtyczkę, jeśli jesteś na wersji, której znane jest regresowanie wykrywania słów kluczowych

Skrypt instalacyjny nie może znaleźć Twojej konfiguracji OpenCode

Zweryfikuj, czy OpenCode jest zainstalowany (opencode --version), a następnie ustaw jawnie zmienną środowiskową ścieżki konfiguracyjnej przed ponownym uruchomieniem instalatora.

Zbyt wiele zadań w tle lub problemy z throttlingiem

Jeśli napotykasz limity stawki, przekroczenia czasu lub niestabilne ukończenia, naprawa jest zawsze taka sama: zmniejsz równoległość i uruchom ponownie. Gonić za większą równoległością, gdy Twój dostawca już Cię throttluje, to przegrana walka.

Kiedy nie powinieneś używać ultrawork

Ultrawork jest potężny, ale nie jest darmowy — każdy równoległy agent kosztuje tokeny i liczy się przeciwko limitom stawki. Zastrzegaj go dla dużych refaktoryzacji, prac nad funkcjami full-stack i złożonych zadań wieloetapowych. Dla małej edycji pojedynczego pliku lub szybkiego pytania, zwykły prompt jest szybszy i tańszy.

Solidna zasada:

  • używaj normalnych promptów dla małych edycji i prostych pytań
  • używaj ultrawork, gdy chcesz, aby system dekomponował, delegował, wykonywał i weryfikował w całym repozytorium

Uwaga o zgodności z warunkami dostawcy

Niektóre dyskusje społecznościowe w tym ekosystemie dotyczą ograniczeń dostawców i warunków korzystania, szczególnie wokół OAuth od stron trzecich i warstw kompatybilności. To są realne ograniczenia — sprawdź warunki swojego dostawcy przed uruchamieniem zautomatyzowanych lub równoległych przepływów pracy w skali i nie zakładaj, że działająca integracja oznacza dozwoloną.


Gotowy na więcej? Pogłębione spojrzenie na specjalistyczne agenty wyjaśnia rolę każdego agenta, wymagania dotyczące modeli i opcje self-hostingu. Dla uczciwych danych wydajnościowych i zgłaszanych przez społeczność ryzyk rozliczeniowych zobacz artykuł o doświadczeniach z Oh My Opencode.