Przejdź do głównej treści

openclaw approvals

Zarządzaj zatwierdzeniami exec dla hosta lokalnego, hosta Gateway lub hosta węzła. Domyślnie polecenia są kierowane do lokalnego pliku zatwierdzeń na dysku. Użyj --gateway, aby wybrać Gateway, albo --node, aby wybrać konkretny węzeł. Alias: openclaw exec-approvals Powiązane:

openclaw exec-policy

openclaw exec-policy to lokalne polecenie pomocnicze do utrzymywania żądanej konfiguracji tools.exec.* i lokalnego pliku zatwierdzeń hosta w zgodności w jednym kroku. Użyj go, gdy chcesz:
  • sprawdzić lokalną żądaną politykę, plik zatwierdzeń hosta i efektywne scalenie
  • zastosować lokalne ustawienie wstępne, takie jak YOLO lub deny-all
  • zsynchronizować lokalne tools.exec.* i lokalny plik zatwierdzeń hosta
Przykłady:
openclaw exec-policy show
openclaw exec-policy show --json

openclaw exec-policy preset yolo
openclaw exec-policy preset cautious --json

openclaw exec-policy set --host gateway --security full --ask off --ask-fallback full
Tryby wyjścia:
  • bez --json: wypisuje czytelny dla człowieka widok tabeli
  • --json: wypisuje ustrukturyzowane wyjście czytelne maszynowo
Bieżący zakres:
  • exec-policy działa tylko lokalnie
  • aktualizuje razem lokalny plik konfiguracji i lokalny plik zatwierdzeń
  • nie wypycha polityki do hosta Gateway ani hosta węzła
  • --host node jest odrzucane w tym poleceniu, ponieważ zatwierdzenia exec węzła są pobierane z węzła w czasie działania i zamiast tego muszą być zarządzane przez polecenia zatwierdzeń kierowane do węzła
  • openclaw exec-policy show oznacza zakresy host=node jako zarządzane przez węzeł w czasie działania, zamiast wyprowadzać efektywną politykę z lokalnego pliku zatwierdzeń
Jeśli musisz bezpośrednio edytować zatwierdzenia zdalnego hosta, nadal używaj openclaw approvals set --gateway lub openclaw approvals set --node <id|name|ip>.

Typowe polecenia

openclaw approvals get
openclaw approvals get --node <id|name|ip>
openclaw approvals get --gateway
openclaw approvals get pokazuje teraz efektywną politykę exec dla celów lokalnych, Gateway i węzłów:
  • żądana polityka tools.exec
  • polityka z pliku zatwierdzeń hosta
  • efektywny wynik po zastosowaniu reguł pierwszeństwa
Pierwszeństwo jest celowe:
  • plik zatwierdzeń hosta jest egzekwowalnym źródłem prawdy
  • żądana polityka tools.exec może zawężać lub rozszerzać intencję, ale efektywny wynik nadal jest wyprowadzany z reguł hosta
  • --node łączy plik zatwierdzeń hosta węzła z polityką Gateway tools.exec, ponieważ oba nadal obowiązują w czasie działania
  • jeśli konfiguracja Gateway jest niedostępna, CLI wraca do migawki zatwierdzeń węzła i informuje, że nie udało się obliczyć końcowej polityki czasu działania

Zastępowanie zatwierdzeń z pliku

openclaw approvals set --file ./exec-approvals.json
openclaw approvals set --stdin <<'EOF'
{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" } }
EOF
openclaw approvals set --node <id|name|ip> --file ./exec-approvals.json
openclaw approvals set --gateway --file ./exec-approvals.json
set akceptuje JSON5, nie tylko ścisły JSON. Użyj --file albo --stdin, ale nie obu naraz.

Przykład „Nigdy nie pytaj” / YOLO

Dla hosta, który nigdy nie powinien zatrzymywać się na zatwierdzeniach exec, ustaw domyślne zatwierdzenia hosta na full + off:
openclaw approvals set --stdin <<'EOF'
{
  version: 1,
  defaults: {
    security: "full",
    ask: "off",
    askFallback: "full"
  }
}
EOF
Wariant dla węzła:
openclaw approvals set --node <id|name|ip> --stdin <<'EOF'
{
  version: 1,
  defaults: {
    security: "full",
    ask: "off",
    askFallback: "full"
  }
}
EOF
Zmienia to tylko plik zatwierdzeń hosta. Aby zachować zgodność żądanej polityki OpenClaw, ustaw także:
openclaw config set tools.exec.host gateway
openclaw config set tools.exec.security full
openclaw config set tools.exec.ask off
Dlaczego w tym przykładzie tools.exec.host=gateway:
  • host=auto nadal oznacza „sandbox, gdy dostępny, w przeciwnym razie Gateway”.
  • YOLO dotyczy zatwierdzeń, nie routingu.
  • Jeśli chcesz exec na hoście nawet wtedy, gdy skonfigurowano sandbox, ustaw wybór hosta jawnie przez gateway lub /exec host=gateway.
Pominięte askFallback domyślnie przyjmuje deny. Ustaw askFallback: "full" jawnie podczas aktualizowania hosta bez interfejsu użytkownika, który ma zachować zachowanie nigdy nie pytaj. Lokalny skrót:
openclaw exec-policy preset yolo
Ten lokalny skrót aktualizuje razem zarówno żądaną lokalną konfigurację tools.exec.*, jak i lokalne domyślne zatwierdzenia. Jest równoważny intencją ręcznej dwuetapowej konfiguracji powyżej, ale tylko dla maszyny lokalnej.

Pomocniki listy dozwolonych

openclaw approvals allowlist add "~/Projects/**/bin/rg"
openclaw approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"
openclaw approvals allowlist add --agent "*" "/usr/bin/uname"

openclaw approvals allowlist remove "~/Projects/**/bin/rg"

Typowe opcje

get, set oraz allowlist add|remove obsługują:
  • --node <id|name|ip>
  • --gateway
  • współdzielone opcje RPC węzła: --url, --token, --timeout, --json
Uwagi dotyczące wyboru celu:
  • brak flag celu oznacza lokalny plik zatwierdzeń na dysku
  • --gateway wybiera plik zatwierdzeń hosta Gateway
  • --node wybiera jeden host węzła po rozwiązaniu identyfikatora, nazwy, adresu IP lub prefiksu identyfikatora
allowlist add|remove obsługuje także:
  • --agent <id> (domyślnie *)

Uwagi

  • --node używa tego samego mechanizmu rozwiązywania co openclaw nodes (identyfikator, nazwa, adres IP lub prefiks identyfikatora).
  • --agent domyślnie przyjmuje "*", co obejmuje wszystkich agentów.
  • Host węzła musi ogłaszać system.execApprovals.get/set (aplikacja macOS lub bezgłowy host węzła).
  • Pliki zatwierdzeń są przechowywane osobno dla każdego hosta w katalogu stanu OpenClaw ($OPENCLAW_STATE_DIR/exec-approvals.json albo ~/.openclaw/exec-approvals.json, gdy zmienna nie jest ustawiona).

Powiązane