chore: sync OpenClaw runtime state

Sync latest runtime state from zap VM: credential rotations,
device registrations, completion scripts, cron jobs, and
telemetry offsets.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
William Valentin
2026-03-19 15:35:58 -07:00
parent 905d2eb58c
commit d96efca2c4
19 changed files with 510 additions and 87 deletions
+48 -7
View File
@@ -11,7 +11,7 @@ _openclaw_root_completion() {
"--profile[Use a named profile (isolates OPENCLAW_STATE_DIR/OPENCLAW_CONFIG_PATH under ~/.openclaw-<name>)]" \
"--log-level[Global log level override for file + console (silent|fatal|error|warn|info|debug|trace)]" \
"--no-color[Disable ANSI colors]" \
"1: :_values 'command' 'completion[Generate shell completion script]' 'setup[Initialize ~/.openclaw/openclaw.json and the agent workspace]' 'onboard[Interactive wizard to set up the gateway, workspace, and skills]' 'configure[Interactive setup wizard for credentials, channels, gateway, and agent defaults]' 'config[Non-interactive config helpers (get/set/unset/file/validate). Run without subcommand for the setup wizard.]' 'doctor[Health checks + quick fixes for the gateway and channels]' 'dashboard[Open the Control UI with your current token]' 'reset[Reset local config/state (keeps the CLI installed)]' 'uninstall[Uninstall the gateway service + local data (CLI remains)]' 'message[Send, read, and manage messages and channel actions]' 'memory[Search, inspect, and reindex memory files]' 'agent[Run an agent turn via the Gateway (use --local for embedded)]' 'agents[Manage isolated agents (workspaces + auth + routing)]' 'status[Show channel health and recent session recipients]' 'health[Fetch health from the running gateway]' 'sessions[List stored conversation sessions]' 'browser[Manage OpenClaw'\''s dedicated browser (Chrome/Chromium)]' 'acp[Run an ACP bridge backed by the Gateway]' 'gateway[Run, inspect, and query the WebSocket Gateway]' 'daemon[Manage the Gateway service (launchd/systemd/schtasks)]' 'logs[Tail gateway file logs via RPC]' 'system[System tools (events, heartbeat, presence)]' 'models[Model discovery, scanning, and configuration]' 'approvals[Manage exec approvals (gateway or node host)]' 'nodes[Manage gateway-owned nodes (pairing, status, invoke, and media)]' 'devices[Device pairing and auth tokens]' 'node[Run and manage the headless node host service]' 'sandbox[Manage sandbox containers (Docker-based agent isolation)]' 'tui[Open a terminal UI connected to the Gateway]' 'cron[Manage cron jobs (via Gateway)]' 'dns[DNS helpers for wide-area discovery (Tailscale + CoreDNS)]' 'docs[Search the live OpenClaw docs]' 'hooks[Manage internal agent hooks]' 'webhooks[Webhook helpers and integrations]' 'qr[Generate an iOS pairing QR code and setup code]' 'clawbot[Legacy clawbot command aliases]' 'pairing[Secure DM pairing (approve inbound requests)]' 'plugins[Manage OpenClaw plugins and extensions]' 'channels[Manage connected chat channels and accounts]' 'directory[Lookup contact and group IDs (self, peers, groups) for supported chat channels]' 'security[Audit local config and state for common security foot-guns]' 'secrets[Secrets runtime controls]' 'skills[List and inspect available skills]' 'update[Update OpenClaw and inspect update channel status]'" \
"1: :_values 'command' 'completion[Generate shell completion script]' 'setup[Initialize ~/.openclaw/openclaw.json and the agent workspace]' 'onboard[Interactive wizard to set up the gateway, workspace, and skills]' 'configure[Interactive setup wizard for credentials, channels, gateway, and agent defaults]' 'config[Non-interactive config helpers (get/set/unset/file/validate). Run without subcommand for the setup wizard.]' 'backup[Create and verify local backup archives for OpenClaw state]' 'doctor[Health checks + quick fixes for the gateway and channels]' 'dashboard[Open the Control UI with your current token]' 'reset[Reset local config/state (keeps the CLI installed)]' 'uninstall[Uninstall the gateway service + local data (CLI remains)]' 'message[Send, read, and manage messages and channel actions]' 'memory[Search, inspect, and reindex memory files]' 'agent[Run an agent turn via the Gateway (use --local for embedded)]' 'agents[Manage isolated agents (workspaces + auth + routing)]' 'status[Show channel health and recent session recipients]' 'health[Fetch health from the running gateway]' 'sessions[List stored conversation sessions]' 'browser[Manage OpenClaw'\''s dedicated browser (Chrome/Chromium)]' 'acp[Run an ACP bridge backed by the Gateway]' 'gateway[Run, inspect, and query the WebSocket Gateway]' 'daemon[Manage the Gateway service (launchd/systemd/schtasks)]' 'logs[Tail gateway file logs via RPC]' 'system[System tools (events, heartbeat, presence)]' 'models[Model discovery, scanning, and configuration]' 'approvals[Manage exec approvals (gateway or node host)]' 'nodes[Manage gateway-owned nodes (pairing, status, invoke, and media)]' 'devices[Device pairing and auth tokens]' 'node[Run and manage the headless node host service]' 'sandbox[Manage sandbox containers (Docker-based agent isolation)]' 'tui[Open a terminal UI connected to the Gateway]' 'cron[Manage cron jobs (via Gateway)]' 'dns[DNS helpers for wide-area discovery (Tailscale + CoreDNS)]' 'docs[Search the live OpenClaw docs]' 'hooks[Manage internal agent hooks]' 'webhooks[Webhook helpers and integrations]' 'qr[Generate an iOS pairing QR code and setup code]' 'clawbot[Legacy clawbot command aliases]' 'pairing[Secure DM pairing (approve inbound requests)]' 'plugins[Manage OpenClaw plugins and extensions]' 'channels[Manage connected chat channels and accounts]' 'directory[Lookup contact and group IDs (self, peers, groups) for supported chat channels]' 'security[Audit local config and state for common security foot-guns]' 'secrets[Secrets runtime controls]' 'skills[List and inspect available skills]' 'update[Update OpenClaw and inspect update channel status]'" \
"*::arg:->args"
case $state in
@@ -22,6 +22,7 @@ _openclaw_root_completion() {
(onboard) _openclaw_onboard ;;
(configure) _openclaw_configure ;;
(config) _openclaw_config ;;
(backup) _openclaw_backup ;;
(doctor) _openclaw_doctor ;;
(dashboard) _openclaw_dashboard ;;
(reset) _openclaw_reset ;;
@@ -94,7 +95,7 @@ _openclaw_onboard() {
"--accept-risk[Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)]" \
"--flow[Wizard flow: quickstart|advanced|manual]" \
"--mode[Wizard mode: local|remote]" \
"--auth-choice[Auth: token|openai-codex|chutes|vllm|apiKey|openai-api-key|mistral-api-key|openrouter-api-key|kilocode-api-key|ai-gateway-api-key|cloudflare-ai-gateway-api-key|moonshot-api-key|kimi-code-api-key|gemini-api-key|zai-api-key|xiaomi-api-key|minimax-api|synthetic-api-key|venice-api-key|together-api-key|huggingface-api-key|opencode-zen|xai-api-key|litellm-api-key|qianfan-api-key|volcengine-api-key|byteplus-api-key|moonshot-api-key-cn|github-copilot|gemini-api-key|google-gemini-cli|zai-api-key|zai-coding-global|zai-coding-cn|zai-global|zai-cn|xiaomi-api-key|minimax-portal|qwen-portal|copilot-proxy|apiKey|opencode-zen|minimax-api|minimax-api-key-cn|minimax-api-lightning|custom-api-key|skip|setup-token|oauth|claude-cli|codex-cli|minimax-cloud|minimax]" \
"--auth-choice[Auth: token|openai-codex|chutes|apiKey|openai-api-key|mistral-api-key|openrouter-api-key|kilocode-api-key|ai-gateway-api-key|cloudflare-ai-gateway-api-key|moonshot-api-key|kimi-code-api-key|gemini-api-key|zai-api-key|xiaomi-api-key|minimax-global-api|synthetic-api-key|venice-api-key|together-api-key|huggingface-api-key|opencode-zen|opencode-go|xai-api-key|litellm-api-key|qianfan-api-key|modelstudio-api-key-cn|modelstudio-api-key|volcengine-api-key|byteplus-api-key|moonshot-api-key-cn|github-copilot|gemini-api-key|google-gemini-cli|zai-api-key|zai-coding-global|zai-coding-cn|zai-global|zai-cn|xiaomi-api-key|minimax-global-oauth|minimax-global-api|minimax-cn-oauth|minimax-cn-api|qwen-portal|copilot-proxy|apiKey|opencode-zen|qianfan-api-key|modelstudio-api-key-cn|modelstudio-api-key|custom-api-key|ollama|sglang|vllm|skip|setup-token|oauth|claude-cli|codex-cli]" \
"--token-provider[Token provider id (non-interactive; used with --auth-choice token)]" \
"--token[Token value (non-interactive; used with --auth-choice token)]" \
"--token-profile-id[Auth profile id (non-interactive; default: <provider>:manual)]" \
@@ -119,10 +120,13 @@ _openclaw_onboard() {
"--venice-api-key[Venice API key]" \
"--together-api-key[Together AI API key]" \
"--huggingface-api-key[Hugging Face API key (HF token)]" \
"--opencode-zen-api-key[OpenCode Zen API key]" \
"--opencode-zen-api-key[OpenCode API key (Zen catalog)]" \
"--opencode-go-api-key[OpenCode API key (Go catalog)]" \
"--xai-api-key[xAI API key]" \
"--litellm-api-key[LiteLLM API key]" \
"--qianfan-api-key[QIANFAN API key]" \
"--modelstudio-api-key-cn[Alibaba Cloud Model Studio Coding Plan API key (China)]" \
"--modelstudio-api-key[Alibaba Cloud Model Studio Coding Plan API key (Global/Intl)]" \
"--volcengine-api-key[Volcano Engine API key]" \
"--byteplus-api-key[BytePlus API key]" \
"--custom-base-url[Custom provider base URL]" \
@@ -206,6 +210,40 @@ _openclaw_config() {
esac
}
_openclaw_backup_create() {
_arguments -C \
"--output[Archive path or destination directory]" \
"--json[Output JSON]" \
"--dry-run[Print the backup plan without writing the archive]" \
"--verify[Verify the archive after writing it]" \
"--only-config[Back up only the active JSON config file]" \
"--no-include-workspace[Exclude workspace directories from the backup]"
}
_openclaw_backup_verify() {
_arguments -C \
"--json[Output JSON]"
}
_openclaw_backup() {
local -a commands
local -a options
_arguments -C \
\
"1: :_values 'command' 'create[Write a backup archive for config, credentials, sessions, and workspaces]' 'verify[Validate a backup archive and its embedded manifest]'" \
"*::arg:->args"
case $state in
(args)
case $line[1] in
(create) _openclaw_backup_create ;;
(verify) _openclaw_backup_verify ;;
esac
;;
esac
}
_openclaw_doctor() {
_arguments -C \
"--no-workspace-suggestions[Disable workspace memory system suggestions]" \
@@ -897,7 +935,7 @@ _openclaw_agent() {
"(--to -t)"{--to,-t}"[Recipient number in E.164 used to derive the session key]" \
"--session-id[Use an explicit session id]" \
"--agent[Agent id (overrides routing bindings)]" \
"--thinking[Thinking level: off | minimal | low | medium | high]" \
"--thinking[Thinking level: off | minimal | low | medium | high | xhigh]" \
"--verbose[Persist agent verbose level for the session]" \
"--channel[Delivery channel: last|telegram|whatsapp|discord|irc|googlechat|slack|signal|imessage|line|feishu|nostr|msteams|mattermost|nextcloud-talk|matrix|bluebubbles|zalo|zalouser|synology-chat|tlon (omit to use the main session channel)]" \
"--reply-to[Delivery target override (separate from session routing)]" \
@@ -1128,7 +1166,7 @@ _openclaw_browser_create_profile() {
"--name[Profile name (lowercase, numbers, hyphens)]" \
"--color[Profile color (hex format, e.g. #0066CC)]" \
"--cdp-url[CDP URL for remote Chrome (http/https)]" \
"--driver[Profile driver (openclaw|extension). Default: openclaw]"
"--driver[Profile driver (openclaw|extension|existing-session). Default: openclaw]"
}
_openclaw_browser_delete_profile() {
@@ -1647,6 +1685,7 @@ _openclaw_acp() {
"--require-existing[Fail if the session key/label does not exist]" \
"--reset-session[Reset the session key before first use]" \
"--no-prefix-cwd[Do not prefix prompts with the working directory]" \
"--provenance[ACP provenance mode: off, meta, or meta+receipt]" \
"(--verbose -v)"{--verbose,-v}"[Verbose logging to stderr]" \
"1: :_values 'command' 'client[Run an interactive ACP client against the local ACP bridge]'" \
"*::arg:->args"
@@ -1689,6 +1728,7 @@ _openclaw_gateway_status() {
"--password[Gateway password (password auth)]" \
"--timeout[Timeout in ms]" \
"--no-probe[Skip RPC probe]" \
"--require-rpc[Exit non-zero when the RPC probe fails]" \
"--deep[Scan system-level services]" \
"--json[Output JSON]"
}
@@ -1825,6 +1865,7 @@ _openclaw_daemon_status() {
"--password[Gateway password (password auth)]" \
"--timeout[Timeout in ms]" \
"--no-probe[Skip RPC probe]" \
"--require-rpc[Exit non-zero when the RPC probe fails]" \
"--deep[Scan system-level services]" \
"--json[Output JSON]"
}
@@ -3009,7 +3050,7 @@ _openclaw_cron_add() {
"--exact[Disable cron staggering (set stagger to 0)]" \
"--system-event[System event payload (main session)]" \
"--message[Agent message payload]" \
"--thinking[Thinking level for agent jobs (off|minimal|low|medium|high)]" \
"--thinking[Thinking level for agent jobs (off|minimal|low|medium|high|xhigh)]" \
"--model[Model override for agent jobs (provider/model or alias)]" \
"--timeout-seconds[Timeout seconds for agent jobs]" \
"--light-context[Use lightweight bootstrap context for agent jobs]" \
@@ -3093,7 +3134,7 @@ _openclaw_cron_edit() {
"--exact[Disable cron staggering (set stagger to 0)]" \
"--system-event[Set systemEvent payload]" \
"--message[Set agentTurn payload message]" \
"--thinking[Thinking level for agent jobs]" \
"--thinking[Thinking level for agent jobs (off|minimal|low|medium|high|xhigh)]" \
"--model[Model override for agent jobs]" \
"--timeout-seconds[Timeout seconds for agent jobs]" \
"--light-context[Enable lightweight bootstrap context for agent jobs]" \