Case study 01 · Katalon
Từ ngôn ngữ tự nhiên đến hành động an toàn
Một trợ lý agentic nhúng trong nền tảng kiểm thử: người dùng cần những hành động có căn cứ, không phải một chatbot đa năng tách rời khỏi sản phẩm.
Bối cảnh
Tester yêu cầu sinh test case, tạo test asset, chạy test suite và điều tra kết quả ngay trong sản phẩm. Một yêu cầu đi qua cả ranh giới AI lẫn phần mềm truyền thống, nên muốn thực thi an toàn thì phải có danh tính tường minh, bước kiểm tra hợp lệ và tool call quan sát được.
Thành phần
CopilotKit UI
Chat nhúng, ngữ cảnh trang, UI tool phía client.
AG-UI clientRuntime / BFF
Danh tính, lịch sử, cầu nối AG-UI ↔ A2A, quản lý task.
Node.jsKai orchestrator
Google ADK: dùng tool, skill, suy luận và ủy thác.
Python agentProtected MCP
Schema tool nghiệp vụ, phân quyền và điều phối lời gọi.
FastMCPBackend API
Microservices TestOps và thực thi trên TestCloud.
Nguồn dữ liệu gốcNango connector
Vòng đời OAuth và proxy tới API của nhà cung cấp.
Xác thực bên ngoài
Luồng gọi
- CopilotKit UI —AG-UI→ Runtime / BFF
- Runtime / BFF —A2A→ Kai orchestrator
- Kai orchestrator —MCP→ Protected MCP
- Protected MCP —HTTP→ Backend API
- Protected MCP —scoped proxy→ Nango connector
Nguyên tắc
Tool discovery theo hướng fail-closed
Nếu kết nối không tồn tại, bị tắt hoặc không khả dụng, tập tool được expose sẽ bị thu hẹp — và được kiểm lại ngay lúc gọi.
Ánh xạ credential multi-tenant
Kết nối bên ngoài được xác định từ người dùng và tài khoản đã xác thực. Không tra cứu chéo tenant, không để mô hình tự chọn credential.
Tách riêng đọc và ghi
Một allowlist write-tool có giới hạn kiểm soát các thao tác thay đổi dữ liệu; hành động có tác động lớn hơn phải qua cơ chế phê duyệt tường minh.
Token không bao giờ tới LLM
Nango làm trung gian OAuth; tầng MCP chỉ truyền một scoped proxy, nên mô hình chỉ nhìn thấy kết quả.
Quyết định
ADR-01
Agent hay mã tất định
Để mô hình diễn giải ý định và tổng hợp ngôn ngữ. Phân quyền, tính toán và thao tác ghi được kiểm soát bằng mã.
ĐÁNH ĐỔI Ưu tiên khả năng kiểm toán hơn mức tự chủ tối đa của mô hình.
ADR-03
Ủy thác cho agent hay tool calling
Ủy thác phần suy luận chuyên sâu bằng child task A2A; dùng MCP cho các năng lực backend có giới hạn. Thực thi trên TestCloud vẫn là một tool call nghiệp vụ.
ĐÁNH ĐỔI Ranh giới task rõ ràng và thực thi an toàn.
ADR-04
Cache trong bộ nhớ hay trạng thái trực tiếp
Trạng thái connector cache theo từng pod bị lỗi thời trên các replica khác. Với trạng thái ít thay đổi nhưng người dùng sửa được, hãy đọc từ nguồn dữ liệu gốc.
ĐÁNH ĐỔI Ưu tiên tính nhất quán hơn chút tiết kiệm lượt đọc.
Phần tôi phụ trách
- Agent harness trên Google ADK và tích hợp vào nền tảng
- FastMCP tool và OAuth connector dựa trên Nango
- Tích hợp thực thi bằng ngôn ngữ tự nhiên với TestCloud
- Kinh nghiệm full-stack và nền tảng thực thi phân tán
Các khối kiến trúc mô tả trách nhiệm của từng thành phần, không phải bằng chứng đã triển khai production. Không công bố số lượng khách hàng, kết quả benchmark hay mức đạt SLO.