DEV Community

Cover image for วิธีใช้ Apidog CLI ใน Antigravity
Thanawat Wongchai
Thanawat Wongchai

Posted on • Originally published at apidog.com

วิธีใช้ Apidog CLI ใน Antigravity

Antigravity ทำงานเป็นวงจรแบบ agent: แก้ไขไฟล์ รันคำสั่งเทอร์มินัล อ่านผลลัพธ์ แล้วตัดสินใจขั้นตอนถัดไป แต่หากการทดสอบ API ยังอยู่หลัง GUI ใน Apidog การทดสอบจะเกิดขึ้นก็ต่อเมื่อมีคนจำได้ว่าต้องคลิก วิธีทำให้การทดสอบอยู่ในวงจรเดียวกันคือใช้ Apidog CLI เพื่อให้ agent รัน scenario อ่าน exit code และแก้โค้ดเมื่อการทดสอบล้มเหลว

ลองใช้ Apidog วันนี้

Apidog CLI คือแพ็กเกจ npm ชื่อ apidog-cli สำหรับรัน test scenario ที่สร้างใน Apidog จากเทอร์มินัลโดยตรง หลังติดตั้ง CLI และกำหนดกฎให้ Antigravity แล้ว agent สามารถรัน API test ได้เหมือนกับที่รัน unit test:

  1. รัน apidog run
  2. ตรวจสอบ exit code
  3. อ่าน assertion ที่ล้มเหลว
  4. แก้ไขโค้ดและรันทดสอบอีกครั้ง

ก่อนเริ่ม ให้ยืนยันว่า CLI พร้อมใช้งาน:

apidog --version
Enter fullscreen mode Exit fullscreen mode

และล็อกอินเรียบร้อยแล้วด้วย apidog login หากยังไม่ได้ตั้งค่า ดูบทความ วิธีติดตั้ง Apidog CLI ด้วย AI coding agent

Antigravity ที่กล่าวถึงนี้คืออะไร

Antigravity คือแพลตฟอร์มการพัฒนาแบบ agentic ของ Google ที่สร้างบน Gemini 3 และเปิดตัวเมื่อปลายปี 2025 Agent ทำงานผ่าน Agent Manager เพื่อวางแผนงาน แก้ไขไฟล์ใน repository และรันคำสั่งเชลล์จากเทอร์มินัลหรือเบราว์เซอร์ของตัวเอง

ประเด็นสำคัญคือ Antigravity สามารถอ่านกฎของโปรเจกต์ได้ หากใส่คำสั่งทดสอบ API ไว้ใน rules file agent จะนำคำสั่งนั้นไปใช้ซ้ำในงานถัดไป แทนที่จะต้องสั่งผ่านแชททุก session

สำหรับภาพรวม ดู Google Antigravity คืออะไรและใช้งานอย่างไร

ขั้นตอนที่ 1: สร้าง rules file สำหรับ Apidog CLI

Antigravity ใช้ไดเรกทอรี .agents/ ที่ root ของ workspace โดย rules ของโปรเจกต์อยู่ใน .agents/rules/

สร้างไฟล์นี้:

.agents/rules/apidog.md
Enter fullscreen mode Exit fullscreen mode

หรือหากโปรเจกต์มี AGENTS.md ที่ root อยู่แล้ว ให้เพิ่มกฎลงในไฟล์นั้นได้เลย ซึ่งเป็นแนวทางเดียวกับที่ Codex ใช้สำหรับ Apidog CLI

ใส่กฎเริ่มต้นดังนี้:

## การทดสอบ API ด้วย Apidog CLI

