---
title: CLI
description: Opcje i polecenia wiersza poleceń OpenCode.
---

import { Tabs, TabItem } from "@astrojs/starlight/components"

CLI OpenCode domyślnie uruchamia [TUI](/docs/tui), gdy wywołasz je bez argumentów.

```bash
opencode
```

CLI obsługuje też polecenia opisane na tej stronie, więc możesz używać OpenCode programowo.

```bash
opencode run "Explain how closures work in JavaScript"
```

---

### tui

Uruchamia interfejs terminalowy (TUI) OpenCode.

```bash
opencode [project]
```

#### Flagi

| Flaga        | Skrót | Opis                                                                    |
| ------------ | ----- | ----------------------------------------------------------------------- |
| `--continue` | `-c`  | Kontynuuj ostatnią sesję                                                |
| `--session`  | `-s`  | Identyfikator sesji do kontynuowania                                    |
| `--fork`     |       | Sklonuj sesję podczas kontynuacji (użyj z `--continue` lub `--session`) |
| `--prompt`   |       | Monit do użycia                                                         |
| `--model`    | `-m`  | Model do użycia w formacie dostawca/model                               |
| `--agent`    |       | Agent do użycia                                                         |
| `--port`     |       | Port do nasłuchiwania                                                   |
| `--hostname` |       | Nazwa hosta, do której należy się powiązać                              |

---

## Polecenia

Interfejs CLI OpenCode zawiera także dodatkowe polecenia.

---

### agent

Zarządzaj agentami OpenCode.

```bash
opencode agent [command]
```

---

### attach

Dołącz terminal do już działającego serwera backendu OpenCode uruchomionego za pomocą `serve` lub `web`.

```bash
opencode attach [url]
```

Pozwala to połączyć TUI ze zdalnym backendem OpenCode. Na przykład:

```bash
# Start the backend server for web/mobile access
opencode web --port 4096 --hostname 0.0.0.0

# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096
```

#### Flagi

| Flaga       | Skrót | Opis                                    |
| ----------- | ----- | --------------------------------------- |
| `--dir`     |       | Katalog roboczy, w którym uruchomić TUI |
| `--session` | `-s`  | Identyfikator sesji do kontynuowania    |

---

#### create

Utwórz nowego agenta z niestandardową konfiguracją.

```bash
opencode agent create
```

To polecenie poprowadzi Cię przez proces tworzenia nowego agenta z niestandardowym promptem systemowym i konfiguracją narzędzi.

---

#### list

Wyświetl listę wszystkich agentów.

```bash
opencode agent list
```

---

### auth

Zarządzaj danymi uwierzytelniającymi i logowaniem dla dostawców.

```bash
opencode auth [command]
```

---

#### login

OpenCode integruje się z wieloma dostawcami. Możesz użyć `opencode auth login`, aby skonfigurować klucz API dla dowolnego obsługiwanego dostawcy. Klucze są bezpiecznie przechowywane w `~/.local/share/opencode/auth.json`.

```bash
opencode auth login
```

Podczas uruchamiania OpenCode ładuje dostawców z pliku poświadczeń, a także ze zmiennych środowiskowych lub pliku `.env` w Twoim projekcie.

---

#### list

Wyświetl listę wszystkich uwierzytelnionych dostawców przechowywanych w pliku poświadczeń.

```bash
opencode auth list
```

Lub skrócona wersja:

```bash
opencode auth ls
```

---

#### logout

Wyloguj się z dostawcy, usuwając go z pliku poświadczeń.

```bash
opencode auth logout
```

---

### github

Zarządzaj agentem GitHub w celu automatyzacji repozytorium.

```bash
opencode github [command]
```

---

#### install

Zainstaluj agenta GitHub w swoim repozytorium.

```bash
opencode github install
```

Spowoduje to utworzenie pliku workflow GitHub Actions i poprowadzi Cię przez proces konfiguracji. [Dowiedz się więcej](/docs/github).

---

#### run

Uruchom agenta na GitHubie. Zwykle używane w GitHub Actions.

```bash
opencode github run
```

##### Flagi

| Flaga     | Opis                                     |
| --------- | ---------------------------------------- |
| `--event` | Zdarzenie GitHub, które wyzwoliło agenta |
| `--token` | Osobisty token dostępu GitHub            |

---

### mcp

Zarządzaj serwerami Model Context Protocol (MCP).

```bash
opencode mcp [command]
```

---

#### add

Dodaj serwer MCP do swojej konfiguracji.

```bash
opencode mcp add
```

To polecenie poprowadzi Cię przez proces dodawania lokalnego lub zdalnego serwera MCP.

---

#### list

Wyświetl listę wszystkich skonfigurowanych serwerów MCP i ich status.

