Referencja CLI onboardingu
Ta strona to pełna referencja dla openclaw onboard.
Po krótki przewodnik, zobacz Kreator onboardingu (CLI).
Co robi kreator
Tryb lokalny (domyślny) prowadzi cię przez:
- Konfigurację modelu i auth (OpenAI Code subscription OAuth, Anthropic API key lub setup token, plus opcje MiniMax, GLM, Ollama, Moonshot i AI Gateway)
- Lokalizację workspace i pliki bootstrap
- Ustawienia Gateway (port, bind, auth, tailscale)
- Kanały i providerów (Telegram, WhatsApp, Discord, Google Chat, Mattermost plugin, Signal)
- Instalację daemona (LaunchAgent lub systemd user unit)
- Health check
- Konfigurację skills
Tryb zdalny konfiguruje tę maszynę do połączenia z gateway gdzie indziej. Nie instaluje ani nie modyfikuje niczego na zdalnym hoście.
Szczegóły przepływu lokalnego
Krok 1: Wykrywanie istniejącej konfiguracji
- Jeśli `~/.openclaw/openclaw.json` istnieje, wybierz Zachowaj, Modyfikuj lub Resetuj.
- Ponowne uruchomienie kreatora nie kasuje niczego, chyba że jawnie wybierzesz Reset (lub podasz `--reset`).
- CLI `--reset` domyślnie do `config+creds+sessions`; użyj `--reset-scope full`, żeby usunąć też workspace.
- Jeśli konfiguracja jest nieprawidłowa lub zawiera legacy keys, kreator zatrzymuje się i prosi o uruchomienie `openclaw doctor` przed kontynuacją.
- Reset używa `trash` i oferuje zakresy:
- Tylko konfiguracja
- Konfiguracja + dane logowania + sesje
- Pełny reset (usuwa też workspace)
Krok 2: Model i auth
- Pełna macierz opcji w [Opcje auth i modeli](#opcje-auth-i-modeli).
Krok 3: Workspace
- Domyślnie `~/.openclaw/workspace` (konfigurowalny).
- Tworzy pliki workspace potrzebne do rytuału bootstrap pierwszego uruchomienia.
- Układ workspace: [Workspace agenta](/docs/concepts/agent-workspace).
Krok 4: Gateway
- Pyta o port, bind, tryb auth i ekspozycję tailscale.
- Zalecane: utrzymuj auth tokenem włączone nawet dla loopback, żeby lokalne klienty WS musiały się uwierzytelniać.
- W trybie tokena, interaktywny onboarding oferuje:
- **Generuj/przechowuj plaintext token** (domyślnie)
- **Użyj SecretRef** (opt-in)
- W trybie hasła, interaktywny onboarding też wspiera plaintext lub SecretRef.
- Nieinteraktywna ścieżka token SecretRef: `--gateway-token-ref-env <ENV_VAR>`.
- Wymaga niepustej zmiennej env w środowisku procesu onboardingu.
- Nie może być łączone z `--gateway-token`.
- Wyłącz auth tylko jeśli w pełni ufasz każdemu lokalnemu procesowi.
- Bindy non-loopback nadal wymagają auth.
Krok 5: Kanały
- [WhatsApp](/docs/channels/whatsapp): opcjonalny login QR
- [Telegram](/docs/channels/telegram): bot token
- [Discord](/docs/channels/discord): bot token
- [Google Chat](/docs/channels/googlechat): service account JSON + webhook audience
- [Mattermost](/docs/channels/mattermost) plugin: bot token + base URL
- [Signal](/docs/channels/signal): opcjonalna instalacja `signal-cli` + konfiguracja konta
- [BlueBubbles](/docs/channels/bluebubbles): zalecane dla iMessage; server URL + hasło + webhook
- [iMessage](/docs/channels/imessage): legacy ścieżka CLI `imsg` + dostęp DB
- Bezpieczeństwo DM: domyślnie parowanie. Pierwszy DM wysyła kod; zatwierdź przez
`openclaw pairing approve <channel> <code>` lub użyj allowlist.
Krok 6: Instalacja daemona
- macOS: LaunchAgent
- Wymaga zalogowanej sesji użytkownika; dla headless użyj niestandardowego LaunchDaemona (niedołączany).
- Linux i Windows przez WSL2: systemd user unit
- Kreator próbuje `loginctl enable-linger <user>`, żeby gateway działał po wylogowaniu.
- Może poprosić o sudo (zapisuje do `/var/lib/systemd/linger`); najpierw próbuje bez sudo.
- Wybór runtime: Node (zalecany; wymagany dla WhatsApp i Telegram). Bun niezalecany.
Krok 7: Health check
- Uruchamia gateway (jeśli potrzeba) i wykonuje `openclaw health`.
- `openclaw status --deep` dodaje sondy health gateway do wyjścia statusu.
Krok 8: Skills
- Odczytuje dostępne skills i sprawdza wymagania.
- Pozwala wybrać menedżer node: npm lub pnpm (bun niezalecany).
- Instaluje opcjonalne zależności (niektóre używają Homebrew na macOS).
Krok 9: Zakończenie
- Podsumowanie i następne kroki, w tym opcje iOS, Android i macOS app.
Uwaga: Jeśli GUI nie zostanie wykryty, kreator wypisuje instrukcje SSH port-forward dla Control UI zamiast otwierać przeglądarkę. Jeśli assety Control UI brakują, kreator próbuje je zbudować; fallback to
pnpm ui:build(automatycznie instaluje zależności UI).
Szczegóły trybu zdalnego
Tryb zdalny konfiguruje tę maszynę do połączenia z gateway gdzie indziej.
Info: Tryb zdalny nie instaluje ani nie modyfikuje niczego na zdalnym hoście.
Co ustawiasz:
- URL zdalnego gateway (
ws://...) - Token jeśli auth zdalnego gateway jest wymagane (zalecane)
Uwaga:
- Jeśli gateway jest loopback-only, użyj SSH tunnelingu lub tailnet.
- Wskazówki discovery:
- macOS: Bonjour (
dns-sd)- Linux: Avahi (
avahi-browse)
Opcje auth i modeli
Anthropic API key
Używa `ANTHROPIC_API_KEY` jeśli jest obecny lub pyta o key, następnie zapisuje go do użycia przez daemona.
Anthropic OAuth (Claude Code CLI)
- macOS: sprawdza element Keychain "Claude Code-credentials"
- Linux i Windows: reużywa `~/.claude/.credentials.json` jeśli istnieje
Na macOS wybierz „Zawsze zezwalaj", żeby starty launchd nie blokowały.
Anthropic token (wklejanie setup-token)
Uruchom `claude setup-token` na dowolnej maszynie, potem wklej token.
Możesz mu nadać nazwę; puste używa domyślnej.
OpenAI Code subscription (reużycie Codex CLI)
Jeśli `~/.codex/auth.json` istnieje, kreator może go reużyć.
OpenAI Code subscription (OAuth)
Przepływ przeglądarki; wklej `code#state`.
Ustawia `agents.defaults.model` na `openai-codex/gpt-5.4` gdy model nie jest ustawiony lub jest `openai/*`.
OpenAI API key
Używa `OPENAI_API_KEY` jeśli jest obecny lub pyta o key, następnie przechowuje credential w profilach auth.
Ustawia `agents.defaults.model` na `openai/gpt-5.1-codex` gdy model nie jest ustawiony, jest `openai/*` lub `openai-codex/*`.
xAI (Grok) API key
Pyta o `XAI_API_KEY` i konfiguruje xAI jako providera modeli.
OpenCode
Pyta o `OPENCODE_API_KEY` (lub `OPENCODE_ZEN_API_KEY`) i pozwala wybrać katalog Zen lub Go.
URL konfiguracji: [opencode.ai/auth](https://opencode.ai/auth).
API key (ogólny)
Przechowuje key za ciebie.
Vercel AI Gateway
Pyta o `AI_GATEWAY_API_KEY`.
Więcej szczegółów: [Vercel AI Gateway](/docs/providers/vercel-ai-gateway).
Cloudflare AI Gateway
Pyta o account ID, gateway ID i `CLOUDFLARE_AI_GATEWAY_API_KEY`.
Więcej szczegółów: [Cloudflare AI Gateway](/docs/providers/cloudflare-ai-gateway).
MiniMax M2.5
Konfiguracja zapisywana automatycznie.
Więcej szczegółów: [MiniMax](/docs/providers/minimax).
Synthetic (Anthropic-compatible)
Pyta o `SYNTHETIC_API_KEY`.
Więcej szczegółów: [Synthetic](/docs/providers/synthetic).
Ollama (Cloud i lokalne open modele)
Pyta o base URL (domyślnie `http://127.0.0.1:11434`), następnie oferuje tryb Cloud + Local lub Local.
Odkrywa dostępne modele i sugeruje domyślne.
Więcej szczegółów: [Ollama](/docs/providers/ollama).
Moonshot i Kimi Coding
Konfiguracje Moonshot (Kimi K2) i Kimi Coding zapisywane automatycznie.
Więcej szczegółów: [Moonshot AI (Kimi + Kimi Coding)](/docs/providers/moonshot).
Custom provider
Działa z endpointami OpenAI-compatible i Anthropic-compatible.
Interaktywny onboarding wspiera te same opcje przechowywania API key co inne przepływy API key providerów:
- **Wklej API key teraz** (plaintext)
- **Użyj secret reference** (ref env lub skonfigurowany ref providera, z walidacją preflight)
Flagi nieinteraktywne:
- `--auth-choice custom-api-key`
- `--custom-base-url`
- `--custom-model-id`
- `--custom-api-key` (opcjonalny; fallback do `CUSTOM_API_KEY`)
- `--custom-provider-id` (opcjonalny)
- `--custom-compatibility <openai|anthropic>` (opcjonalny; domyślnie `openai`)
Pomiń
Auth pozostaje nieskonfigurowane.
Zachowanie modeli:
- Wybierz domyślny model z wykrytych opcji, lub wpisz providera i model ręcznie.
- Kreator uruchamia sprawdzenie modelu i ostrzega, jeśli skonfigurowany model jest nieznany lub brakuje auth.
Ścieżki credentiali i profili:
- Credentiale OAuth:
~/.openclaw/credentials/oauth.json - Profile auth (API keys + OAuth):
~/.openclaw/agents/<agentId>/agent/auth-profiles.json
Tryb przechowywania credentiali:
- Domyślne zachowanie onboardingu utrwala API keys jako wartości plaintext w profilach auth.
--secret-input-mode refwłącza tryb referencji zamiast przechowywania key plaintext. W interaktywnym onboardingu możesz wybrać:- ref zmiennej środowiskowej (np.
keyRef: { source: "env", provider: "default", id: "OPENAI_API_KEY" }) - skonfigurowany ref providera (
filelubexec) z aliasem providera + id
- ref zmiennej środowiskowej (np.
- Interaktywny tryb referencji uruchamia szybką walidację preflight przed zapisem.
- Refy env: waliduje nazwę zmiennej + niepustą wartość w bieżącym środowisku onboardingu.
- Refy providera: waliduje konfigurację providera i rozwiązuje żądane id.
- Jeśli preflight nie powiedzie się, onboarding pokazuje błąd i pozwala spróbować ponownie.
- W trybie nieinteraktywnym,
--secret-input-mode refjest tylko env-backed.- Ustaw zmienną env providera w środowisku procesu onboardingu.
- Inline flagi key (np.
--openai-api-key) wymagają ustawienia tej zmiennej env; w przeciwnym razie onboarding natychmiast kończy się błędem. - Dla custom providerów, nieinteraktywny tryb
refprzechowujemodels.providers.<id>.apiKeyjako{ source: "env", provider: "default", id: "CUSTOM_API_KEY" }. - W tym przypadku custom providera,
--custom-api-keywymaga ustawieniaCUSTOM_API_KEY; w przeciwnym razie onboarding natychmiast kończy się błędem.
- Credentiale auth Gateway wspierają wybór plaintext i SecretRef w interaktywnym onboardingu:
- Tryb tokena: Generuj/przechowuj plaintext token (domyślnie) lub Użyj SecretRef.
- Tryb hasła: plaintext lub SecretRef.
- Nieinteraktywna ścieżka token SecretRef:
--gateway-token-ref-env <ENV_VAR>. - Istniejące konfiguracje plaintext nadal działają bez zmian.
Uwaga: Wskazówka dla headless i serwerów: wykonaj OAuth na maszynie z przeglądarką, potem skopiuj
~/.openclaw/credentials/oauth.json(lub$OPENCLAW_STATE_DIR/credentials/oauth.json) na host gateway.
Wyjścia i mechanizmy wewnętrzne
Typowe pola w ~/.openclaw/openclaw.json:
agents.defaults.workspaceagents.defaults.model/models.providers(jeśli wybrano Minimax)tools.profile(lokalny onboarding domyślnie ustawia na"coding"gdy nieustawione; istniejące jawne wartości są zachowywane)gateway.*(mode, bind, auth, tailscale)session.dmScope(lokalny onboarding domyślnie ustawia naper-channel-peergdy nieustawione; istniejące jawne wartości są zachowywane)channels.telegram.botToken,channels.discord.token,channels.signal.*,channels.imessage.*- Allowlisty kanałów (Slack, Discord, Matrix, Microsoft Teams) gdy wybierzesz opt-in podczas monitów (nazwy rozwiązywane do ID gdzie to możliwe)
skills.install.nodeManagerwizard.lastRunAtwizard.lastRunVersionwizard.lastRunCommitwizard.lastRunCommandwizard.lastRunMode
openclaw agents add zapisuje agents.list[] i opcjonalne bindings.
Credentiale WhatsApp znajdują się w ~/.openclaw/credentials/whatsapp/<accountId>/.
Sesje przechowywane w ~/.openclaw/agents/<agentId>/sessions/.
Uwaga: Niektóre kanały są dostarczane jako wtyczki. Gdy zostaną wybrane podczas onboardingu, kreator pyta o instalację wtyczki (npm lub lokalna ścieżka) przed konfiguracją kanału.
Gateway wizard RPC:
wizard.startwizard.nextwizard.cancelwizard.status
Klienci (aplikacja macOS i Control UI) mogą renderować kroki bez reimplementacji logiki onboardingu.
Zachowanie konfiguracji Signal:
- Pobiera odpowiedni asset release
- Przechowuje go w
~/.openclaw/tools/signal-cli/<version>/ - Zapisuje
channels.signal.cliPathw konfiguracji - Buildy JVM wymagają Java 21
- Natywne buildy używane gdy dostępne
- Windows używa WSL2 i podąża za przepływem Linux signal-cli wewnątrz WSL
Powiązane dokumenty
- Hub onboardingu: Kreator onboardingu (CLI)
- Automatyzacja i skrypty: CLI Automation
- Referencja komend:
openclaw onboard