- เมื่อทดสอบ API ให้รัน Apidog scenario ผ่าน CLI ห้ามทดสอบผ่าน GUI
- คำสั่ง: apidog run -t <scenario_id> -e <env_id> -r cli
- exit code 0 หมายถึง assertion ทั้งหมดผ่าน
- exit code ที่ไม่ใช่ 0 หมายถึงการทดสอบล้มเหลว ให้เปิดรายงานและแก้ไขโค้ด
- เครื่องนี้ล็อกอินผ่าน apidog login แล้ว
- ห้ามเพิ่ม --access-token และห้ามใส่ token ในไฟล์นี้
Enter fullscreen mode Exit fullscreen mode

การใส่คำสั่งไว้ใน rules file สำคัญกว่าการพิมพ์ไว้ในแชท เพราะ context ในแชทอาจหายไปเมื่อจบ session แต่ไฟล์กฎจะอยู่กับ repository และถูกใช้ซ้ำโดยทุกคนในทีม

Google แสดงแนวทางการใช้ rules ใน Codelab สำหรับสร้าง autonomous developer pipelines ใน Antigravity

ขั้นตอนที่ 2: คัดลอกคำสั่งจริงจาก Apidog

อย่าเดา scenario_id หรือ env_id

  1. เปิด test scenario ใน Apidog
  2. ไปที่แท็บ CI/CD
  3. คัดลอกคำสั่งที่ Apidog สร้างให้

ตัวอย่าง:

apidog run -t 123456 -e 789012 -r cli
Enter fullscreen mode Exit fullscreen mode

ความหมายของ flag:

  • -t: ID ของ test scenario
  • -e: ID ของ environment
  • -r cli: แสดงผลแบบ inline ในเทอร์มินัล

แทนที่ placeholder ใน .agents/rules/apidog.md ด้วย ID จริง:

- คำสั่ง: apidog run -t 123456 -e 789012 -r cli
Enter fullscreen mode Exit fullscreen mode

ดูรายละเอียด flag เพิ่มเติมได้ที่ การอ้างอิงคำสั่ง apidog run

ขั้นตอนที่ 3: ให้ Antigravity รันการทดสอบ

หลังสร้าง rules file แล้ว ให้เริ่มงานใหม่ใน Antigravity เพื่อให้ agent โหลดกฎล่าสุด

คุณสามารถสั่ง agent โดยตรง:

Run the Apidog test scenario and tell me the exit code.
Enter fullscreen mode Exit fullscreen mode

Agent ควรรันคำสั่งจาก rules file:

apidog run -t 123456 -e 789012 -r cli
Enter fullscreen mode Exit fullscreen mode

ผลลัพธ์ที่ต้องตรวจสอบมีสองส่วน:

  • รายละเอียดของ test run
  • exit code ของคำสั่ง

การอนุมัติคำสั่งขึ้นอยู่กับ Security Preset ของ Antigravity หากระบบขออนุมัติ ให้ตรวจสอบคำสั่งก่อนอนุมัติ โดยเฉพาะ environment ที่ชี้ไปยัง staging

ดูรายละเอียดเรื่องการตั้งค่า security และ MCP ได้จาก Codelab เริ่มต้นใช้งาน Antigravity

ขั้นตอนที่ 4: อ่านรายงานและแก้ไขจากผลทดสอบ

เมื่อใช้ -r cli agent จะเห็นผลทดสอบในเทอร์มินัล รวมถึง:

  • request ที่ถูกส่ง
  • assertion แต่ละรายการ
  • status code ที่ไม่ตรงเงื่อนไข
  • field ที่หายไป
  • expected value และ actual value

หากต้องการให้ agent สร้างรายงานสำหรับเปิดในเบราว์เซอร์หรือแชร์กับทีม ให้เพิ่ม HTML reporter:

apidog run -t 123456 -e 789012 -r cli,html
Enter fullscreen mode Exit fullscreen mode

รายงาน HTML จะถูกเขียนไปที่:

./apidog-reports
Enter fullscreen mode Exit fullscreen mode

ควรเก็บ cli ไว้เสมอ เพราะ agent ต้องใช้ผลลัพธ์ inline เพื่อเลือกขั้นตอนถัดไป