```bash
opencode mcp list
```

Lub skrócona wersja:

```bash
opencode mcp ls
```

---

#### auth

Uwierzytelnij się w serwerze MCP z włączoną funkcją OAuth.

```bash
opencode mcp auth [name]
```

Jeśli nie podasz nazwy serwera, zostaniesz poproszony o wybranie jednego z serwerów wymagających uwierzytelnienia.

Możesz także wyświetlić listę serwerów obsługujących OAuth i ich status uwierzytelnienia.

```bash
opencode mcp auth list
```

Lub skrócona wersja:

```bash
opencode mcp auth ls
```

---

#### logout

Usuń tokeny OAuth dla serwera MCP.

```bash
opencode mcp logout [name]
```

---

#### debug

Debuguj problemy z połączeniem OAuth dla serwera MCP.

```bash
opencode mcp debug <name>
```

---

### models

Wyświetl listę modeli ze wszystkich skonfigurowanych dostawców.

```bash
opencode models [provider]
```

Pokazuje modele dostępne do użycia w `provider/model`.

Jest to identyfikator modelu, którego używasz w [konfiguracji](/docs/config).

Opcjonalnie możesz podać identyfikator dostawcy, aby filtrować modele według tego dostawcy.

```bash
opencode models anthropic
```

#### Flagi

| Flaga       | Opis                                                                            |
| ----------- | ------------------------------------------------------------------------------- |
| `--refresh` | Odśwież pamięć podręczną modeli                                                 |
| `--verbose` | Bardziej szczegółowe dane wyjściowe modelu (zawiera metadane, takie jak koszty) |

Użyj flagi `--refresh`, aby zaktualizować listę modeli w pamięci podręcznej. Jest to przydatne, gdy dostawca dodał nowe modele, które chcesz zobaczyć w OpenCode.

```bash
opencode models --refresh
```

---

### run

Uruchom OpenCode w trybie nieinteraktywnym, przekazując bezpośrednio prompt.

```bash
opencode run [message..]
```

Jest to przydatne do tworzenia skryptów, automatyzacji lub gdy chcesz wysłać szybkie zapytanie bez uruchamiania TUI. Na przykład:

```bash "opencode run"
opencode run Explain the use of context in Go
```

Można również użyć tego z działającym `opencode serve`, aby uniknąć zimnego startu serwera MCP przy każdym uruchomieniu:

```bash
# Start a headless server in one terminal
opencode serve

# In another terminal, run commands that attach to it
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
```

#### Flagi

