MarkTechPost
85

Sản phẩm

CopilotKit ra mắt Channels SDK mã nguồn mở: Tích hợp AI Agent vào Slack và Microsoft Teams dễ dàng

(giờ Việt Nam)

Tóm tắt AI

CopilotKit giới thiệu Channels SDK (MIT) giúp các nhà phát triển kết nối AI Agent vào Slack và Microsoft Teams mà không cần viết lại mã nguồn cho từng nền tảng.

Bản dịch AI

CopilotKit Open Sources Channels SDK: An MIT Licensed Library That Runs Any AG-UI Agent Inside Slack And Microsoft Teams

CopilotKit vừa ra mắt Channels SDK. Đây là một thư viện mã nguồn mở giúp đưa một agent hiện có vào bên trong một nền tảng nhắn tin. Giả định cốt lõi ở đây rất tập trung và có thể kiểm chứng: Bạn đã có sẵn một agent, nó đã có mô hình, công cụ và logic nghiệp vụ. Channels cung cấp cho nó một không gian để tương tác với con người mà không cần phải viết lại cho từng nền tảng.

SDK này hiện chạy trên Slack và Microsoft Teams dưới dạng các giao diện truy cập sớm (early access). Discord và Google Chat cũng đã được lên kế hoạch hỗ trợ.

Việc cài đặt bao gồm hai gói:

Kết nối với agent của bạn là AG-UI, giao thức tương tác giữa agent và người dùng do CopilotKit duy trì. Bất cứ thứ gì hỗ trợ AG-UI đều hoạt động được, bao gồm LangGraph, CrewAI, Mastra, Pydantic AI, Google ADK và cả một agent HTTP đơn giản do chính bạn viết. Mô hình và lớp điều phối (orchestration layer) của bạn vẫn giữ nguyên vị trí cũ.

Điểm khác biệt quan trọng là hiểu rõ channel không phải là gì. Nó không phải là một agent thứ hai. Nó là một phương thức truyền tải đi kèm với đích đến hiển thị (rendering target). Bạn viết một tin nhắn duy nhất và bộ chuyển đổi (adapter) sẽ hạ cấp nó xuống định dạng gốc của từng nền tảng. Điều đó có nghĩa là Block Kit trong Slack và Adaptive Cards trong Teams, chứ không phải là một khối văn bản thô được đẩy qua webhook.

Nó có thể triển khai được không?

Có. SDK đã được xuất bản, sử dụng giấy phép MIT và có hợp đồng runtime (runtime contract) được ghi chép đầy đủ.

Luồng hoạt động của một lượt tương tác (turn) diễn ra như thế nào

Dưới đây là lộ trình duy nhất cho mọi lượt tương tác:

Sự phân chia trách nhiệm tuân theo nguyên tắc đó. Bạn vận hành agent, thông tin xác thực mô hình, công cụ và logic nghiệp vụ của mình. Bạn vận hành trình lắng nghe (listener) Channels chạy dài hạn, cùng với trạng thái ứng dụng, việc triển khai và nhật ký. Intelligence sẽ quản lý thông tin xác thực nền tảng Slack và Teams. Nó cũng chịu trách nhiệm về việc tiếp nhận nền tảng (platform ingress), phân phối có xác thực, đăng ký runtime, kiểm tra trạng thái và kết nối lại.

Về phần hiển thị (rendering), cần lưu ý thêm một điểm: Các tin nhắn được soạn thảo dưới dạng JSX và được hạ cấp xuống một biểu diễn trung gian có thể tuần tự hóa (serializable intermediate representation). Bộ chuyển đổi sẽ dịch nó sang định dạng gốc của nền tảng, và các trình xử lý tương tác (interactive handlers) sẽ được liên kết thông qua một action store.

Hợp đồng Runtime (The Runtime Contract)

Vòng đời là phần đáng để tìm hiểu. Không có lệnh channel.start. Runtime sẽ tự quản lý việc kích hoạt.

Việc tạo trình lắng nghe sẽ bắt đầu kết nối channel. Lệnh await channels.ready giúp cấu hình lỗi sẽ thất bại ngay từ khi khởi động thay vì âm thầm bỏ qua. channels.status trả về trạng thái tổng thể mà bạn có thể dựa vào đó để kiểm soát, và channels.stop sẽ ngắt kết nối channel để tắt ứng dụng một cách an toàn (graceful shutdown).

Runtime cung cấp các trình lắng nghe cho Node, Hono và Express thông qua các đường dẫn con @copilotkit/runtime/v2/*.

createChannel nhận vào nhiều tham số hơn là chỉ tên và agent. Các tùy chọn được cung cấp bao gồm tools, context, components, commands, store, sanitizeAgentEvents, showToolStatus và replyContinuation. Việc đăng ký các thành phần JSX có tên là điều cho phép channel hiển thị lại và kích hoạt lại các trình xử lý sau khi khởi động lại. Nếu không đăng ký, một cú nhấp chuột vào tin nhắn được gửi trước khi khởi động lại sẽ bị coi là hành động đã hết hạn.

Agent có thể làm gì bên trong Channel

Bộ tính năng này nhắm đến công việc diễn ra trong một luồng (thread), chứ không phải là trò chuyện thông thường.

OpenTag minh họa mô hình phê duyệt một cách cụ thể. Mọi thay đổi (mutation) trên Linear và Notion đều bị chặn trong mã trước khi yêu cầu MCP được thực thi. Trình chặn (interceptor) sẽ phát ra một confirm_write và chỉ tiếp tục sau khi có sự phê duyệt. Các thao tác đọc và hiển thị sẽ không bị tạm dừng.

Những điểm chính cần ghi nhớ

Cảm ơn đội ngũ CopilotKit vì tư duy dẫn dắt và các tài nguyên cho bài viết này. Bài viết này được tài trợ bởi CopilotKit.

Asif Razzaq là CEO của Marktechpost Media Inc.. Là một doanh nhân và kỹ sư có tầm nhìn, Asif cam kết khai thác tiềm năng của Trí tuệ nhân tạo vì lợi ích xã hội. Nỗ lực gần đây nhất của ông là ra mắt nền tảng truyền thông về Trí tuệ nhân tạo, Marktechpost, nổi bật với việc đưa tin chuyên sâu về học máy (machine learning) và học sâu (deep learning), đảm bảo tính kỹ thuật nhưng vẫn dễ hiểu với đông đảo độc giả. Nền tảng này tự hào với hơn 2 triệu lượt xem mỗi tháng, minh chứng cho sự phổ biến của nó đối với công chúng.

CopilotKitAI AgentSlackMicrosoft TeamsMã nguồn mở
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ MarkTechPost. Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.