สำหรับ reporter รูปแบบอื่น เช่น JUnit สำหรับ CI dashboard ดู คู่มือ Apidog CLI ฉบับสมบูรณ์ และ วิธีอ่านรายงานการทดสอบ Apidog CLI

ทำให้ API test เป็นส่วนหนึ่งของวงจร agent

เมื่อ rules file ระบุชัดเจนว่า agent ต้องรัน Apidog scenario หลังแก้ไข API วงจรการทำงานจะกลายเป็น:

แก้ไขโค้ด
  → รัน Apidog scenario
  → ตรวจสอบ exit code
  → อ่าน assertion ที่ล้มเหลว
  → แก้ไขโค้ด
  → รันทดสอบอีกครั้ง
Enter fullscreen mode Exit fullscreen mode

ตัวอย่างเช่น agent กำลังแก้ handler สำหรับ checkout response:

  1. Agent แก้ไข handler
  2. Agent รัน scenario กับ staging
  3. หาก exit code เป็น 0 ให้ดำเนินงานต่อ
  4. หาก exit code ไม่เป็น 0 ให้อ่าน failure เช่น status code ผิดหรือ field หาย
  5. Agent แก้ไขและรัน scenario ซ้ำ

รูปแบบนี้ช่วยให้ API test ไม่ถูกเลื่อนออกไปจนถึงหลังส่งมอบงาน

แนวทางนี้เป็นส่วนหนึ่งของโมเดล delegate-then-verify:

  • คุณสร้างและดูแล scenario ด้วยภาพใน Apidog
  • Agent รันคำสั่งและอ่านผลลัพธ์
  • คุณตรวจสอบว่า agent ใช้ scenario และ exit code ที่ถูกต้อง

ดูแนวคิดเพิ่มเติมได้ที่ วิธีใช้ AI agents สำหรับการทดสอบ API และ Apidog AI test harness

ยืนยันว่า Antigravity รัน CLI จริง

อย่าเชื่อเฉพาะข้อความสรุปของ agent ให้ตรวจสอบตามลำดับนี้

1. ตรวจสอบว่ามีคำสั่ง apidog run

ในเทอร์มินัลของ Antigravity ให้ค้นหาบรรทัดที่มีคำสั่งจริง:

apidog run -t 123456 -e 789012 -r cli
Enter fullscreen mode Exit fullscreen mode

หาก agent บอกว่ารันทดสอบแล้ว แต่ไม่มีคำสั่งหรือ output ปรากฏ ให้สั่งใหม่:

Run the Apidog command again and show the raw terminal output.
Enter fullscreen mode Exit fullscreen mode

2. ตรวจสอบ exit code

ถาม agent โดยตรง:

What was the exit code of that apidog run command?
Enter fullscreen mode Exit fullscreen mode

กฎคือ:

exit code 0      = assertion ทั้งหมดผ่าน
exit code ไม่ใช่ 0 = มี assertion ล้มเหลว
Enter fullscreen mode Exit fullscreen mode

หาก agent สรุปว่า “ผ่านแล้ว” แต่ exit code ไม่ใช่ 0 ให้เชื่อ exit code

3. ตรวจสอบ scenario และ environment ID

หากพบข้อความลักษณะนี้:

scenario not found
Enter fullscreen mode Exit fullscreen mode

ให้เปรียบเทียบค่า -t และ -e ระหว่าง:

  • คำสั่งในแท็บ CI/CD ของ Apidog
  • คำสั่งใน .agents/rules/apidog.md
  • คำสั่งที่ agent รันจริง

ไฟล์กฎควรเก็บ ID ที่ถูกต้องและอ้างอิงได้เสมอ

ทางเลือก: เชื่อมต่อ Apidog MCP Server

การใช้ apidog run ใน rules file เพียงพอสำหรับการรัน test scenario แต่ MCP ช่วยให้ agent เข้าถึง API specification ระหว่างเขียนโค้ดได้