| Flaga        | Skrót | Opis                                                                    |
| ------------ | ----- | ----------------------------------------------------------------------- |
| `--command`  |       | Polecenie do uruchomienia, reszta to argumenty                          |
| `--continue` | `-c`  | Kontynuuj ostatnią sesję                                                |
| `--session`  | `-s`  | Identyfikator sesji do kontynuowania                                    |
| `--fork`     |       | Sklonuj sesję podczas kontynuacji (użyj z `--continue` lub `--session`) |
| `--share`    |       | Udostępnij sesję po zakończeniu                                         |
| `--model`    | `-m`  | Model do użycia w formacie dostawca/model                               |
| `--agent`    |       | Agent do użycia                                                         |
| `--file`     | `-f`  | Pliki do załączenia do wiadomości                                       |
| `--format`   |       | Format wyjściowy: `default` (sformatowany) lub `json` (surowy JSON)     |
| `--title`    |       | Tytuł sesji (jeśli nie podano, zostanie wygenerowany z promptu)         |
| `--attach`   |       | Dołącz do działającego serwera OpenCode (np. http://localhost:4096)     |
| `--port`     |       | Port dla serwera lokalnego (domyślnie losowy)                           |

---

### serve

Uruchom serwer OpenCode (bez interfejsu) w celu uzyskania dostępu do API. Pełny opis API HTTP znajduje się w [dokumentacji serwera](/docs/server).

```bash
opencode serve
```

Uruchamia to serwer HTTP, który zapewnia dostęp do API OpenCode bez interfejsu TUI. Ustaw `OPENCODE_SERVER_PASSWORD`, aby włączyć podstawowe uwierzytelnianie HTTP (domyślna nazwa użytkownika to `opencode`).

#### Flagi

| Flaga        | Opis                                       |
| ------------ | ------------------------------------------ |
| `--port`     | Port do nasłuchiwania                      |
| `--hostname` | Nazwa hosta, do której należy się powiązać |
| `--mdns`     | Włącz wykrywanie mDNS                      |
| `--cors`     | Dodatkowe dozwolone źródła CORS            |

---

### session

Zarządzaj sesjami OpenCode.

```bash
opencode session [command]
```

---

#### list

Lista wszystkich sesji OpenCode.

```bash
opencode session list
```

##### Flagi

| Flaga         | Skrót | Opis                                       |
| ------------- | ----- | ------------------------------------------ |
| `--max-count` | `-n`  | Ogranicz do ostatnich N sesji              |
| `--format`    |       | Format wyjściowy: tabela lub json (tabela) |

---

### stats

Pokaż statystyki wykorzystania tokenów i sesji OpenCode.

```bash
opencode stats
```

#### Flagi

| Flaga       | Opis                                                                                  |
| ----------- | ------------------------------------------------------------------------------------- |
| `--days`    | Pokaż statystyki z ostatnich N dni (domyślnie: cały czas)                             |
| `--tools`   | Pokaż użycie poszczególnych narzędzi (domyślnie: wszystkie)                           |
| `--models`  | Pokaż podział na modele (domyślnie ukryty). Podaj liczbę, aby pokazać N najczęstszych |
| `--project` | Filtruj według projektu (domyślnie: wszystkie projekty, pusty ciąg: bieżący projekt)  |

---

### export

Eksportuj dane sesji jako JSON.

```bash
opencode export [sessionID]
```

Jeśli nie podasz identyfikatora sesji, zostaniesz poproszony o wybranie jednej z ostatnich sesji.

---

### import

Importuj dane sesji z pliku JSON lub adresu URL udostępniania OpenCode.

```bash
opencode import <file>
```

Możesz importować z pliku lokalnego lub adresu URL.

```bash
opencode import session.json
opencode import https://opncd.ai/s/abc123
```

---

### web

Uruchom serwer OpenCode z interfejsem internetowym.

```bash
opencode web
```

Uruchamia to serwer HTTP i udostępnia OpenCode przez interfejs przeglądarkowy. Ustaw `OPENCODE_SERVER_PASSWORD`, aby włączyć podstawowe uwierzytelnianie HTTP (domyślna nazwa użytkownika to `opencode`).

#### Flagi

| Flaga        | Opis                                       |
| ------------ | ------------------------------------------ |
| `--port`     | Port do nasłuchiwania                      |
| `--hostname` | Nazwa hosta, do której należy się powiązać |
| `--mdns`     | Włącz wykrywanie mDNS                      |
| `--cors`     | Dodatkowe dozwolone źródła CORS            |

---

### acp

Uruchom serwer ACP (Agent Client Protocol).

```bash
opencode acp
```

Uruchamia serwer ACP, który komunikuje się przez stdin/stdout przy użyciu JSON-RPC.

#### Flagi

| Flaga        | Opis                                       |
| ------------ | ------------------------------------------ |
| `--cwd`      | Katalog roboczy                            |
| `--port`     | Port do nasłuchiwania                      |
| `--hostname` | Nazwa hosta, do której należy się powiązać |

---

### uninstall

Odinstaluj OpenCode i usuń wszystkie powiązane pliki.

```bash
opencode uninstall
```

#### Flagi

| Flaga           | Skrót | Opis                          |
| --------------- | ----- | ----------------------------- |
| `--keep-config` | `-c`  | Zachowaj pliki konfiguracyjne |
| `--keep-data`   | `-d`  | Zachowaj dane sesji i migawki |
| `--dry-run`     |       | Pokaż co zostanie usunięte    |
| `--force`       | `-f`  | Pomiń monity o potwierdzenie  |

---

### upgrade

Aktualizuj OpenCode do najnowszej lub określonej wersji.

```bash
opencode upgrade [target]
```

Aby zaktualizować do najnowszej wersji:

```bash
opencode upgrade
```

Aby zaktualizować do konkretnej wersji:

```bash
opencode upgrade v0.1.48
```

#### Flagi

| Flaga      | Skrót | Opis                                                |
| ---------- | ----- | --------------------------------------------------- |
| `--method` | `-m`  | Wymuś metodę instalacji: curl, npm, pnpm, bun, brew |

---

## Flagi globalne

Interfejs CLI OpenCode przyjmuje następujące flagi globalne dla każdego polecenia.

| Flaga          | Skrót | Opis                                        |
| -------------- | ----- | ------------------------------------------- |
| `--help`       | `-h`  | Wyświetl pomoc                              |
| `--version`    | `-v`  | Wydrukuj numer wersji                       |
| `--print-logs` |       | Drukuj logi na stderr                       |
| `--log-level`  |       | Poziom logowania (DEBUG, INFO, WARN, ERROR) |

---

## Zmienne środowiskowe

OpenCode można skonfigurować za pomocą zmiennych środowiskowych.

| Zmienna                               | Typ     | Opis                                                        |
| ------------------------------------- | ------- | ----------------------------------------------------------- |
| `OPENCODE_AUTO_SHARE`                 | boolean | Automatycznie udostępniaj sesje                             |
| `OPENCODE_GIT_BASH_PATH`              | string  | Ścieżka do pliku wykonywalnego Git Bash w systemie Windows  |
| `OPENCODE_CONFIG`                     | string  | Ścieżka do pliku konfiguracyjnego                           |
| `OPENCODE_CONFIG_DIR`                 | string  | Ścieżka do katalogu konfiguracyjnego                        |
| `OPENCODE_CONFIG_CONTENT`             | string  | Treść konfiguracji JSON (inline)                            |
| `OPENCODE_DISABLE_AUTOUPDATE`         | boolean | Wyłącz automatyczne sprawdzanie aktualizacji                |
| `OPENCODE_DISABLE_PRUNE`              | boolean | Wyłącz czyszczenie starych wyników (pruning)                |
| `OPENCODE_DISABLE_TERMINAL_TITLE`     | boolean | Wyłącz automatyczne ustawianie tytułu terminala             |
| `OPENCODE_PERMISSION`                 | string  | Konfiguracja uprawnień w JSON (inline)                      |
| `OPENCODE_DISABLE_DEFAULT_PLUGINS`    | boolean | Wyłącz domyślne wtyczki                                     |
| `OPENCODE_DISABLE_LSP_DOWNLOAD`       | boolean | Wyłącz automatyczne pobieranie serwerów LSP                 |
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | boolean | Włącz modele eksperymentalne                                |
| `OPENCODE_DISABLE_AUTOCOMPACT`        | boolean | Wyłącz automatyczne kompaktowanie kontekstu                 |
| `OPENCODE_DISABLE_CLAUDE_CODE`        | boolean | Wyłącz integrację z `.claude` (prompt + skills)             |
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | boolean | Wyłącz czytanie `~/.claude/CLAUDE.md`                       |
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | boolean | Wyłącz ładowanie `.claude/skills`                           |
| `OPENCODE_DISABLE_MODELS_FETCH`       | boolean | Wyłącz pobieranie modeli ze źródeł zewnętrznych             |
| `OPENCODE_FAKE_VCS`                   | string  | Fałszywy dostawca VCS do celów testowych                    |
| `OPENCODE_DISABLE_FILETIME_CHECK`     | boolean | Wyłącz sprawdzanie czasu modyfikacji plików (optymalizacja) |
| `OPENCODE_CLIENT`                     | string  | Identyfikator klienta (domyślnie `cli`)                     |
| `OPENCODE_ENABLE_EXA`                 | boolean | Włącz narzędzie wyszukiwania internetowego Exa              |
| `OPENCODE_SERVER_PASSWORD`            | string  | Włącz uwierzytelnianie podstawowe dla `serve`/`web`         |
| `OPENCODE_SERVER_USERNAME`            | string  | Nazwa użytkownika do autoryzacji (domyślnie `opencode`)     |
| `OPENCODE_MODELS_URL`                 | string  | Niestandardowy adres URL do pobierania konfiguracji modeli  |

---

### Eksperymentalne

Te zmienne włączają funkcje eksperymentalne, które mogą ulec zmianie lub zostać usunięte.

| Zmienna                                         | Typ     | Opis                                         |
| ----------------------------------------------- | ------- | -------------------------------------------- |
| `OPENCODE_EXPERIMENTAL`                         | boolean | Włącz wszystkie funkcje eksperymentalne      |
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY`          | boolean | Włącz wykrywanie ikon                        |
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT`  | boolean | Wyłącz kopiowanie przy zaznaczaniu w TUI     |
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | number  | Domyślny limit czasu dla narzędzia bash w ms |
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX`        | number  | Maksymalne tokeny wyjściowe dla LLM          |
| `OPENCODE_EXPERIMENTAL_FILEWATCHER`             | boolean | Włącz obserwatora plików dla całego katalogu |
| `OPENCODE_EXPERIMENTAL_OXFMT`                   | boolean | Włącz formater oxfmt                         |
| `OPENCODE_EXPERIMENTAL_LSP_TOOL`                | boolean | Włącz eksperymentalne narzędzie LSP          |
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER`     | boolean | Wyłącz obserwatora plików                    |
| `OPENCODE_EXPERIMENTAL_EXA`                     | boolean | Włącz funkcje eksperymentalne Exa            |
| `OPENCODE_EXPERIMENTAL_LSP_TY`                  | boolean | Włącz eksperymentalne sprawdzanie typów LSP  |
| `OPENCODE_EXPERIMENTAL_MARKDOWN`                | boolean | Włącz funkcje eksperymentalne Markdown       |
| `OPENCODE_EXPERIMENTAL_PLAN_MODE`               | boolean | Włącz tryb planowania                        |
