CLI commands

Gateway

Gateway là máy chủ WebSocket của OpenClaw (kênh, Node, phiên, hook). Các lệnh con trên trang này nằm dưới openclaw gateway ….

Chạy Gateway

Chạy một tiến trình Gateway cục bộ:

openclaw gateway

Bí danh chạy ở foreground:

openclaw gateway run
Startup behavior
  • Theo mặc định, Gateway từ chối khởi động trừ khi gateway.mode=local được đặt trong ~/.openclaw/openclaw.json. Dùng --allow-unconfigured cho các lần chạy ad-hoc/dev.
  • openclaw onboard --mode localopenclaw setup được kỳ vọng sẽ ghi gateway.mode=local. Nếu tệp tồn tại nhưng thiếu gateway.mode, hãy coi đó là cấu hình bị hỏng hoặc bị ghi đè và sửa nó thay vì ngầm giả định chế độ cục bộ.
  • Nếu tệp tồn tại và thiếu gateway.mode, Gateway coi đó là hư hại cấu hình đáng ngờ và từ chối "đoán local" thay bạn.
  • Việc bind vượt ra ngoài loopback mà không có xác thực sẽ bị chặn (hàng rào an toàn).
  • SIGUSR1 kích hoạt khởi động lại trong tiến trình khi được ủy quyền (commands.restart được bật theo mặc định; đặt commands.restart: false để chặn khởi động lại thủ công, trong khi áp dụng/cập nhật công cụ/cấu hình Gateway vẫn được phép).
  • Các handler SIGINT/SIGTERM dừng tiến trình Gateway, nhưng chúng không khôi phục bất kỳ trạng thái terminal tùy chỉnh nào. Nếu bạn bọc CLI bằng TUI hoặc đầu vào raw-mode, hãy khôi phục terminal trước khi thoát.

Tùy chọn

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA " type="number"> Cổng WebSocket (mặc định đến từ cấu hình/env; thường là 18789).

"--bind
"--auth

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu " type="string"> Ghi đè token (cũng đặt OPENCLAW_GATEWAY_TOKEN cho tiến trình).

"--password
"--tailscale
--tailscale-reset-on-exitboolean

Đặt lại cấu hình serve/funnel của Tailscale khi tắt.

--allow-unconfiguredboolean

Cho phép khởi động Gateway mà không có gateway.mode=local trong cấu hình. Chỉ bỏ qua chốt bảo vệ khởi động cho bootstrap ad-hoc/dev; không ghi hoặc sửa tệp cấu hình.

--devboolean

Tạo cấu hình dev + workspace nếu thiếu (bỏ qua BOOTSTRAP.md).

--resetboolean

Đặt lại cấu hình dev + thông tin xác thực + phiên + workspace (yêu cầu --dev).

--forceboolean

Dừng bất kỳ listener hiện có nào trên cổng đã chọn trước khi khởi động.

--verboseboolean

Log chi tiết.

--cli-backend-logsboolean

Chỉ hiển thị log backend CLI trong console (và bật stdout/stderr).

"--ws-log
--compactboolean

Bí danh cho --ws-log compact.

--raw-streamboolean

Ghi log các sự kiện stream model thô vào jsonl.

Khởi động lại Gateway

openclaw gateway restart
openclaw gateway restart --safe
openclaw gateway restart --force

openclaw gateway restart --safe yêu cầu Gateway đang chạy preflight công việc OpenClaw đang hoạt động trước khi khởi động lại. Nếu có thao tác trong hàng đợi, phân phối phản hồi, lần chạy nhúng, hoặc lần chạy tác vụ đang hoạt động, Gateway báo cáo các điểm chặn, gộp các yêu cầu khởi động lại an toàn trùng lặp và khởi động lại sau khi công việc đang hoạt động đã thoát hết. restart thông thường giữ hành vi service-manager hiện có để tương thích. Chỉ dùng --force khi bạn rõ ràng muốn đường dẫn ghi đè tức thì.

