openclaw.json: lấy/đặt/vá/hủy đặt một giá trị theo đường dẫn, in schema, xác thực hoặc in đường dẫn tệp đang hoạt động. Chạy openclaw config mà không có lệnh con để mở cùng trình hướng dẫn từng bước như openclaw configure.
Khi
OPENCLAW_NIX_MODE=1, OpenClaw coi openclaw.json là bất biến. Các lệnh chỉ đọc (config get, config file, config schema, config validate) vẫn hoạt động; các lệnh ghi cấu hình sẽ từ chối. Thay vào đó, hãy chỉnh sửa nguồn Nix cho bản cài đặt; đối với bản phân phối nix-openclaw chính chủ, hãy dùng Hướng dẫn bắt đầu nhanh với nix-openclaw và đặt các giá trị trong programs.openclaw.config hoặc instances.<name>.config.Tùy chọn gốc
Bộ lọc phần thiết lập có hướng dẫn, có thể lặp lại, khi bạn chạy
openclaw config mà không có lệnh con.workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Ví dụ
Đường dẫn
Ký hiệu dấu chấm hoặc dấu ngoặc. Hãy đặt đường dẫn có dấu ngoặc trong dấu nháy ở các ví dụ shell để zsh không mở rộng glob[0]:
config get
Đọc một giá trị từ ảnh chụp nhanh cấu hình đã che thông tin nhạy cảm (các bí mật không bao giờ được in). --json in giá trị thô dưới dạng JSON; nếu không, chuỗi/số/giá trị boolean được in trực tiếp, còn đối tượng/mảng được in dưới dạng JSON đã định dạng.
Khi không có đường dẫn, --json ghi { "error": "Config path not found: <path>" } vào stdout và thoát với trạng thái 1. Nếu không có --json, thông báo chẩn đoán vẫn nằm trên stderr.
config file
In đường dẫn tệp cấu hình đang hoạt động, được phân giải từ OPENCLAW_CONFIG_PATH hoặc vị trí mặc định. Đường dẫn trỏ đến một tệp thông thường, không phải liên kết tượng trưng; xem An toàn khi ghi.
config schema
In schema JSON đã tạo cho openclaw.json ra stdout.
Nội dung bao gồm
Nội dung bao gồm
- Schema cấu hình gốc hiện tại, cùng với trường chuỗi
$schemaở cấp gốc dành cho công cụ trình soạn thảo. - Siêu dữ liệu tài liệu của trường
title/descriptionđược Control UI sử dụng. - Các nút đối tượng lồng nhau, ký tự đại diện (
*) và phần tử mảng ([]) kế thừa cùng siêu dữ liệutitle/descriptionkhi có tài liệu trường khớp. - Các nhánh
anyOf/oneOf/allOfcũng kế thừa cùng siêu dữ liệu tài liệu. - Siêu dữ liệu schema Plugin + kênh trực tiếp theo cơ chế nỗ lực tối đa khi có thể tải các manifest thời gian chạy.
- Một schema dự phòng sạch ngay cả khi cấu hình hiện tại không hợp lệ.
RPC thời gian chạy liên quan
RPC thời gian chạy liên quan
config.schema.lookup trả về một đường dẫn cấu hình đã chuẩn hóa cùng một nút schema nông (title, description, type, enum, const, các giới hạn chung), siêu dữ liệu gợi ý UI khớp và bản tóm tắt các phần tử con trực tiếp. Dùng nó để xem chi tiết theo phạm vi đường dẫn trong Control UI hoặc các máy khách tùy chỉnh.config validate
Xác thực cấu hình hiện tại theo schema đang hoạt động mà không khởi động Gateway.
Nếu quá trình xác thực đã thất bại, hãy bắt đầu bằng
openclaw configure hoặc openclaw doctor --fix. openclaw chat không bỏ qua cơ chế bảo vệ đối với cấu hình không hợp lệ.Giá trị
Các giá trị được phân tích cú pháp dưới dạng JSON5 khi có thể; nếu không, chúng được coi là chuỗi thô. Dùng--strict-json để bắt buộc sử dụng JSON chuẩn mà không dự phòng sang chuỗi (khi đó cú pháp chỉ có trong JSON5 như chú thích, dấu phẩy cuối hoặc khóa không đặt trong dấu nháy sẽ bị từ chối). --json là bí danh cũ của --strict-json trên config set.
config get <path> --json in giá trị thô dưới dạng JSON thay vì văn bản được định dạng cho terminal.
Khi một lần ghi thay đổi agents.defaults.model hoặc agents.list[].model của từng tác nhân, OpenClaw phân giải từng mô hình chính hoặc dự phòng đã thay đổi thông qua các danh mục nhà cung cấp đã cấu hình trước khi ghi. Các tham chiếu mô hình không xác định bị từ chối mà không thay đổi cấu hình đang hoạt động; chạy openclaw models list để xem các mô hình có sẵn.
Theo mặc định, việc gán đối tượng sẽ thay thế đường dẫn đích. Các đường dẫn được bảo vệ thường chứa mục do người dùng thêm sẽ từ chối thao tác thay thế làm xóa các mục hiện có, trừ khi bạn truyền
--replace: agents.defaults.models, agents.list, models.providers, models.providers.<id>, models.providers.<id>.models, plugins.entries và auth.profiles.--merge khi thêm mục vào các ánh xạ đó:
--replace khi giá trị được cung cấp chủ ý trở thành toàn bộ giá trị đích.
Các chế độ config set
- Chế độ giá trị
- Chế độ trình dựng SecretRef
- Chế độ trình dựng nhà cung cấp
- Chế độ hàng loạt
--batch-json/--batch-file) làm nguồn sự thật; --strict-json / --json không thay đổi hành vi phân tích cú pháp hàng loạt.
Chế độ đường dẫn/giá trị JSON cũng hoạt động trực tiếp với SecretRef và nhà cung cấp:
Cờ trình dựng nhà cung cấp
Các đích của trình dựng nhà cung cấp phải dùngsecrets.providers.<alias> làm đường dẫn.
Cờ chung
Cờ chung
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Nhà cung cấp môi trường (--provider-source env)
Nhà cung cấp môi trường (--provider-source env)
--provider-allowlist <ENV_VAR>(có thể lặp lại)
Nhà cung cấp tệp (--provider-source file)
Nhà cung cấp tệp (--provider-source file)
--provider-path <path>(bắt buộc)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Nhà cung cấp thực thi (--provider-source exec)
Nhà cung cấp thực thi (--provider-source exec)
--provider-command <path>(bắt buộc)--provider-arg <arg>(có thể lặp lại)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(có thể lặp lại)--provider-pass-env <ENV_VAR>(có thể lặp lại)--provider-trusted-dir <path>(có thể lặp lại)--provider-allow-insecure-path--provider-allow-symlink-command
config patch
Dán hoặc chuyển qua pipe một bản vá JSON5 có hình dạng cấu hình thay vì chạy nhiều lệnh config set dựa trên đường dẫn. Các đối tượng được hợp nhất đệ quy; mảng và giá trị vô hướng thay thế đích; null xóa đường dẫn đích.
--stdin được chuyển qua pipe bị giới hạn ở 1 MiB.
Chuyển bản vá qua stdin cho các tập lệnh thiết lập từ xa:
--replace-path <path> khi một đối tượng hoặc mảng phải trở thành chính xác giá trị được cung cấp thay vì được vá đệ quy:
--dry-run chạy các kiểm tra về schema và khả năng phân giải SecretRef mà không ghi dữ liệu. Theo mặc định, các SecretRef dựa trên exec bị bỏ qua trong quá trình chạy thử; thêm --allow-exec khi bạn chủ ý muốn quá trình chạy thử thực thi các lệnh của nhà cung cấp.
Chạy thử
--dry-run xác thực các thay đổi mà không ghi openclaw.json. Có trên config set, config patch và config unset.
Hành vi chạy thử
Hành vi chạy thử
- Chế độ trình dựng: chạy các kiểm tra khả năng phân giải SecretRef cho các tham chiếu/nhà cung cấp đã thay đổi.
- Chế độ JSON (
--strict-json,--jsonhoặc chế độ hàng loạt): chạy xác thực schema cùng các kiểm tra khả năng phân giải SecretRef. - Xác thực chính sách được thực hiện trên toàn bộ cấu hình sau thay đổi, vì vậy việc ghi đối tượng cha (ví dụ đặt
hooksthành một đối tượng) không thể bỏ qua việc xác thực bề mặt không được hỗ trợ. - Theo mặc định, các kiểm tra SecretRef exec bị bỏ qua để tránh tác dụng phụ của lệnh; truyền
--allow-execđể chủ động bật (thao tác này có thể thực thi các lệnh của nhà cung cấp).--allow-execchỉ dành cho chạy thử và sẽ báo lỗi nếu không có--dry-run.
Các trường của --dry-run --json
Các trường của --dry-run --json
ok: quá trình chạy thử có thành công hay khôngoperations: số phép gán đã được đánh giáchecks: các kiểm tra schema/khả năng phân giải có được chạy hay khôngchecks.resolvabilityComplete: các kiểm tra khả năng phân giải có chạy đến khi hoàn tất hay không (false khi các tham chiếu exec bị bỏ qua)refsChecked: số tham chiếu thực sự được phân giải trong quá trình chạy thửskippedExecRefs: số tham chiếu exec bị bỏ qua vì chưa đặt--allow-execerrors: các lỗi có cấu trúc về đường dẫn bị thiếu, schema hoặc khả năng phân giải khiok=false
Cấu trúc đầu ra JSON
- Ví dụ thành công
- Ví dụ thất bại
Nếu chạy thử thất bại
Nếu chạy thử thất bại
config schema validation failed: cấu trúc cấu hình sau thay đổi không hợp lệ; hãy sửa đường dẫn/giá trị hoặc cấu trúc đối tượng nhà cung cấp/tham chiếu.Config policy validation failed: unsupported SecretRef usage: chuyển thông tin xác thực đó trở lại đầu vào văn bản thuần/chuỗi; chỉ giữ SecretRef trên các bề mặt được hỗ trợ.SecretRef assignment(s) could not be resolved: hiện không thể phân giải nhà cung cấp/tham chiếu được dẫn chiếu (thiếu biến môi trường, con trỏ tệp không hợp lệ, nhà cung cấp exec thất bại hoặc nhà cung cấp/nguồn không khớp).model reference validation failed: mô hình văn bản chính hoặc dự phòng đã thay đổi không được nhận dạng; chạyopenclaw models listvà chọn một mô hình khả dụng.Dry run note: skipped <n> exec SecretRef resolvability check(s): chạy lại với--allow-execnếu bạn cần xác thực khả năng phân giải exec.- Đối với chế độ hàng loạt, hãy sửa các mục bị lỗi và chạy lại
--dry-runtrước khi ghi.
Áp dụng thay đổi
Sau mỗi lầnconfig set / config patch / config unset thành công, CLI in ra một trong ba gợi ý để bạn biết Gateway có cần khởi động lại hay không:
Việc ghi vào
plugins.entries (hoặc bất kỳ đường dẫn con nào) luôn yêu cầu khởi động lại, vì CLI không thể xác minh rằng siêu dữ liệu tải lại của mọi plugin đã được nạp.
An toàn khi ghi
openclaw config set và các trình ghi cấu hình khác do OpenClaw sở hữu xác thực toàn bộ cấu hình sau thay đổi trước khi ghi cấu hình đó vào đĩa. Nếu nội dung mới không vượt qua xác thực schema hoặc có vẻ là thao tác ghi đè phá hủy, cấu hình đang hoạt động sẽ được giữ nguyên và nội dung bị từ chối được lưu bên cạnh dưới dạng openclaw.json.rejected.*.
Các thao tác ghi do OpenClaw sở hữu sẽ tuần tự hóa lại JSON5 thành JSON tiêu chuẩn. Khi nguồn chứa chú thích, trình ghi sẽ cảnh báo ngay trước khi xóa chúng; hãy dùng trình chỉnh sửa trực tiếp khi cần giữ lại chú thích.
Ưu tiên ghi bằng CLI cho các chỉnh sửa nhỏ:
openclaw.json. Chạy openclaw doctor --fix để sửa cấu hình có tiền tố/bị ghi đè hoặc khôi phục bản sao tốt gần nhất đã biết. Xem Khắc phục sự cố Gateway.
Khôi phục toàn bộ tệp chỉ dành cho việc sửa chữa bằng doctor. Các thay đổi schema của plugin hoặc độ lệch minHostVersion vẫn được báo rõ thay vì hoàn tác các cài đặt không liên quan của người dùng như cấu hình mô hình, nhà cung cấp, hồ sơ xác thực, kênh, mức độ mở Gateway, công cụ, bộ nhớ, trình duyệt hoặc cron.
Vòng lặp sửa chữa
Sau khiopenclaw config validate thành công, hãy dùng TUI cục bộ để một agent nhúng so sánh cấu hình đang hoạt động với tài liệu trong khi bạn xác thực từng thay đổi từ cùng một terminal:
! ở đầu sẽ chạy một lệnh shell cục bộ theo đúng nghĩa đen (sau lời nhắc xác nhận một lần cho mỗi phiên):
1
So sánh với tài liệu
Yêu cầu agent so sánh cấu hình hiện tại của bạn với trang tài liệu liên quan và đề xuất cách sửa nhỏ nhất.
2
Áp dụng chỉnh sửa có mục tiêu
Áp dụng các chỉnh sửa có mục tiêu bằng
openclaw config set hoặc openclaw configure.3
Xác thực lại
Chạy lại
openclaw config validate sau mỗi thay đổi.4
Dùng doctor cho sự cố thời gian chạy
Nếu xác thực thành công nhưng thời gian chạy vẫn không ổn định, hãy chạy
openclaw doctor hoặc openclaw doctor --fix để được hỗ trợ di chuyển và sửa chữa.