openclaw.json: pobieranie/ustawianie/modyfikowanie/usuwanie wartości według ścieżki, wyświetlanie schematu, walidowanie lub wyświetlanie ścieżki aktywnego pliku. Uruchom openclaw config bez podpolecenia, aby otworzyć ten sam kreator z instrukcjami co openclaw configure.
Gdy
OPENCLAW_NIX_MODE=1, OpenClaw traktuje openclaw.json jako niezmienny. Polecenia tylko do odczytu (config get, config file, config schema, config validate) nadal działają, ale polecenia zapisujące konfigurację odmawiają działania. Zamiast tego należy edytować źródło Nix instalacji; w przypadku oficjalnej dystrybucji nix-openclaw należy skorzystać z przewodnika Szybki start dla nix-openclaw i ustawić wartości w programs.openclaw.config lub instances.<name>.config.Opcje główne
string
Powtarzalny filtr sekcji konfiguracji z instrukcjami używany podczas uruchamiania
openclaw config bez podpolecenia.workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Przykłady
Ścieżki
Notacja kropkowa lub nawiasowa. W przykładach powłoki ujmuj ścieżki nawiasowe w cudzysłowy, aby zsh nie rozwijał[0] jako wzorca glob:
config get
Odczytuje wartość ze zredagowanej migawki konfiguracji (sekrety nigdy nie są wyświetlane). --json wyświetla nieprzetworzoną wartość jako JSON; w przeciwnym razie ciągi znaków, liczby i wartości logiczne są wyświetlane bez formatowania, a obiekty i tablice jako sformatowany JSON.
config file
Wyświetla ścieżkę aktywnego pliku konfiguracyjnego, ustaloną na podstawie OPENCLAW_CONFIG_PATH lub domyślnej lokalizacji. Ścieżka wskazuje zwykły plik, a nie dowiązanie symboliczne; zobacz Bezpieczeństwo zapisu.
config schema
Wyświetla na standardowym wyjściu wygenerowany schemat JSON dla openclaw.json.
Co zawiera
Co zawiera
- Bieżący główny schemat konfiguracji wraz z głównym polem tekstowym
$schemaprzeznaczonym dla narzędzi edytora. - Metadane dokumentacji pól
title/descriptionużywane przez interfejs Control UI. - Węzły zagnieżdżonych obiektów, symboli wieloznacznych (
*) i elementów tablicy ([]) dziedziczą te same metadanetitle/description, gdy istnieje pasująca dokumentacja pól. - Gałęzie
anyOf/oneOf/allOfrównież dziedziczą te same metadane dokumentacji. - Pozyskiwane w miarę możliwości bieżące metadane schematów pluginów i kanałów, gdy można wczytać manifesty środowiska uruchomieniowego.
- Poprawny schemat zastępczy nawet wtedy, gdy bieżąca konfiguracja jest nieprawidłowa.
Powiązane RPC środowiska uruchomieniowego
Powiązane RPC środowiska uruchomieniowego
config.schema.lookup zwraca jedną znormalizowaną ścieżkę konfiguracji z płytkim węzłem schematu (title, description, type, enum, const, typowe ograniczenia), dopasowanymi metadanymi wskazówek interfejsu oraz podsumowaniami bezpośrednich elementów podrzędnych. Należy go używać do przeglądania szczegółów w zakresie ścieżki w Control UI lub klientach niestandardowych.config validate
Waliduje bieżącą konfigurację względem aktywnego schematu bez uruchamiania gatewaya.
Jeśli walidacja już kończy się niepowodzeniem, należy zacząć od
openclaw configure lub openclaw doctor --fix. openclaw chat nie omija zabezpieczenia przed nieprawidłową konfiguracją.Wartości
Wartości są analizowane jako JSON5, gdy jest to możliwe; w przeciwnym razie są traktowane jako nieprzetworzone ciągi znaków. Użyj--strict-json, aby wymagać standardowego formatu JSON bez awaryjnego traktowania wartości jako ciągu znaków (składnia dostępna tylko w JSON5, taka jak komentarze, końcowe przecinki lub klucze bez cudzysłowów, jest wtedy odrzucana). --json jest starszym aliasem --strict-json w config set.
config get <path> --json wyświetla nieprzetworzoną wartość jako JSON zamiast tekstu sformatowanego dla terminala.
Przypisanie obiektu domyślnie zastępuje ścieżkę docelową. Chronione ścieżki, które często zawierają wpisy dodane przez użytkownika, odrzucają zastąpienia usuwające istniejące wpisy, chyba że przekazano
--replace: agents.defaults.models, agents.list, models.providers, models.providers.<id>, models.providers.<id>.models, plugins.entries i auth.profiles.--merge:
--replace tylko wtedy, gdy podana wartość ma celowo stać się pełną wartością docelową.
Tryby config set
- Tryb wartości
- Tryb konstruktora SecretRef
- Tryb konstruktora dostawcy
- Tryb wsadowy
--batch-json/--batch-file) jako źródła prawdy; --strict-json / --json nie zmieniają sposobu analizy wsadowej.
Tryb ścieżki/wartości JSON działa również bezpośrednio dla SecretRef i dostawców:
Flagi konstruktora dostawcy
Elementy docelowe konstruktora dostawcy muszą używaćsecrets.providers.<alias> jako ścieżki.
Wspólne flagi
Wspólne flagi
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Dostawca środowiskowy (--provider-source env)
Dostawca środowiskowy (--provider-source env)
--provider-allowlist <ENV_VAR>(powtarzalne)
Dostawca plikowy (--provider-source file)
Dostawca plikowy (--provider-source file)
--provider-path <path>(wymagane)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Dostawca wykonawczy (--provider-source exec)
Dostawca wykonawczy (--provider-source exec)
--provider-command <path>(wymagane)--provider-arg <arg>(powtarzalne)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(powtarzalne)--provider-pass-env <ENV_VAR>(powtarzalne)--provider-trusted-dir <path>(powtarzalne)--provider-allow-insecure-path--provider-allow-symlink-command
config patch
Wklej lub przekaż potokiem łatę JSON5 o strukturze konfiguracji zamiast uruchamiać wiele poleceń config set opartych na ścieżkach. Obiekty są scalane rekurencyjnie; tablice i wartości skalarne zastępują element docelowy; null usuwa ścieżkę docelową.
--replace-path <path>, gdy jeden obiekt lub jedna tablica musi przyjąć dokładnie podaną wartość zamiast być modyfikowana rekurencyjnie:
--dry-run przeprowadza kontrolę schematu i rozwiązywalności SecretRef bez zapisywania. Odwołania SecretRef obsługiwane przez polecenia wykonawcze są domyślnie pomijane podczas przebiegu próbnego; dodaj --allow-exec, jeśli przebieg próbny ma celowo wykonywać polecenia dostawcy.
Przebieg próbny
--dry-run waliduje zmiany bez zapisywania openclaw.json. Dostępne dla config set, config patch i config unset.
Działanie trybu próbnego
Działanie trybu próbnego
- Tryb kreatora: wykonuje sprawdzenia rozwiązywalności SecretRef dla zmienionych odwołań/dostawców.
- Tryb JSON (
--strict-json,--jsonlub tryb wsadowy): wykonuje walidację schematu oraz sprawdzenia rozwiązywalności SecretRef. - Walidacja zasad jest wykonywana względem pełnej konfiguracji po zmianach, więc zapisy obiektów nadrzędnych (na przykład ustawienie
hooksjako obiektu) nie mogą ominąć walidacji nieobsługiwanych obszarów. - Sprawdzenia SecretRef typu exec są domyślnie pomijane, aby uniknąć skutków ubocznych poleceń; przekaż
--allow-exec, aby je włączyć (może to spowodować wykonanie poleceń dostawcy).--allow-execdziała tylko w trybie próbnym i zgłasza błąd bez--dry-run.
Pola --dry-run --json
Pola --dry-run --json
ok: czy tryb próbny zakończył się powodzeniemoperations: liczba ocenionych przypisańchecks: czy wykonano sprawdzenia schematu/rozwiązywalnościchecks.resolvabilityComplete: czy sprawdzenia rozwiązywalności wykonano do końca (wartość false, gdy odwołania exec są pomijane)refsChecked: liczba odwołań faktycznie rozwiązanych w trybie próbnymskippedExecRefs: liczba odwołań exec pominiętych, ponieważ nie ustawiono--allow-execerrors: ustrukturyzowane błędy brakujących ścieżek, schematu lub rozwiązywalności, gdyok=false
Struktura danych wyjściowych JSON
- Przykład powodzenia
- Przykład niepowodzenia
Jeśli tryb próbny zakończy się niepowodzeniem
Jeśli tryb próbny zakończy się niepowodzeniem
config schema validation failed: struktura konfiguracji po zmianach jest nieprawidłowa; popraw ścieżkę/wartość albo strukturę obiektu dostawcy/odwołania.Config policy validation failed: unsupported SecretRef usage: przenieś te dane uwierzytelniające z powrotem do danych wejściowych w postaci zwykłego tekstu/ciągu znaków; używaj SecretRef tylko w obsługiwanych obszarach.SecretRef assignment(s) could not be resolved: obecnie nie można rozwiązać wskazanego dostawcy/odwołania (brak zmiennej środowiskowej, nieprawidłowy wskaźnik pliku, błąd dostawcy exec lub niezgodność dostawcy ze źródłem).Dry run note: skipped <n> exec SecretRef resolvability check(s): uruchom ponownie z--allow-exec, jeśli potrzebna jest walidacja rozwiązywalności exec.- W trybie wsadowym popraw pozycje powodujące błędy i ponownie uruchom
--dry-runprzed zapisem.
Stosowanie zmian
Po każdym pomyślnym wykonaniuconfig set / config patch / config unset CLI wyświetla jedną z trzech wskazówek informujących, czy Gateway wymaga ponownego uruchomienia:
Zapisy do
plugins.entries (lub dowolnej podścieżki) zawsze wymagają ponownego uruchomienia, ponieważ CLI nie może potwierdzić, że metadane przeładowania każdego pluginu zostały wczytane.
Bezpieczeństwo zapisu
openclaw config set i inne narzędzia zapisujące konfigurację należące do OpenClaw sprawdzają pełną konfigurację po zmianach przed zapisaniem jej na dysku. Jeśli nowa zawartość nie przejdzie walidacji schematu lub wygląda na destrukcyjne nadpisanie, aktywna konfiguracja pozostaje bez zmian, a odrzucona zawartość jest zapisywana obok niej jako openclaw.json.rejected.*.
Operacje zapisu należące do OpenClaw ponownie serializują JSON5 jako standardowy JSON. Jeśli źródło zawiera komentarze, narzędzie ostrzega bezpośrednio przed ich usunięciem; jeśli zachowanie komentarzy jest istotne, należy użyć bezpośrednio edytora.
W przypadku niewielkich zmian preferowany jest zapis za pomocą CLI:
openclaw.json. Uruchom openclaw doctor --fix, aby naprawić konfigurację z dodanym prefiksem lub nadpisaną konfigurację albo przywrócić ostatnią znaną prawidłową kopię. Zobacz rozwiązywanie problemów z Gateway.
Odzyskiwanie całego pliku jest zarezerwowane dla napraw wykonywanych przez narzędzie doctor. Zmiany schematu pluginu lub rozbieżność minHostVersion pozostają wyraźnie zgłaszane zamiast powodować wycofanie niepowiązanych ustawień użytkownika, takich jak konfiguracja modeli, dostawców, profili uwierzytelniania, kanałów, dostępności Gateway, narzędzi, pamięci, przeglądarki lub cron.
Pętla naprawcza
Po pomyślnym wykonaniuopenclaw config validate użyj lokalnego TUI, aby osadzony agent porównał aktywną konfigurację z dokumentacją podczas sprawdzania każdej zmiany w tym samym terminalu:
! uruchamia dosłowne lokalne polecenie powłoki (po jednorazowym monicie o potwierdzenie w każdej sesji):
1
Porównaj z dokumentacją
Poproś agenta o porównanie bieżącej konfiguracji z odpowiednią stroną dokumentacji i zaproponowanie najmniejszej poprawki.
2
Zastosuj ukierunkowane zmiany
Zastosuj ukierunkowane zmiany za pomocą
openclaw config set lub openclaw configure.3
Ponownie zweryfikuj
Po każdej zmianie ponownie uruchom
openclaw config validate.4
Użyj narzędzia doctor w przypadku problemów ze środowiskiem uruchomieniowym
Jeśli walidacja zakończy się powodzeniem, ale środowisko uruchomieniowe nadal nie działa prawidłowo, uruchom
openclaw doctor lub openclaw doctor --fix, aby uzyskać pomoc w migracji i naprawie.