Lập hồ sơ khởi động

  • Đặt OPENCLAW_GATEWAY_STARTUP_TRACE=1 để ghi log thời gian từng pha trong quá trình khởi động Gateway, bao gồm độ trễ eventLoopMax theo từng pha và thời gian bảng tra cứu plugin cho installed-index, manifest registry, startup planning và owner-map.
  • Đặt OPENCLAW_DIAGNOSTICS=timeline với OPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path> để ghi timeline chẩn đoán khởi động JSONL best-effort cho các harness QA bên ngoài. Bạn cũng có thể bật cờ bằng diagnostics.flags: ["timeline"] trong cấu hình; đường dẫn vẫn được cung cấp qua env. Thêm OPENCLAW_DIAGNOSTICS_EVENT_LOOP=1 để bao gồm các mẫu event-loop.
  • Chạy pnpm test:startup:gateway -- --runs 5 --warmup 1 để benchmark quá trình khởi động Gateway. Benchmark ghi lại đầu ra tiến trình đầu tiên, /healthz, /readyz, thời gian startup trace, độ trễ event-loop, và chi tiết thời gian bảng tra cứu plugin.

Truy vấn Gateway đang chạy

Tất cả lệnh truy vấn dùng WebSocket RPC.

Output modes

  • Mặc định: dễ đọc cho người dùng (có màu trong TTY).
  • --json: JSON để máy đọc (không styling/spinner).
  • --no-color (hoặc NO_COLOR=1): tắt ANSI trong khi vẫn giữ bố cục cho người dùng.

Shared options

  • --url <url>: URL WebSocket của Gateway.
  • --token <token>: token Gateway.
  • --password <password>: mật khẩu Gateway.
  • --timeout <ms>: timeout/ngân sách thời gian (khác nhau theo từng lệnh).
  • --expect-final: chờ phản hồi "final" (lệnh gọi agent).

gateway health

openclaw gateway health --url ws://127.0.0.1:18789

Endpoint HTTP /healthz là liveness probe: nó trả về khi máy chủ có thể trả lời HTTP. Endpoint HTTP /readyz nghiêm ngặt hơn và vẫn đỏ khi các sidecar plugin khởi động, kênh hoặc hook đã cấu hình vẫn đang ổn định. Phản hồi readiness chi tiết cục bộ hoặc đã xác thực bao gồm một khối chẩn đoán eventLoop với độ trễ event-loop, mức sử dụng event-loop, tỷ lệ CPU core và cờ degraded.

gateway usage-cost

Lấy tóm tắt chi phí sử dụng từ log phiên.

openclaw gateway usage-cost
openclaw gateway usage-cost --days 7
openclaw gateway usage-cost --json
"--days

gateway stability

Lấy bộ ghi ổn định chẩn đoán gần đây từ Gateway đang chạy.

openclaw gateway stability
openclaw gateway stability --type payload.large
openclaw gateway stability --bundle latest
openclaw gateway stability --bundle latest --export
openclaw gateway stability --json

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0 " type="number" default="25"> Số sự kiện gần đây tối đa cần bao gồm (tối đa 1000).

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ " type="string"> Lọc theo loại sự kiện chẩn đoán, chẳng hạn như payload.large hoặc diagnostic.memory.pressure.

"--since-seq
--bundle [path]string

Đọc một stability bundle đã lưu thay vì gọi Gateway đang chạy. Dùng --bundle latest (hoặc chỉ --bundle) cho bundle mới nhất trong thư mục trạng thái, hoặc truyền trực tiếp đường dẫn JSON bundle.

--exportboolean

Ghi zip chẩn đoán hỗ trợ có thể chia sẻ thay vì in chi tiết độ ổn định.

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo " type="string"> Đường dẫn đầu ra cho --export.

Privacy and bundle behavior
  • Bản ghi giữ metadata vận hành: tên sự kiện, số lượng, kích thước byte, chỉ số bộ nhớ, trạng thái hàng đợi/phiên, tên kênh/plugin và tóm tắt phiên đã biên tập. Chúng không giữ văn bản chat, nội dung Webhook, đầu ra công cụ, nội dung request hoặc response thô, token, cookie, giá trị bí mật, hostname hoặc id phiên thô. Đặt diagnostics.enabled: false để tắt hoàn toàn bộ ghi.
  • Khi Gateway thoát do lỗi nghiêm trọng, timeout khi tắt và lỗi khởi động sau khi restart, OpenClaw ghi cùng snapshot chẩn đoán vào ~/.openclaw/logs/stability/openclaw-stability-*.json khi bộ ghi có sự kiện. Kiểm tra bundle mới nhất bằng openclaw gateway stability --bundle latest; --limit, --type--since-seq cũng áp dụng cho đầu ra bundle.

