Đây là một loạt bài gồm 10 phần chia sẻ cách Apidog đã phát triển Apidog CLI, một công cụ dòng lệnh để kiểm thử API và quản lý vòng đời API. Hãy đọc theo thứ tự hoặc chuyển đến bất kỳ bài viết nào bạn quan tâm:
| Tiêu đề | Trọng tâm | |
|---|---|---|
| 1 | Chúng tôi đã xây dựng 126 công cụ MCP. Nhưng đó không phải là giải pháp tốt nhất cho Agent | Phát hiện vấn đề |
| 2 | Tại sao chúng tôi phát triển Apidog CLI hoàn toàn mới | Phát triển kiến trúc |
| 3 | Quy tắc vàng: CLI tạo ra sự thật, Model hành động dựa trên sự thật | Triết lý cốt lõi |
| 4 | agentHints: Dạy CLI nói chuyện với Agents |
Đầu ra có cấu trúc |
| 5 | SKILL: Chuyển trải nghiệm vận hành thành mã | Trải nghiệm vận hành |
| 6 | Các con số không nói dối: Giảm 30% cuộc gọi công cụ, giảm 25% Tokens | Kết quả định lượng |
| 7 | Từ PRD đến vòng lặp kiểm thử: Một quy trình làm việc Agent hoàn chỉnh với Apidog CLI | Hướng dẫn thực hành |
| 8 | Tại sao khả năng tương thích CI/CD là không thể thiếu đối với các công cụ Agent | Góc nhìn DevOps |
| 9 | Nhánh AI: Thay đổi dự án an toàn hơn với AI Agents | Lớp bảo mật |
| 10 | Spec-First là chuyện của ngày hôm qua. Chào mừng đến với Skill-First. | Tầm nhìn & tương lai |
Khả năng thân thiện với Agent phải được xây dựng dựa trên khả năng thân thiện với CI/CD. Hãy tìm hiểu lý do tại sao apidog run phục vụ cả CI pipelines và AI Agents—và tại sao mục đích kép đó lại quan trọng.
Đối tượng kép
Khi xây dựng các công cụ Agent, thật dễ dàng chỉ tập trung vào trải nghiệm đàm thoại.
Apidog CLI có một mục tiêu dịch vụ quan trọng không được quên: CI/CD.
| Đối tượng ban đầu | Đối tượng mới |
|---|---|
| CI/CD pipelines | AI Agents |
| Hệ thống lập lịch bên ngoài | Quy trình làm việc đàm thoại |
| Scripts và tự động hóa | Các tác vụ do người dùng điều khiển |
Nhiều nhóm đã sử dụng Apidog trong các pipeline để:
- Chạy các bài kiểm thử API tự động
- Tạo báo cáo
- Duy trì các cổng chất lượng
Kịch bản này yêu cầu:
| Yêu cầu | Tại sao |
|---|---|
| Đầu ra ổn định | Scripts phân tích kết quả dự đoán được |
| Lệnh có thể lập trình | Thực thi tự động |
| Mã thoát rõ ràng | Quyết định pass/fail của pipeline |
| Tham số có thể cấu hình | Chạy dành riêng cho môi trường |
Tự động hóa không thể bị phá vỡ chỉ để phù hợp với Agents.
Nguyên tắc chính
Khả năng thân thiện với Agent phải được xây dựng trên nền tảng khả năng thân thiện với CI/CD.
Chúng tôi không phát minh lại một giao thức chỉ có thể được sử dụng bởi AI. Chúng tôi đã thêm đầu ra có cấu trúc, xác thực Schema và hướng dẫn các bước tiếp theo mà Agents cần trên một biểu mẫu đã được hệ thống kỹ thuật xác thực.
Các công cụ kỹ thuật CLI tốt trong kỷ nguyên Agent nên có khả năng phục vụ:
| Người dùng | Nhu cầu của họ |
|---|---|
| Con người | Đầu ra dễ đọc, văn bản trợ giúp, tính năng tương tác |
| Scripts | Đầu ra ổn định, lệnh có thể lập trình |
| CI pipelines | Mã thoát, tệp báo cáo, các lần chạy có thể cấu hình |
| AI Agents | Kết quả có cấu trúc, xác thực, hướng dẫn |
apidog run: Lệnh cốt lõi
Nền tảng vẫn là:
apidog run --project <projectId> \
--test-scenario <scenarioId> \
--environment <environmentId> \
-r "cli,html,junit" \
--out-dir ./apidog-reportsLệnh này phục vụ tất cả bốn đối tượng.
Điều CI quan tâm
| Yêu cầu CI | Tính năng CLI |
|---|---|
| Mã thoát | 0 cho pass, 1 cho fail—quyết định của pipeline |
| Tệp báo cáo | Định dạng HTML, JUnit, JSON trong --out-dir |
| Tham số ổn định | Các tùy chọn nhất quán giữa các phiên bản |
| Các lần chạy có thể cấu hình | Số lần lặp (-n), độ trễ (--delay-request), môi trường (-e) |
Ví dụ về cách sử dụng CI:
# GitHub Actions
- name: Chạy Kiểm thử API
run: |
apidog run --project $PROJECT_ID \
--test-scenario $SCENARIO_ID \
--environment $ENV_ID \
-r "junit" \
--out-dir ./reports
env:
PROJECT_ID: ${{ secrets.APIDOG_PROJECT_ID }}
SCENARIO_ID: ${{ secrets.APIDOG_SCENARIO_ID }}
ENV_ID: production
- name: Công bố Báo cáo Kiểm thử
uses: mikepenz/action-junit-report@v3
with:
report_paths: './reports/junit.xml'Pipeline đọc mã thoát → pass hoặc fail → công bố báo cáo.
Điều Agents quan tâm
| Yêu cầu của Agent | Tính năng CLI |
|---|---|
| Kết quả có cấu trúc | Định dạng đầu ra JSON với đối tượng data |
| Lý do thất bại | Chi tiết lỗi cụ thể trong đối tượng error |
| Gợi ý các bước tiếp theo | agentHints với mảng nextSteps |
| Xác thực | cli-schema validate trước khi ghi |
Ví dụ về cách sử dụng Agent:
{
"success": true,
"stats": {
"total": 10,
"passed": 8,
"failed": 2
},
"failures": [
{
"step": "Xử lý thanh toán",
"error": "Xác nhận thất bại: status != 'success'",
"response": {...}
}
],
"agentHints": {
"summary": "2 bài kiểm thử thất bại. Xem lại chi tiết lỗi.",
"nextSteps": [
"Gỡ lỗi bước 'Xử lý thanh toán' bị lỗi.",
"Kiểm tra xác nhận: trạng thái mong muốn là 'success'.",
"Cập nhật trường hợp kiểm thử hoặc endpoint sau khi sửa lỗi."
]
}
}Agent phân tích JSON → hiểu các lỗi → thực hiện các bước tiếp theo.
Cùng một lệnh, các đối tượng tiêu dùng khác nhau
apidog run --project <projectId> --out-dir ./apidog-reports
| Người dùng | Điều họ trích xuất |
|---|---|
| CI pipeline | Mã thoát (0/1), vị trí tệp báo cáo |
| Agent | Đầu ra JSON, agentHints, chi tiết lỗi |
| Con người | Đầu ra console, liên kết báo cáo HTML |
| Script | Stdout/stderr, định dạng có thể cấu hình |
Một lệnh phục vụ tất cả.
Điểm tích hợp
Apidog CLI hỗ trợ tích hợp với:
| Công cụ CI | Tích hợp |
|---|---|
| Jenkins | Các bước pipeline, công bố báo cáo |
| GitLab CI | Cấu hình YAML, artifact |
| GitHub Actions | Các bước workflow, quản lý bí mật |
| CircleCI | Orbs, cấu hình workflow |
| Azure DevOps | Các tác vụ pipeline, kết quả kiểm thử |
Tất cả các tích hợp đều sử dụng cùng nền tảng apidog run.
Cổng chất lượng so với Xác minh
| Trường hợp sử dụng | Ý nghĩa |
|---|---|
| Cổng chất lượng CI | Pass/fail quyết định tiến trình của pipeline |
| Xác minh Agent | Chạy sau các thay đổi để xác nhận tính đúng đắn |
Cùng một lệnh, ngữ cảnh khác nhau:
| Ngữ cảnh | Khi sử dụng | Mục đích |
|---|---|---|
| CI | Sau khi đẩy mã | Ngăn chặn mã xấu được triển khai |
| Agent | Sau khi tạo kiểm thử | Xác nhận công việc của Agent là đúng |
Nguyên tắc nền tảng
Mọi thứ chúng tôi đã mô tả trong loạt bài này—cli-schema, agentHints, SKILL—đều được xây dựng trên nền tảng này:
┌─────────────────────────────────────────┐
│ Tính năng của Agent │
│ (cli-schema, agentHints, SKILL) │
├─────────────────────────────────────────┤
│ Nền tảng CI/CD │
│ (apidog run, mã thoát, báo cáo) │
├─────────────────────────────────────────┤
│ CLI cốt lõi │
│ (lệnh, tham số, thực thi) │
└─────────────────────────────────────────┘Các tính năng của Agent không thay thế các tính năng của CI. Chúng mở rộng các tính năng đó.
Tiếp theo là gì
Chúng tôi đã trình bày toàn bộ bức tranh—từ phát hiện vấn đề qua các quy trình làm việc thực tế đến các nguyên tắc cơ bản.
Bây giờ có một phần quan trọng khác: bảo mật.
Khi Agents sửa đổi tài nguyên dự án, làm thế nào để bạn ngăn chúng ảnh hưởng trực tiếp đến nhánh chính?
Trong Phần 9, Nhánh AI: Thay đổi dự án an toàn hơn với AI Agents, chúng ta sẽ khám phá cách Nhánh AI cung cấp một môi trường chỉnh sửa biệt lập—các thay đổi nằm trong một nhánh riêng biệt cho đến khi được con người xem xét, tạo ra một lớp an toàn cho các sửa đổi do Agent điều khiển.
Những điểm chính
- Khả năng tương thích CI/CD là nền tảng, không phải tùy chọn
- Khả năng thân thiện với Agent được xây dựng dựa trên khả năng thân thiện với CI
- Cùng một lệnh (
apidog run) phục vụ CI, Agents, con người, scripts - Nhu cầu của CI: mã thoát, báo cáo, tham số ổn định
- Nhu cầu của Agents: đầu ra có cấu trúc, chi tiết lỗi, các bước tiếp theo
- Cổng chất lượng (CI) + xác minh (Agent) = mục đích kép
Tải xuống Apidog để thiết kế, giả lập, kiểm thử và tài liệu hóa các API trong một không gian làm việc. Tìm hiểu thêm về Apidog CLI để kiểm thử API dòng lệnh, tự động hóa CI và các quy trình làm việc của AI Agent.
