Bỏ qua tới nội dung
← Tất cả dự án

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

  1. CopilotKit UI

    Chat nhúng, ngữ cảnh trang, UI tool phía client.

    AG-UI client
  2. Runtime / BFF

    Danh tính, lịch sử, cầu nối AG-UI ↔ A2A, quản lý task.

    Node.js
  3. Kai orchestrator

    Google ADK: dùng tool, skill, suy luận và ủy thác.

    Python agent
  4. Protected MCP

    Schema tool nghiệp vụ, phân quyền và điều phối lời gọi.

    FastMCP
  5. Backend API

    Microservices TestOps và thực thi trên TestCloud.

    Nguồn dữ liệu gốc
  6. Nango 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.