acp
Chạy cầu nối Agent Client Protocol (ACP) để kết nối với OpenClaw Gateway. Lệnh này sử dụng ACP qua stdio cho IDEs và chuyển tiếp các yêu cầu đến Gateway qua WebSocket. Nó giữ các phiên ACP được ánh xạ đến các khóa phiên của Gateway.openclaw acp là cầu nối ACP dựa trên Gateway, không phải là môi trường chạy hoàn toàn ACP-native. Nó tập trung vào định tuyến phiên, chuyển giao yêu cầu và cập nhật luồng cơ bản.
Bảng Tương Thích
| Khu vực ACP | Trạng thái | Ghi chú |
|---|---|---|
initialize, newSession, prompt, cancel | Đã triển khai | Luồng cầu nối chính qua stdio đến Gateway chat/gửi + hủy bỏ. |
listSessions, lệnh gạch chéo | Đã triển khai | Danh sách phiên hoạt động với trạng thái phiên Gateway; các lệnh được quảng cáo qua available_commands_update. |
loadSession | Một phần | Liên kết lại phiên ACP với khóa phiên Gateway và phát lại lịch sử văn bản người dùng/trợ lý đã lưu trữ. Lịch sử công cụ/hệ thống chưa được tái tạo. |
Nội dung yêu cầu (text, resource nhúng, hình ảnh) | Một phần | Văn bản/tài nguyên được làm phẳng thành đầu vào chat; hình ảnh trở thành tệp đính kèm Gateway. |
| Chế độ phiên | Một phần | session/set_mode được hỗ trợ và cầu nối cung cấp các điều khiển phiên ban đầu dựa trên Gateway cho mức độ suy nghĩ, độ chi tiết công cụ, lý luận, chi tiết sử dụng và hành động nâng cao. Các chế độ/cấu hình ACP-native rộng hơn vẫn chưa nằm trong phạm vi. |
| Thông tin phiên và cập nhật sử dụng | Một phần | Cầu nối phát ra thông báo session_info_update và usage_update nỗ lực tốt nhất từ các ảnh chụp nhanh phiên Gateway đã lưu trữ. Sử dụng là ước tính và chỉ được gửi khi tổng số token Gateway được đánh dấu là mới. |
| Truyền dữ liệu công cụ | Một phần | Các sự kiện tool_call / tool_call_update bao gồm I/O thô, nội dung văn bản và vị trí tệp nỗ lực tốt nhất khi các tham số/kết quả công cụ Gateway tiết lộ chúng. Các đầu cuối nhúng và đầu ra diff-native phong phú hơn vẫn chưa được tiết lộ. |
Máy chủ MCP theo phiên (mcpServers) | Không hỗ trợ | Chế độ cầu nối từ chối các yêu cầu máy chủ MCP theo phiên. Cấu hình MCP trên Gateway hoặc agent của OpenClaw thay thế. |
Phương thức hệ thống tệp khách (fs/read_text_file, fs/write_text_file) | Không hỗ trợ | Cầu nối không gọi các phương thức hệ thống tệp khách ACP. |
Phương thức terminal khách (terminal/*) | Không hỗ trợ | Cầu nối không tạo các terminal khách ACP hoặc truyền id terminal qua các cuộc gọi công cụ. |
| Kế hoạch phiên / truyền dữ liệu suy nghĩ | Không hỗ trợ | Cầu nối hiện phát ra văn bản đầu ra và trạng thái công cụ, không phải là cập nhật kế hoạch hoặc suy nghĩ của ACP. |
Giới Hạn Đã Biết
loadSessionphát lại lịch sử văn bản người dùng và trợ lý đã lưu trữ, nhưng không tái tạo các cuộc gọi công cụ lịch sử, thông báo hệ thống hoặc các loại sự kiện ACP-native phong phú hơn.- Nếu nhiều khách hàng ACP chia sẻ cùng một khóa phiên Gateway, định tuyến sự kiện và hủy bỏ là nỗ lực tốt nhất thay vì tách biệt nghiêm ngặt cho từng khách hàng. Ưu tiên các phiên
acp:<uuid>tách biệt mặc định khi cần các lượt chỉnh sửa cục bộ sạch. - Trạng thái dừng Gateway được dịch thành lý do dừng ACP, nhưng ánh xạ đó ít biểu cảm hơn so với môi trường chạy hoàn toàn ACP-native.
- Các điều khiển phiên ban đầu hiện tại hiển thị một tập hợp con tập trung của các nút Gateway: mức độ suy nghĩ, độ chi tiết công cụ, lý luận, chi tiết sử dụng và hành động nâng cao. Lựa chọn mô hình và điều khiển máy chủ thực thi chưa được hiển thị dưới dạng tùy chọn cấu hình ACP.
session_info_updatevàusage_updateđược lấy từ các ảnh chụp nhanh phiên Gateway, không phải là kế toán thời gian thực ACP-native. Sử dụng là ước tính, không mang dữ liệu chi phí và chỉ được phát ra khi Gateway đánh dấu dữ liệu token tổng là mới.- Dữ liệu theo dõi công cụ là nỗ lực tốt nhất. Cầu nối có thể hiển thị các đường dẫn tệp xuất hiện trong các tham số/kết quả công cụ đã biết, nhưng chưa phát ra các terminal ACP hoặc các diff tệp có cấu trúc.
Cách Sử Dụng
Khách hàng ACP (gỡ lỗi)
Sử dụng khách hàng ACP tích hợp để kiểm tra cầu nối mà không cần IDE. Nó khởi chạy cầu nối ACP và cho phép nhập yêu cầu tương tác.- Tự động phê duyệt dựa trên danh sách cho phép và chỉ áp dụng cho các ID công cụ cốt lõi đáng tin cậy.
- Tự động phê duyệt
readđược giới hạn trong thư mục làm việc hiện tại (--cwdkhi được đặt). - Tên công cụ không xác định/không phải cốt lõi, đọc ngoài phạm vi và công cụ nguy hiểm luôn yêu cầu phê duyệt yêu cầu rõ ràng.
toolCall.kinddo máy chủ cung cấp được coi là siêu dữ liệu không đáng tin cậy (không phải là nguồn ủy quyền).
Cách sử dụng
Sử dụng ACP khi một IDE (hoặc khách hàng khác) sử dụng Agent Client Protocol và bạn muốn nó điều khiển một phiên Gateway của OpenClaw.- Đảm bảo Gateway đang chạy (cục bộ hoặc từ xa).
- Cấu hình mục tiêu Gateway (cấu hình hoặc cờ).
- Chỉ định IDE chạy
openclaw acpqua stdio.
Chọn agents
ACP không chọn agents trực tiếp. Nó định tuyến theo khóa phiên Gateway. Sử dụng khóa phiên theo phạm vi agent để nhắm mục tiêu một agent cụ thể:acp:<uuid> tách biệt trừ khi bạn ghi đè khóa hoặc nhãn.
Các mcpServers theo phiên không được hỗ trợ trong chế độ cầu nối. Nếu một khách hàng ACP gửi chúng trong newSession hoặc loadSession, cầu nối trả về lỗi rõ ràng thay vì bỏ qua chúng một cách âm thầm.
Sử dụng từ acpx (Codex, Claude, các khách hàng ACP khác)
Nếu bạn muốn một agent mã hóa như Codex hoặc Claude Code nói chuyện với bot OpenClaw của bạn qua ACP, sử dụng acpx với mục tiêu openclaw tích hợp sẵn.
Luồng điển hình:
- Chạy Gateway và đảm bảo cầu nối ACP có thể tiếp cận nó.
- Chỉ định
acpx openclawđếnopenclaw acp. - Nhắm mục tiêu khóa phiên OpenClaw mà bạn muốn agent mã hóa sử dụng.
acpx openclaw nhắm mục tiêu một Gateway và khóa phiên cụ thể mỗi lần, ghi đè lệnh agent openclaw trong ~/.acpx/config.json:
Thiết lập trình chỉnh sửa Zed
Thêm một agent ACP tùy chỉnh trong~/.config/zed/settings.json (hoặc sử dụng giao diện cài đặt của Zed):
Ánh xạ phiên
Theo mặc định, các phiên ACP nhận được một khóa phiên Gateway tách biệt với tiền tốacp:. Để sử dụng lại một phiên đã biết, truyền một khóa phiên hoặc nhãn:
--session <key>: sử dụng một khóa phiên Gateway cụ thể.--session-label <label>: giải quyết một phiên hiện có theo nhãn.--reset-session: tạo một id phiên mới cho khóa đó (cùng khóa, bản ghi mới).
Tùy chọn
--url <url>: URL WebSocket của Gateway (mặc định là gateway.remote.url khi được cấu hình).--token <token>: token xác thực Gateway.--token-file <path>: đọc token xác thực Gateway từ file.--password <password>: mật khẩu xác thực Gateway.--password-file <path>: đọc mật khẩu xác thực Gateway từ file.--session <key>: khóa phiên mặc định.--session-label <label>: nhãn phiên mặc định để giải quyết.--require-existing: thất bại nếu khóa/nhãn phiên không tồn tại.--reset-session: đặt lại khóa phiên trước khi sử dụng lần đầu.--no-prefix-cwd: không thêm tiền tố thư mục làm việc vào yêu cầu.--verbose, -v: ghi nhật ký chi tiết vào stderr.
--tokenvà--passwordcó thể hiển thị trong danh sách quy trình cục bộ trên một số hệ thống.- Ưu tiên
--token-file/--password-filehoặc biến môi trường (OPENCLAW_GATEWAY_TOKEN,OPENCLAW_GATEWAY_PASSWORD). - Giải quyết xác thực Gateway tuân theo hợp đồng chia sẻ được sử dụng bởi các khách hàng Gateway khác:
- chế độ cục bộ: env (
OPENCLAW_GATEWAY_*) ->gateway.auth.*->gateway.remote.*chỉ khigateway.auth.*chưa được thiết lập (SecretRefs cục bộ đã cấu hình nhưng chưa giải quyết thất bại) - chế độ từ xa:
gateway.remote.*với env/cấu hình dự phòng theo quy tắc ưu tiên từ xa --urllà an toàn ghi đè và không tái sử dụng thông tin xác thực cấu hình/env ngầm định; truyền--token/--passwordrõ ràng (hoặc các biến thể file)
- chế độ cục bộ: env (
- Các quy trình con backend runtime ACP nhận
OPENCLAW_SHELL=acp, có thể được sử dụng cho các quy tắc shell/hồ sơ cụ thể theo ngữ cảnh. openclaw acp clientđặtOPENCLAW_SHELL=acp-clienttrên quy trình cầu nối được khởi chạy.
Tùy chọn acp client
--cwd <dir>: thư mục làm việc cho phiên ACP.--server <command>: lệnh máy chủ ACP (mặc định:openclaw).--server-args <args...>: các tham số bổ sung được truyền đến máy chủ ACP.--server-verbose: bật ghi nhật ký chi tiết trên máy chủ ACP.--verbose, -v: ghi nhật ký chi tiết của khách hàng.