gateway diagnostics export

Ghi một zip chẩn đoán cục bộ được thiết kế để đính kèm vào báo cáo lỗi. Để xem mô hình quyền riêng tư và nội dung bundle, xem Diagnostics Export.

openclaw gateway diagnostics export
openclaw gateway diagnostics export --output openclaw-diagnostics.zip
openclaw gateway diagnostics export --json
"--log-lines
"--log-bytes
"--url
"--token
"--password
"--timeout
--no-stability-bundleboolean

Bỏ qua việc tra cứu stability bundle đã lưu.

--jsonboolean

In đường dẫn đã ghi, kích thước và manifest dưới dạng JSON.

Bản xuất chứa manifest, tóm tắt Markdown, hình dạng cấu hình, chi tiết cấu hình đã làm sạch, tóm tắt log đã làm sạch, snapshot trạng thái/health Gateway đã làm sạch và stability bundle mới nhất khi có.

Nó được dùng để chia sẻ. Nó giữ các chi tiết vận hành hỗ trợ gỡ lỗi, chẳng hạn như các trường log OpenClaw an toàn, tên subsystem, mã trạng thái, thời lượng, chế độ đã cấu hình, cổng, id plugin, id nhà cung cấp, cài đặt tính năng không bí mật và thông điệp log vận hành đã biên tập. Nó bỏ qua hoặc biên tập văn bản chat, nội dung Webhook, đầu ra công cụ, thông tin xác thực, cookie, định danh tài khoản/tin nhắn, văn bản prompt/instruction, hostname và giá trị bí mật. Khi một thông điệp kiểu LogTape trông giống văn bản payload người dùng/chat/công cụ, bản xuất chỉ giữ lại việc một thông điệp đã bị bỏ qua cùng số byte của nó.

gateway status

gateway status hiển thị dịch vụ Gateway (launchd/systemd/schtasks) cùng với một probe tùy chọn về khả năng kết nối/xác thực.

openclaw gateway status
openclaw gateway status --json
openclaw gateway status --require-rpc
"--url
"--token
"--password
"--timeout
--no-probeboolean

Bỏ qua thăm dò kết nối (chỉ xem dịch vụ).

--deepboolean

Quét cả các dịch vụ cấp hệ thống.

--require-rpcboolean

Nâng cấp thăm dò kết nối mặc định thành thăm dò đọc và thoát với mã khác 0 khi thăm dò đọc đó thất bại. Không thể kết hợp với --no-probe.

Ngữ nghĩa trạng thái
  • gateway status vẫn khả dụng cho chẩn đoán ngay cả khi cấu hình CLI cục bộ bị thiếu hoặc không hợp lệ.
  • gateway status mặc định chứng minh trạng thái dịch vụ, kết nối WebSocket và khả năng xác thực hiển thị tại thời điểm bắt tay. Nó không chứng minh các thao tác đọc/ghi/quản trị.
  • Thăm dò chẩn đoán không gây biến đổi đối với xác thực thiết bị lần đầu: chúng tái sử dụng token thiết bị đã lưu trong bộ nhớ đệm khi có, nhưng không tạo danh tính thiết bị CLI mới hoặc bản ghi ghép đôi thiết bị chỉ đọc chỉ để kiểm tra trạng thái.
  • gateway status phân giải SecretRefs xác thực đã cấu hình cho xác thực thăm dò khi có thể.
  • Nếu một SecretRef xác thực bắt buộc chưa được phân giải trong đường dẫn lệnh này, gateway status --json báo cáo rpc.authWarning khi kết nối/xác thực thăm dò thất bại; hãy truyền rõ ràng --token/--password hoặc phân giải nguồn bí mật trước.
  • Nếu thăm dò thành công, cảnh báo auth-ref chưa phân giải sẽ bị ẩn để tránh dương tính giả.
  • Dùng --require-rpc trong script và tự động hóa khi một dịch vụ đang lắng nghe là chưa đủ và bạn cũng cần các lệnh gọi RPC phạm vi đọc hoạt động tốt.
  • --deep thêm quét nỗ lực tối đa cho các bản cài đặt launchd/systemd/schtasks bổ sung. Khi phát hiện nhiều dịch vụ giống gateway, đầu ra cho người dùng in gợi ý dọn dẹp và cảnh báo rằng hầu hết thiết lập nên chạy một gateway trên mỗi máy.
  • --deep cũng báo cáo một lần bàn giao khởi động lại Gateway supervisor gần đây khi tiến trình dịch vụ đã thoát sạch để một supervisor bên ngoài khởi động lại.
  • Đầu ra cho người dùng bao gồm đường dẫn log tệp đã phân giải cùng ảnh chụp nhanh đường dẫn/tính hợp lệ của cấu hình CLI so với dịch vụ để giúp chẩn đoán lệch profile hoặc state-dir.
