BKIT ACP (Agent Client Protocol)

Viết bởi

trong

Giao thức Agent Client Protocol (ACP) chuẩn hóa việc giao tiếp giữa các trình soạn thảo mã/IDE và các tác nhân lập trình, phù hợp cho cả các kịch bản cục bộ và từ xa.

Tại sao lại chọn ACP?

Các tác nhân và trình soạn thảo mã AI có mối liên hệ chặt chẽ nhưng khả năng tương tác không phải là mặc định. Mỗi trình soạn thảo phải xây dựng các tích hợp tùy chỉnh cho từng tác nhân mà họ muốn hỗ trợ, và các tác nhân phải triển khai các API dành riêng cho trình soạn thảo để tiếp cận người dùng. Điều này tạo ra một số vấn đề:


Chi phí tích hợp: Mỗi sự kết hợp tác nhân-trình soạn thảo mới đều yêu cầu công việc tùy chỉnh


Khả năng tương thích hạn chế: Các tác nhân chỉ hoạt động với một tập hợp con các trình soạn thảo có sẵn.


Sự phụ thuộc vào nhà phát triển: Việc lựa chọn một tác nhân thường có nghĩa là chấp nhận các giao diện có sẵn của chúng
ACP giải quyết vấn đề này bằng cách cung cấp một giao thức tiêu chuẩn cho giao tiếp giữa tác nhân và trình soạn thảo, tương tự như cách Giao thức Máy chủ Ngôn ngữ (LSP) tiêu chuẩn hóa việc tích hợp máy chủ ngôn ngữ.

Các tác nhân triển khai ACP hoạt động với bất kỳ trình soạn thảo nào tương thích. Các trình soạn thảo hỗ trợ ACP có quyền truy cập vào toàn bộ hệ sinh thái các tác nhân tương thích với ACP. Sự tách rời này cho phép cả hai bên đổi mới độc lập trong khi vẫn cho phép các nhà phát triển tự do lựa chọn các công cụ tốt nhất cho quy trình làm việc của họ.


Tổng quan


ACP giả định rằng người dùng chủ yếu làm việc trong trình soạn thảo của họ và muốn kết nối cũng như sử dụng các tác nhân để hỗ trợ họ thực hiện các tác vụ cụ thể.

ACP phù hợp cho cả kịch bản cục bộ và từ xa:
Các tác nhân cục bộ chạy như các tiến trình con của trình soạn thảo mã, giao tiếp thông qua JSON-RPC qua stdio.

Các tác nhân từ xa có thể được lưu trữ trên đám mây hoặc trên cơ sở hạ tầng riêng biệt, giao tiếp qua HTTP hoặc WebSocket.

Giao thức này tái sử dụng các định dạng JSON được sử dụng trong MCP bất cứ khi nào có thể, nhưng bao gồm các kiểu dữ liệu tùy chỉnh cho các yếu tố UX mã hóa tác nhân hữu ích, chẳng hạn như hiển thị sự khác biệt.


Định dạng mặc định cho văn bản người dùng có thể đọc được là Markdown, cho phép đủ tính linh hoạt để thể hiện định dạng phong phú mà không yêu cầu trình soạn thảo mã phải có khả năng hiển thị HTML.

Việc hỗ trợ đầy đủ cho các tác nhân từ xa đang được tiến hành. Chúng tôi đang tích cực hợp tác với các nền tảng tác nhân để đảm bảo giao thức đáp ứng các yêu cầu cụ thể của các kịch bản triển khai từ xa và trên đám mây.

Bình luận

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *