Cách sử dụng Apidog CLI trong Hermes Agent

Hướng dẫn Hermes Agent quy trình kiểm thử API của bạn trong tệp AGENTS.md, sau đó để công cụ dòng lệnh của nó chạy apidog run và đọc mã thoát. Ngoài ra, còn có máy chủ Apidog MCP.

INEZA Felin-Michel

INEZA Felin-Michel

6 tháng 7 2026

Cách sử dụng Apidog CLI trong Hermes Agent

Apidog cho doanh nghiệp

Triển khai tại chỗ

SSO & RBAC

Tuân thủ SOC 2

Khám phá Apidog Enterprise

Hermes Agent chạy từ terminal của bạn, ghi nhớ những gì nó học được qua các phiên làm việc và sử dụng các lệnh shell thực để hoàn thành công việc. Phần cuối cùng này chính là điểm khởi đầu: nếu nó có thể chạy một lệnh, nó có thể chạy các bài kiểm tra API của bạn.

Trình chạy kết nối chúng là Apidog CLI, một gói npm có tên apidog-cli. Nó chạy các kịch bản kiểm thử bạn đã xây dựng một cách trực quan trong Apidog trực tiếp từ terminal và thoát ra với một mã trạng thái mà Hermes có thể xử lý. Hướng dẫn này bao gồm phần dành riêng cho Hermes: công cụ terminal chạy lệnh, tệp ngữ cảnh dạy Hermes quy trình làm việc của bạn, cách chạy tích hợp vào vòng lặp của nó, và máy chủ Apidog MCP tùy chọn cung cấp thông số kỹ thuật API của bạn cho Hermes trong khi nó hoạt động.

Nếu CLI chưa được cài đặt, hãy bắt đầu với cách cài đặt Apidog CLI với một tác nhân mã hóa AI, hướng dẫn một tác nhân qua quá trình cài đặt và xác thực. Hãy quay lại khi apidog --version in ra một số. Bạn cũng cần một tài khoản Apidog với ít nhất một kịch bản kiểm thử đã lưu; tải xuống Apidog nếu bạn chưa có.

nút

“Sử dụng CLI trong Hermes” có nghĩa là gì

Hermes Agent, được xây dựng bởi Nous Research, chạy trong terminal của bạn, giao tiếp với các mô hình AI của bạn và hành động thông qua các công cụ tích hợp. Công cụ quan trọng ở đây là công cụ terminal: Hermes chạy các lệnh shell bằng cách gọi nó trong thư mục làm việc của bạn, sau đó đọc lại đầu ra vào quá trình suy luận của nó. Không cần cài đặt plugin Apidog nào, và bạn cũng không cần. Sử dụng Apidog CLI trong Hermes có nghĩa là ba điều sau:

  1. Dạy Hermes quy trình làm việc một lần bằng cách viết nó vào một tệp ngữ cảnh mà Hermes tải khi khởi động, để nó biết lệnh, các cờ (flags), và rằng mã thoát là nguồn của sự thật.
  2. Để Hermes chạy apidog run thông qua công cụ `terminal`, giống như bất kỳ lệnh nào khác.
  3. Tùy chọn kết nối máy chủ Apidog MCP, để Hermes có thể đọc thông số kỹ thuật API của bạn trong khi nó viết mã mà các bài kiểm thử đó kiểm tra.

Tệp ngữ cảnh là thứ làm cho hướng dẫn này mang phong cách Hermes thay vì một hướng dẫn chung chung "mở terminal và gõ", biến việc "chạy thử nghiệm của tôi" một lần thành một thứ mà nó tự động thực hiện.

Cơ chế: một tệp ngữ cảnh, không phải một lời nhắc trò chuyện

Hermes tải ngữ cảnh dự án khi bắt đầu một phiên. Công cụ ngữ cảnh của nó quét thư mục làm việc của bạn để tìm các tệp hướng dẫn, bao gồm CLAUDE.mdAGENTS.md, và chèn chúng vào lời nhắc hệ thống. Đó là cùng một quy ước mà Claude Code và Codex sử dụng, vì vậy nếu kho lưu trữ của bạn đã có tệp AGENTS.md, Hermes cũng sẽ đọc nó.

Đây là lý do tại sao bạn viết CLI vào một tệp ngữ cảnh thay vì đề cập đến nó trong trò chuyện. Một ID kịch bản được gõ vào một phiên sẽ biến mất khi phiên đó kết thúc; một ID trong AGENTS.md sẽ có mặt cho mọi thành viên nhóm và mọi lần chạy Hermes từ nay về sau. (Hermes cũng đọc tệp SOUL.md, nhưng đó là cho tính cách của tác nhân, không phải dự án của bạn. Giữ các hướng dẫn kiểm thử trong AGENTS.md.)

Bước 1: Thêm khối Apidog vào tệp ngữ cảnh của bạn

Mở tệp AGENTS.md trong thư mục gốc kho lưu trữ của bạn, hoặc tạo nó, và thêm một phần để cho Hermes biết CLI tồn tại, cách chạy nó và cách đọc kết quả. Cung cấp cho nó lệnh và ID thực, không phải mô tả.

## Kiểm thử API với Apidog CLI

Kho lưu trữ này sử dụng Apidog CLI (`apidog-cli`, lệnh `apidog`) để chạy các kịch bản kiểm thử API. Các kịch bản nằm trong dự án Apidog của chúng tôi, không phải trong kho lưu trữ này.

Khi bạn thay đổi một trình xử lý API, tuyến đường hoặc định dạng phản hồi, hãy chạy kịch bản Apidog liên quan thông qua công cụ terminal trước khi xem xét thay đổi đã hoàn tất:

    apidog run -t 605067 -e 1629989 -n 1 -r cli

- `-t 605067` là kịch bản kiểm thử quy trình thanh toán.
- `-e 1629989` là môi trường staging.
- Máy đã được xác thực qua `apidog login`, vì vậy KHÔNG truyền mã thông báo truy cập và KHÔNG in nó.

Coi mã thoát là nguồn của sự thật: `0` có nghĩa là mọi khẳng định đều thành công, khác 0 có nghĩa là thất bại. Nếu nó thoát khác 0, hãy đọc khẳng định thất bại trong báo cáo và sửa mã, sau đó chạy lại. Không báo cáo thành công khi thoát khác 0.

Thay thế 605067 bằng ID kịch bản thực của bạn và 1629989 bằng môi trường mà Hermes nên sử dụng trong quá trình làm việc bình thường, thường là staging hoặc dev cục bộ, không bao giờ là production. Để có các ID chính xác, hãy sao chép lệnh apidog run mà Apidog tạo trong tab CI/CD của kịch bản (sẽ được đề cập tiếp theo), và bỏ mã thông báo truy cập trước khi dán vào, vì máy đã được đăng nhập và một mã thông báo không thuộc về một tệp đã cam kết.

Hai điều làm cho khối này hoạt động. Nó đặt tên lệnh một cách chính xác, vì vậy Hermes không đoán các cờ. Và nó nêu rõ quy tắc thành công/thất bại bằng ngôn ngữ đơn giản, để Hermes biết rằng mã thoát có giá trị hơn bản tóm tắt của chính nó, điều này giúp bạn tránh được lỗi tác nhân phổ biến nhất: một lời khẳng định tự tin “kiểm thử đã vượt qua” trong khi thực tế chạy thất bại.

Bước 2: Lấy lệnh từ Apidog

Lấy một lệnh đã biết là tốt trước khi bạn yêu cầu Hermes chạy bất cứ điều gì. Mở kịch bản của bạn trong Apidog, chuyển sang tab CI/CD của nó và chọn tùy chọn dòng lệnh. Apidog xây dựng lệnh apidog run đầy đủ với các ID và mã thông báo truy cập đã được điền sẵn:

apidog run --access-token YOUR_ACCESS_TOKEN -t 605067 -e 1629989 -n 1 -r cli

605067 là ID kịch bản và 1629989 là ID môi trường; của bạn sẽ khác. Vì bạn đã xác thực CLI trong quá trình cài đặt, hãy bỏ phần --access-token và giữ lại các ID. Đó là lệnh mà tệp ngữ cảnh của bạn đã chỉ định cho Hermes sử dụng.

Bước 3: Để Hermes chạy kiểm thử

Khởi động Hermes trong kho lưu trữ của bạn, sau đó yêu cầu nó chạy kiểm tra. Với khối đã được đặt, lời nhắc sẽ ngắn gọn:

Hãy chạy kịch bản kiểm thử API Apidog của chúng ta theo cách mà AGENTS.md mô tả. Tôi đã được xác thực rồi, vì vậy đừng truyền mã thông báo truy cập. Sử dụng apidog run -t 605067 -e 1629989 -n 1 -r cli. Hiển thị cho tôi toàn bộ đầu ra và cho tôi biết mã thoát.

Hermes gọi công cụ terminal của nó để thực thi lệnh trong thư mục làm việc của bạn, và trình báo cáo -r cli sẽ truyền kết quả từng bước trở lại ngữ cảnh của nó, nơi bạn theo dõi từng yêu cầu và khẳng định. Bởi vì Hermes định tuyến các lệnh thông qua một lớp phê duyệt, bạn có thể thấy một lời nhắc trước khi nó chạy, tùy thuộc vào cấu hình của bạn. Một kịch bản kiểm thử chỉ đọc đối với môi trường staging chính xác là loại lệnh an toàn, trong không gian làm việc mà bạn có thể cho phép.

Kiểm tra của bạn: hãy nhìn vào mã thoát, không phải bản tóm tắt. apidog run thoát với mã 0 khi mọi khẳng định đều thành công và khác 0 khi một cái thất bại. Hành vi đó là lý do chính mà điều này hoạt động như một cổng kiểm soát, cho CI và cho Hermes. Nếu Hermes nói "kiểm thử đã vượt qua" nhưng mã thoát khác 0, thì nó sai; hãy tin vào mã. Đây là lỗi mà khối Bước 1 ngăn chặn.

Để có định dạng báo cáo khác hoặc nhiều lần lặp hơn, hãy để Hermes chạy apidog run --help để nó đọc danh sách cờ thực. Hướng dẫn Apidog CLI đầy đủ tài liệu hóa mọi cờ, bao gồm các trình báo cáo html, jsonjunit.

Bước 4: Hermes kiểm thử trong vòng lặp của chính nó

Điểm mấu chốt là điều gì xảy ra khi bạn ngừng yêu cầu và Hermes tự chạy kịch bản vì tệp AGENTS.md đã chỉ dẫn nó. Hãy hình dung nó chỉnh sửa một trình xử lý tạo phản hồi thanh toán: nó chỉnh sửa mã, chạy kịch bản Apidog của bạn đối với môi trường staging thông qua công cụ terminal, đọc mã thoát và hành động dựa trên nó. Nếu thành công (xanh), nó tiếp tục. Nếu thất bại (đỏ), nó mở báo cáo, đọc khẳng định nào đã thất bại (mã trạng thái, trường bị thiếu, giá trị sai), thử sửa lỗi và chạy lại. Bài kiểm thử API trở thành một phần của vòng lặp chỉnh sửa-kiểm thử-sửa lỗi mà nó đã dùng để chạy các bài kiểm thử đơn vị của bạn. Bạn đã viết một hướng dẫn và nó đã tích hợp lệnh đó vào cách nó đã hoạt động.

Đây là mô hình ủy quyền-sau đó-xác minh giúp mọi quy trình làm việc của tác nhân trở nên an toàn. Hermes chạy lệnh và đọc kết quả; bạn tiếp tục tạo kịch bản trong Apidog và kiểm tra ngẫu nhiên xem nó có đọc mã thoát một cách trung thực hay không. Đối với một lần chạy chậm, một thư mục lớn hoặc số lần lặp cao, công cụ terminal nhận một cờ background=true, để Hermes có thể khởi chạy quá trình quét, tiếp tục làm việc và thăm dò mã thoát thay vì bị chặn. Để biết mô hình rộng hơn, hãy xem cách sử dụng tác nhân AI để kiểm thử APIkhung kiểm thử AI của Apidog.