Kiểm tra lệch xác thực systemd trên Linux
  • Trên các bản cài đặt systemd Linux, kiểm tra lệch xác thực dịch vụ đọc cả giá trị Environment=EnvironmentFile= từ unit (bao gồm %h, đường dẫn có trích dẫn, nhiều tệp và các tệp - tùy chọn).
  • Kiểm tra lệch phân giải SecretRefs gateway.auth.token bằng env runtime đã hợp nhất (env lệnh dịch vụ trước, rồi dự phòng về env tiến trình).
  • Nếu xác thực token không thực sự hoạt động (đặt rõ gateway.auth.modepassword/none/trusted-proxy, hoặc chưa đặt mode khi mật khẩu có thể thắng và không có ứng viên token nào có thể thắng), kiểm tra token-drift bỏ qua phân giải token cấu hình.

gateway probe

gateway probe là lệnh "debug mọi thứ". Nó luôn thăm dò:

  • gateway remote đã cấu hình của bạn (nếu đã đặt), và
  • localhost (loopback) ngay cả khi remote đã được cấu hình.

Nếu bạn truyền --url, mục tiêu rõ ràng đó sẽ được thêm trước cả hai. Đầu ra cho người dùng gắn nhãn các mục tiêu là:

  • URL (explicit)
  • Remote (configured) hoặc Remote (configured, inactive)
  • Local loopback
openclaw gateway probe
openclaw gateway probe --json
Diễn giải
  • Reachable: yes nghĩa là ít nhất một mục tiêu đã chấp nhận kết nối WebSocket.
  • Capability: read-only|write-capable|admin-capable|pairing-pending|connect-only báo cáo những gì thăm dò có thể chứng minh về xác thực. Nó tách biệt với khả năng truy cập.
  • Read probe: ok nghĩa là các lệnh gọi RPC chi tiết phạm vi đọc (health/status/system-presence/config.get) cũng đã thành công.
  • Read probe: limited - missing scope: operator.read nghĩa là kết nối thành công nhưng RPC phạm vi đọc bị giới hạn. Trường hợp này được báo cáo là khả năng truy cập suy giảm, không phải thất bại hoàn toàn.
  • Read probe: failed sau Connect: ok nghĩa là Gateway đã chấp nhận kết nối WebSocket, nhưng chẩn đoán đọc tiếp theo đã hết thời gian chờ hoặc thất bại. Đây cũng là khả năng truy cập suy giảm, không phải Gateway không thể truy cập.
  • Giống gateway status, thăm dò tái sử dụng xác thực thiết bị đã lưu trong bộ nhớ đệm nhưng không tạo danh tính thiết bị lần đầu hoặc trạng thái ghép đôi.
  • Mã thoát khác 0 chỉ khi không có mục tiêu được thăm dò nào có thể truy cập.
Đầu ra JSON

Cấp cao nhất:

  • ok: ít nhất một mục tiêu có thể truy cập.
  • degraded: ít nhất một mục tiêu đã chấp nhận kết nối nhưng không hoàn tất chẩn đoán RPC chi tiết đầy đủ.
  • capability: khả năng tốt nhất quan sát được trên các mục tiêu có thể truy cập (read_only, write_capable, admin_capable, pairing_pending, connected_no_operator_scope, hoặc unknown).
  • primaryTargetId: mục tiêu tốt nhất để xem là mục tiêu thắng đang hoạt động theo thứ tự này: URL rõ ràng, đường hầm SSH, remote đã cấu hình, rồi local loopback.
  • warnings[]: các bản ghi cảnh báo nỗ lực tối đa với code, messagetargetIds tùy chọn.
  • network: gợi ý URL local loopback/tailnet được suy ra từ cấu hình hiện tại và mạng của host.
  • discovery.timeoutMsdiscovery.count: ngân sách khám phá/số lượng kết quả thực tế dùng cho lượt thăm dò này.