Antigravity รองรับ Model Context Protocol โดยกำหนด MCP server ในไฟล์:

$HOME/.gemini/config/mcp_config.json
Enter fullscreen mode Exit fullscreen mode

เพิ่ม server ใน mcpServers พร้อมค่า:

  • command
  • args
  • env

จากนั้น refresh MCP ในการตั้งค่า Antigravity

Apidog MCP Server เปิดเผย API specification ผ่าน MCP เพื่อให้ agent อ่าน schema ได้ขณะเขียนโค้ด

สรุปบทบาทของแต่ละส่วน:

Apidog CLI  → รัน scenario และตรวจสอบผลทดสอบ
Apidog MCP  → ให้ agent อ่าน API spec และ schema
Enter fullscreen mode Exit fullscreen mode

แก้ปัญหาที่พบบ่อย

Agent ไม่อ่าน rules file

หาก agent ใช้คำสั่งทั่วไป หรือไม่รัน Apidog เลย ให้ตรวจสอบ:

.agents/rules/apidog.md
Enter fullscreen mode Exit fullscreen mode

ตรวจสอบว่าชื่อไฟล์และตำแหน่งถูกต้อง จากนั้นเริ่มงานใหม่เพื่อให้ agent โหลด rules อีกครั้ง

Agent เพิ่ม --access-token

หาก agent พยายามใช้:

apidog run --access-token ...
Enter fullscreen mode Exit fullscreen mode

ให้ย้ำกฎว่าเครื่องล็อกอินผ่าน:

apidog login
Enter fullscreen mode Exit fullscreen mode

ห้ามเก็บ access token จริงใน rules file ดูรายละเอียดการล็อกอินได้ที่ การยืนยันตัวตน Apidog CLI

Agent สร้าง flag ที่ไม่มีอยู่จริง

หากพบ error:

unknown option
Enter fullscreen mode Exit fullscreen mode

ให้ agent ตรวจสอบ help ของ CLI เวอร์ชันที่ติดตั้ง:

apidog run --help
Enter fullscreen mode Exit fullscreen mode

แล้วใช้เฉพาะ flag ที่แสดงในผลลัพธ์นั้น

Agent รายงานว่าผ่าน ทั้งที่คำสั่งล้มเหลว

ให้ยึด exit code เป็นแหล่งข้อมูลหลัก:

0      = ผ่าน
ไม่ใช่ 0 = ล้มเหลว
Enter fullscreen mode Exit fullscreen mode

เพิ่มกฎนี้ลงใน rules file และบังคับให้ agent รายงาน exit code ทุกครั้งหลังรัน

จาก agent รายวันสู่วงจรที่ผ่านการทดสอบ

การตั้งค่าที่ต้องมีมีเพียงสามส่วน:

  1. ติดตั้ง apidog-cli
  2. คัดลอกคำสั่ง scenario จาก Apidog
  3. ใส่คำสั่งลงใน .agents/rules/apidog.md หรือ AGENTS.md

หลังจากนั้น Antigravity จะมีคำสั่งที่ชัดเจนสำหรับรัน API test พร้อมเกณฑ์ตัดสินที่ตรวจสอบได้จาก exit code Endpoint ที่เสียจึงถูกพบระหว่างที่ agent ยังแก้ไขงานอยู่ แทนที่จะถูกพบหลังส่งมอบ

คุณยังคงสร้าง scenario ด้วยภาพใน Apidog แต่ให้ agent รัน scenario ผ่านคำสั่งเดียวในเวลาที่เหมาะสม

ดาวน์โหลด Apidog สร้าง scenario แรก คัดลอก apidog run ไปยัง rules file แล้วให้ agent ใช้ในการเปลี่ยนแปลงครั้งถัดไป

หากต้องการใช้คำสั่งเดียวกันใน CI pipeline โดยไม่ต้องมี agent ดู Apidog CLI ใน GitHub Actions

Top comments (0)