Tùy chọn: kết nối máy chủ Apidog MCP

CLI cho phép Hermes chạy các bài kiểm thử của bạn; máy chủ Apidog MCP cho phép nó đọc thông số kỹ thuật API của bạn trong khi nó viết mã. Hai lớp này hoạt động cùng nhau: MCP cung cấp cho Hermes lược đồ của bạn để nó tạo mã khớp với hợp đồng, và CLI xác minh mã đó dựa trên các kịch bản thực tế.

Hermes hỗ trợ Giao thức Ngữ cảnh Mô hình (Model Context Protocol) ngay lập tức. Chỉnh sửa tệp ~/.hermes/config.yaml và thêm một mục nhập vào phần mcp_servers. Đối với máy chủ stdio cục bộ như của Apidog, đó là một command, một mảng args và bất kỳ giá trị env nào:

mcp_servers:
  apidog:
    command: "npx"
    args: ["-y", "apidog-mcp-server@latest", "--project=YOUR_PROJECT_ID"]
    env:
      APIDOG_ACCESS_TOKEN: "YOUR_ACCESS_TOKEN"

Sau khi lưu, hãy chạy /reload-mcp bên trong Hermes, hoặc khởi động lại nó. Hermes khám phá các máy chủ MCP khi khởi động và đăng ký các công cụ của chúng vào hệ thống đăng ký thông thường của nó, được đặt tên theo không gian `mcp_apidog_<tool>`, để tác nhân sử dụng chúng trong quá trình suy luận bình thường. Để biết thiết lập đầy đủ, bao gồm ID dự án và mã thông báo, hãy xem hướng dẫn máy chủ Apidog MCP. Để có phiên bản đóng gói của vòng lặp này, hãy xem hướng dẫn Apidog CLI với Claude Skills.

Từ vòng lặp cục bộ đến CI

Khi Hermes đã chạy kịch bản cục bộ và hành động dựa trên mã thoát, bạn đã xác thực lệnh chính xác mà pipeline của bạn sẽ sử dụng. Việc chuyển sang CI rất đơn giản: cùng một lệnh apidog run, với mã thông báo được truyền dưới dạng một bí mật được che dấu thay vì một thông tin đăng nhập đã lưu. Yêu cầu Hermes viết bước này, vì nó biết lệnh từ tệp ngữ cảnh của bạn:

Viết một bước GitHub Actions để cài đặt apidog-cli và chạy apidog run -t 605067 -e 1629989 -r junit, đọc mã thông báo truy cập từ một bí mật của kho lưu trữ có tên APIDOG_ACCESS_TOKEN.

Cơ chế của bước đó (bí mật, trình báo cáo, cổng mã thoát) nằm trong Apidog CLI trong GitHub Actions. Cùng một lệnh sau đó chạy ở ba nơi: terminal của bạn, vòng lặp của Hermes và CI, tất cả đều dựa trên một mã thoát duy nhất.

Các vấn đề thường gặp

Hermes bỏ qua khối ngữ cảnh. Nếu nó chạy một lệnh chung chung hoặc không chạy lệnh nào cả, hãy xác nhận rằng tệp được đặt tên chính xác là AGENTS.md (hoặc CLAUDE.md) và nằm trong thư mục mà Hermes đã khởi động. Khởi động lại phiên sẽ buộc nó đọc lại.

Nó chỉ gợi ý lệnh thay vì chạy nó. Hermes chạy các lệnh thông qua công cụ `terminal` phía sau một lớp phê duyệt. Hãy phê duyệt một lần chạy đang chờ; nếu cấu hình của bạn từ chối các lệnh terminal, hãy nới lỏng quyền cho apidog run.

apidog whoami cho thấy bạn chưa được xác thực. Thông tin đăng nhập được lưu trữ trên máy của bạn, không phải trong Hermes. Tự chạy apidog login --with-token với một mã thông báo mới, sau đó yêu cầu Hermes xác nhận bằng apidog whoami. Giữ mã thông báo tránh xa cuộc trò chuyện.

