Backend CLI (runtime dự phòng)
OpenClaw can run local AI CLIs as a text-only fallback when API providers are down, rate-limited, or temporarily misbehaving. This is intentionally conservative:- Tắt công cụ (không gọi công cụ).
- Văn bản vào → văn bản ra (đáng tin cậy).
- Hỗ trợ phiên (để các lượt tiếp theo giữ được mạch lạc).
- Có thể truyền hình ảnh nếu CLI chấp nhận đường dẫn ảnh.
Khởi động nhanh cho người mới
Bạn có thể dùng Claude Code CLI không cần cấu hình nào (OpenClaw đi kèm mặc định sẵn):Dùng như phương án dự phòng
Thêm một backend CLI vào danh sách fallback để nó chỉ chạy khi các mô hình chính thất bại:- Nếu bạn dùng
agents.defaults.models(allowlist), bạn phải bao gồmclaude-cli/.... - Nếu nhà cung cấp chính thất bại (xác thực, giới hạn tốc độ, timeout), OpenClaw sẽ thử backend CLI tiếp theo.
Tổng quan cấu hình
Tất cả backend CLI nằm dưới:claude-cli, my-cli).
The provider id becomes the left side of your model ref:
Ví dụ cấu hình
Cách hoạt động
- Chọn backend dựa trên tiền tố provider (
claude-cli/...). - Xây dựng system prompt bằng cùng prompt OpenClaw + ngữ cảnh workspace.
- Thực thi CLI với id phiên (nếu được hỗ trợ) để lịch sử nhất quán.
- Phân tích đầu ra (JSON hoặc văn bản thuần) và trả về văn bản cuối.
- Lưu trữ id phiên theo từng backend, để các lượt tiếp theo tái sử dụng cùng phiên CLI.
Phiên (Sessions)
- Nếu CLI hỗ trợ phiên, đặt
sessionArg(ví dụ:--session-id) hoặcsessionArgs(placeholder{sessionId}) khi id cần được chèn vào nhiều cờ. - Nếu CLI dùng lệnh con resume với các cờ khác, đặt
resumeArgs(thay thếargskhi resume) và tùy chọnresumeOutput(cho resume không phải JSON). sessionMode:always: luôn gửi id phiên (UUID mới nếu chưa lưu).existing: chỉ gửi id phiên nếu đã lưu trước đó.none: không bao giờ gửi id phiên.
Hình ảnh (truyền thẳng)
Nếu CLI của bạn chấp nhận đường dẫn ảnh, đặtimageArg:
imageArg is set, those
paths are passed as CLI args. Nếu thiếu imageArg, OpenClaw sẽ nối thêm
các đường dẫn tệp vào prompt (path injection), điều này đủ cho các CLI tự động
nạp tệp cục bộ từ đường dẫn thuần (hành vi của Claude Code CLI).
Đầu vào / đầu ra
output: "json"(mặc định) cố gắng phân tích JSON và trích xuất văn bản + id phiên.output: "jsonl"phân tích luồng JSONL (Codex CLI--json) và trích xuất thông điệp tác tử cuối cùng cùngthread_idkhi có.output: "text"coi stdout là phản hồi cuối cùng.
input: "arg"(mặc định) truyền prompt như đối số CLI cuối.input: "stdin"gửi prompt qua stdin.- Nếu prompt rất dài và
maxPromptArgCharsđược đặt, sẽ dùng stdin.
Mặc định (tích hợp sẵn)
OpenClaw đi kèm mặc định choclaude-cli:
command: "claude"args: ["-p", "--output-format", "json", "--dangerously-skip-permissions"]resumeArgs: ["-p", "--output-format", "json", "--dangerously-skip-permissions", "--resume", "{sessionId}"]modelArg: "--model"systemPromptArg: "--append-system-prompt"sessionArg: "--session-id"systemPromptWhen: "first"sessionMode: "always"
codex-cli:
command: "codex"args: ["exec","--json","--color","never","--sandbox","read-only","--skip-git-repo-check"]resumeArgs: ["exec","resume","{sessionId}","--color","never","--sandbox","read-only","--skip-git-repo-check"]output: "jsonl"resumeOutput: "text"modelArg: "--model"imageArg: "--image"sessionMode: "existing"
command tuyệt đối).
Hạn chế
- Không có công cụ OpenClaw (backend CLI không bao giờ nhận các lời gọi công cụ). Some CLIs may still run their own agent tooling.
- Không streaming (đầu ra CLI được thu thập rồi mới trả về).
- Đầu ra có cấu trúc phụ thuộc vào định dạng JSON của CLI.
- Các phiên Codex CLI được tiếp tục thông qua đầu ra văn bản (không có JSONL), kém
có cấu trúc hơn so với lần chạy
--jsonban đầu. OpenClaw sessions still work normally.
Xử lý sự cố
- Không tìm thấy CLI: đặt
commandthành đường dẫn đầy đủ. - Sai tên mô hình: dùng
modelAliasesđể ánh xạprovider/model→ mô hình CLI. - Không duy trì được phiên: đảm bảo
sessionArgđược đặt vàsessionModekhông phảinone(Codex CLI hiện không thể resume với đầu ra JSON). - Hình ảnh bị bỏ qua: đặt
imageArg(và xác minh CLI hỗ trợ đường dẫn tệp).