Theo từng mục tiêu (targets[].connect):

  • ok: khả năng truy cập sau phân loại kết nối + suy giảm.
  • rpcOk: RPC chi tiết đầy đủ thành công.
  • scopeLimited: RPC chi tiết thất bại do thiếu phạm vi operator.

Theo từng mục tiêu (targets[].auth):

  • role: vai trò xác thực được báo cáo trong hello-ok khi có.
  • scopes: các phạm vi được cấp được báo cáo trong hello-ok khi có.
  • capability: phân loại khả năng xác thực được hiển thị cho mục tiêu đó.
Mã cảnh báo thường gặp
  • ssh_tunnel_failed: thiết lập đường hầm SSH thất bại; lệnh đã dự phòng sang thăm dò trực tiếp.
  • multiple_gateways: có thể truy cập nhiều hơn một mục tiêu; điều này bất thường trừ khi bạn cố ý chạy các profile tách biệt, chẳng hạn như bot cứu hộ.
  • auth_secretref_unresolved: không thể phân giải SecretRef xác thực đã cấu hình cho một mục tiêu thất bại.
  • probe_scope_limited: kết nối WebSocket thành công, nhưng thăm dò đọc bị giới hạn do thiếu operator.read.

Remote qua SSH (tương đương ứng dụng Mac)

Chế độ "Remote over SSH" của ứng dụng macOS dùng chuyển tiếp cổng cục bộ để gateway remote (có thể chỉ được bind vào loopback) có thể truy cập tại ws://127.0.0.1:<port>.

Tương đương trên CLI:

openclaw gateway probe --ssh user@gateway-host

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ " type="string"> user@host hoặc user@host:port (cổng mặc định là 22).

--ssh-autoboolean

Chọn host gateway đầu tiên được khám phá làm mục tiêu SSH từ endpoint khám phá đã phân giải (local. cộng với miền diện rộng đã cấu hình, nếu có). Các gợi ý chỉ có TXT bị bỏ qua.

Cấu hình (tùy chọn, dùng làm mặc định):

  • gateway.remote.sshTarget
  • gateway.remote.sshIdentity

gateway call <method>

Trợ giúp RPC cấp thấp.

openclaw gateway call status
openclaw gateway call logs.tail --params '{"sinceMs": 60000}'
"--params
"--url
"--token
"--password
"--timeout
--expect-finalboolean

Chủ yếu dành cho RPC kiểu agent phát các sự kiện trung gian trước payload cuối cùng.

--jsonboolean

Đầu ra JSON đọc được bằng máy.

Quản lý dịch vụ Gateway

openclaw gateway install
openclaw gateway start
openclaw gateway stop
openclaw gateway restart
openclaw gateway uninstall

Cài đặt với wrapper

Dùng --wrapper khi dịch vụ được quản lý phải khởi động thông qua một executable khác, ví dụ một shim trình quản lý bí mật hoặc trình trợ giúp chạy với người dùng khác. Wrapper nhận các đối số Gateway bình thường và chịu trách nhiệm cuối cùng exec openclaw hoặc Node với các đối số đó.

cat > ~/.local/bin/openclaw-doppler <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
exec doppler run --project my-project --config production -- openclaw "$@"
EOF
chmod +x ~/.local/bin/openclaw-doppler

openclaw gateway install --wrapper ~/.local/bin/openclaw-doppler --force
openclaw gateway restart

Bạn cũng có thể đặt wrapper thông qua môi trường. gateway install xác thực rằng đường dẫn là một tệp executable, ghi wrapper vào ProgramArguments của dịch vụ và lưu giữ OPENCLAW_WRAPPER trong môi trường dịch vụ cho các lần cài đặt lại bắt buộc, cập nhật và sửa chữa bằng doctor sau này.

OPENCLAW_WRAPPER="$HOME/.local/bin/openclaw-doppler" openclaw gateway install --force
openclaw doctor

Để xóa một wrapper đã lưu giữ, hãy xóa OPENCLAW_WRAPPER trong khi cài đặt lại:

OPENCLAW_WRAPPER= openclaw gateway install --force
openclaw gateway restart
Tùy chọn lệnh
  • gateway status: --url, --token, --password, --timeout, --no-probe, --require-rpc, --deep, --json
  • gateway install: --port, --runtime <node|bun>, --token, --wrapper <path>, --force, --json
  • gateway restart: --safe, --force, --wait <duration>, --json
  • gateway uninstall|start|stop: --json
Hành vi vòng đời
  • Dùng gateway restart để khởi động lại một dịch vụ được quản lý. Không nối gateway stopgateway start để thay thế thao tác khởi động lại; trên macOS, gateway stop cố ý vô hiệu hóa LaunchAgent trước khi dừng nó.
  • gateway restart --safe yêu cầu Gateway đang chạy kiểm tra trước công việc OpenClaw đang hoạt động và trì hoãn khởi động lại cho đến khi việc gửi trả lời, các lần chạy nhúng và các lần chạy tác vụ rút hết. Không thể kết hợp --safe với --force hoặc --wait.
  • gateway restart --wait 30s ghi đè ngân sách rút cạn khi khởi động lại đã cấu hình cho lần khởi động lại đó. Số trần là mili giây; các đơn vị như s, mh được chấp nhận. --wait 0 chờ vô thời hạn.
  • gateway restart --force bỏ qua việc rút cạn công việc đang hoạt động và khởi động lại ngay lập tức. Dùng tùy chọn này khi operator đã kiểm tra các tác vụ chặn được liệt kê và muốn gateway hoạt động trở lại ngay.
  • Các lệnh vòng đời chấp nhận --json cho script.
Auth and SecretRefs at install time
  • Khi xác thực bằng token yêu cầu token và gateway.auth.token được quản lý bằng SecretRef, gateway install xác thực rằng SecretRef có thể được phân giải nhưng không lưu token đã phân giải vào siêu dữ liệu môi trường dịch vụ.
  • Nếu xác thực bằng token yêu cầu token và SecretRef token đã cấu hình chưa được phân giải, quá trình cài đặt sẽ thất bại theo hướng đóng thay vì lưu văn bản thuần dự phòng.
  • Với xác thực bằng mật khẩu trên gateway run, ưu tiên OPENCLAW_GATEWAY_PASSWORD, --password-file, hoặc gateway.auth.password dựa trên SecretRef thay vì --password nội tuyến.
  • Trong chế độ xác thực suy luận, OPENCLAW_GATEWAY_PASSWORD chỉ có trong shell không nới lỏng yêu cầu token khi cài đặt; hãy dùng cấu hình bền vững (gateway.auth.password hoặc cấu hình env) khi cài đặt một dịch vụ được quản lý.
  • Nếu cả gateway.auth.tokengateway.auth.password đều được cấu hình và gateway.auth.mode chưa được đặt, quá trình cài đặt sẽ bị chặn cho đến khi chế độ được đặt rõ ràng.

Khám phá gateway (Bonjour)

gateway discover quét các beacon Gateway (_openclaw-gw._tcp).

  • Multicast DNS-SD: local.
  • Unicast DNS-SD (Wide-Area Bonjour): chọn một miền (ví dụ: openclaw.internal.) và thiết lập DNS phân tách + máy chủ DNS; xem Bonjour.

Chỉ các gateway đã bật khám phá Bonjour (mặc định) mới quảng bá beacon.

Bản ghi khám phá Wide-Area bao gồm (TXT):

  • role (gợi ý vai trò gateway)
  • transport (gợi ý phương thức truyền tải, ví dụ gateway)
  • gatewayPort (cổng WebSocket, thường là 18789)
  • sshPort (tùy chọn; client mặc định dùng mục tiêu SSH là 22 khi không có trường này)
  • tailnetDns (tên máy chủ MagicDNS, khi có)
  • gatewayTls / gatewayTlsSha256 (TLS đã bật + dấu vân tay chứng chỉ)
  • cliPath (gợi ý cài đặt từ xa được ghi vào vùng wide-area)

gateway discover

openclaw gateway discover
"--timeout
--jsonboolean

Đầu ra máy đọc được (cũng tắt định dạng/spinner).

Ví dụ:

openclaw gateway discover --timeout 4000
openclaw gateway discover --json | jq '.beacons[].wsUrl'

Liên quan