Nó tự tạo ra một cờ (flag). Lỗi "unknown option" (tùy chọn không xác định) có nghĩa là Hermes đã đoán một cờ không tồn tại trong phiên bản của bạn. Hãy yêu cầu nó chạy apidog run --help và sao chép cờ thực.

Nó báo cáo thành công khi chạy thất bại. Đây là lỗi tốn kém nhất, và là lý do tại sao quy tắc mã thoát có mặt cả trong tệp AGENTS.md của bạn và trong kiểm tra thủ công của bạn. Khi bản tóm tắt và mã thoát không khớp, mã thoát là đúng.

Tổng kết

Thiết lập Hermes bao gồm một tệp và một thói quen: một khối AGENTS.md xác định lệnh, nguồn xác thực và quy tắc mã thoát, cộng với thói quen để Hermes chạy apidog run thông qua công cụ `terminal` của nó và tự kiểm tra mã thoát. Thêm máy chủ Apidog MCP thông qua ~/.hermes/config.yaml và nó cũng có thể đọc thông số kỹ thuật của bạn trong khi viết mã.

Bạn tiếp tục tạo kịch bản một cách trực quan trong Apidog; Hermes chỉ chạy chúng. Từ đây, hãy trỏ cùng một lệnh vào pipeline của bạn với Apidog CLI trong GitHub Actions, hoặc đọc tài liệu tham khảo cờ đầy đủ trong hướng dẫn đầy đủ.

Các câu hỏi thường gặp

Tôi có cần plugin Hermes để sử dụng Apidog CLI không?

Không. Hermes chạy các lệnh shell thông qua công cụ `terminal` của nó, vì vậy nó gọi trực tiếp apidog run. Thiết lập duy nhất dành riêng cho Hermes là khối AGENTS.md, cộng với máy chủ MCP tùy chọn.

Tôi nên đặt các hướng dẫn dạy Hermes quy trình làm việc ở đâu?

Trong một tệp ngữ cảnh mà Hermes tải khi khởi động. Công cụ ngữ cảnh của nó quét thư mục làm việc để tìm các tệp như AGENTS.mdCLAUDE.md và chèn chúng vào lời nhắc hệ thống. Đặt khối Apidog của bạn vào AGENTS.md tại thư mục gốc của kho lưu trữ và mọi phiên trong kho lưu trữ đó sẽ đọc nó.

Làm thế nào để đảm bảo Hermes không giả mạo một bài kiểm thử thành công?

Hãy yêu cầu nó báo cáo mã thoát, không chỉ là bản tóm tắt, và tự kiểm tra mã đó. apidog run chỉ thoát với mã 0 khi mọi khẳng định đều thành công. Khi văn bản và mã không khớp, hãy tin vào mã.

Làm thế nào để tôi kết nối máy chủ Apidog MCP với Hermes?

Thêm một mục mcp_servers vào tệp ~/.hermes/config.yaml với lệnh apidog-mcp-server và ID dự án của bạn, sau đó chạy /reload-mcp hoặc khởi động lại Hermes. Nó sẽ phát hiện máy chủ khi khởi động và đăng ký các công cụ của nó. Hướng dẫn máy chủ Apidog MCP bao gồm ID dự án và mã thông báo.

Điều này có hoạt động tương tự trong các tác nhân mã hóa AI khác không?

CLI là như nhau ở mọi nơi; chỉ có cách bạn hướng dẫn tác nhân là khác nhau. Hermes đọc tệp AGENTS.md và chạy các lệnh thông qua công cụ `terminal` của nó; các tác nhân khác sử dụng các tệp hướng dẫn riêng của họ. Cài đặt và xác thực là giống hệt nhau, vì vậy hướng dẫn cài đặt áp dụng cho bất kỳ tác nhân nào.

Thực hành thiết kế API trong Apidog

Khám phá cách dễ dàng hơn để xây dựng và sử dụng API