Ini adalah seri 10 bagian yang berbagi bagaimana Apidog mengembangkan Apidog CLI, sebuah alat baris perintah untuk pengujian API dan manajemen siklus hidup API. Baca secara berurutan atau lompat ke postingan mana pun yang menarik minat Anda:
| Judul | Fokus | |
|---|---|---|
| 1 | Kami Membangun 126 Alat MCP. Tapi Itu Bukan Solusi Terbaik untuk Agen | Penemuan masalah |
| 2 | Mengapa Kami Mengembangkan Apidog CLI yang Baru | Pengembangan arsitektur |
| 3 | Aturan Emas: CLI Menghasilkan Fakta, Model Bertindak Berdasarkan Fakta | Filosofi inti |
| 4 | agentHints: Mengajarkan CLI untuk Berkomunikasi dengan Agen |
Output terstruktur |
| 5 | SKILL: Mengirimkan Pengalaman Operasional sebagai Kode | Pengalaman operasional |
| 6 | Angka Tidak Bohong: 30% Lebih Sedikit Panggilan Alat, 25% Lebih Sedikit Token | Hasil kuantitatif |
| 7 | Dari PRD ke Lingkaran Pengujian: Alur Kerja Agen Lengkap dengan Apidog CLI | Tutorial praktis |
| 8 | Mengapa Kompatibilitas CI/CD Tidak Dapat Ditawar untuk Alat Agen | Perspektif DevOps |
| 9 | Cabang AI: Perubahan Proyek yang Lebih Aman dengan Agen AI | Lapisan keamanan |
| 10 | Spec-First Sudah Ketinggalan Zaman. Selamat Datang di Skill-First. | Visi & masa depan |
Kemudahan agen harus dibangun di atas kemudahan CI/CD. Pelajari mengapa apidog run melayani pipeline CI dan Agen AI—dan mengapa tujuan ganda itu penting
Audiens Ganda
Saat membangun alat Agen, mudah untuk hanya berfokus pada pengalaman percakapan.
Apidog CLI memiliki target layanan penting yang tidak boleh dilupakan: CI/CD.
| Audiens Asli | Audiens Baru |
|---|---|
| Pipeline CI/CD | Agen AI |
| Sistem penjadwalan eksternal | Alur kerja percakapan |
| Skrip dan otomatisasi | Tugas yang digerakkan pengguna |
Banyak tim sudah menggunakan Apidog dalam pipeline untuk:
- Menjalankan pengujian otomatis API
- Membuat laporan
- Mempertahankan gerbang kualitas
Skenario ini membutuhkan:
| Persyaratan | Mengapa |
|---|---|
| Output stabil | Skrip mengurai hasil yang dapat diprediksi |
| Perintah yang dapat diskrip | Eksekusi otomatis |
| Kode keluar yang jelas | Keputusan lulus/gagal pipeline |
| Parameter yang dapat dikonfigurasi | Eksekusi khusus lingkungan |
Otomatisasi tidak dapat dirusak hanya untuk mengakomodasi Agen.
Prinsip Utama
Kemudahan agen harus dibangun di atas kemudahan CI/CD.
Kami tidak menciptakan kembali protokol yang hanya dapat digunakan oleh AI. Kami menambahkan output terstruktur, validasi Skema, dan panduan langkah berikutnya yang dibutuhkan Agen di atas formulir yang sudah divalidasi oleh sistem rekayasa.
Alat rekayasa CLI yang baik di era Agen harus mampu melayani:
| Konsumen | Kebutuhan Mereka |
|---|---|
| Manusia | Output yang mudah dibaca, teks bantuan, fitur interaktif |
| Skrip | Output stabil, perintah yang dapat diskrip |
| Pipeline CI | Kode keluar, file laporan, eksekusi yang dapat dikonfigurasi |
| Agen AI | Hasil terstruktur, validasi, panduan |
apidog run: Perintah Inti
Dasar-dasarnya tetap:
apidog run --project <projectId> \
--test-scenario <scenarioId> \
--environment <environmentId> \
-r "cli,html,junit" \
--out-dir ./apidog-reportsPerintah ini melayani keempat konsumen.
Apa yang Diprioritaskan CI
| Persyaratan CI | Fitur CLI |
|---|---|
| Kode keluar | 0 untuk lulus, 1 untuk gagal—keputusan pipeline |
| File laporan | Format HTML, JUnit, JSON di --out-dir |
| Parameter stabil | Opsi yang konsisten di seluruh versi |
| Eksekusi yang dapat dikonfigurasi | Iterasi (-n), penundaan (--delay-request), lingkungan (-e) |
Contoh penggunaan CI:
# GitHub Actions
- name: Run API Tests
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: Publish Test Report
uses: mikepenz/action-junit-report@v3
with:
report_paths: './reports/junit.xml'Pipeline membaca kode keluar → lulus atau gagal → menerbitkan laporan.
Apa yang Diprioritaskan Agen
| Persyaratan Agen | Fitur CLI |
|---|---|
| Hasil terstruktur | Format output JSON dengan objek data |
| Alasan kegagalan | Detail kesalahan spesifik dalam objek error |
| Saran langkah selanjutnya | agentHints dengan array nextSteps |
| Validasi | cli-schema validate sebelum penulisan |
Contoh penggunaan Agen:
{
"success": true,
"stats": {
"total": 10,
"passed": 8,
"failed": 2
},
"failures": [
{
"step": "Payment processing",
"error": "Assertion failed: status != 'success'",
"response": {...}
}
],
"agentHints": {
"summary": "2 tests failed. Review failure details.",
"nextSteps": [
"Debug the Payment processing step failure.",
"Check assertion: expected status 'success'.",
"Update test case or endpoint after fixing."
]
}
}Agen mengurai JSON → memahami kegagalan → mengikuti langkah-langkah selanjutnya.
Perintah yang Sama, Konsumen Berbeda
apidog run --project <projectId> --out-dir ./apidog-reports
| Konsumen | Apa yang Mereka Ekstraksi |
|---|---|
| Pipeline CI | Kode keluar (0/1), lokasi file laporan |
| Agen | Output JSON, agentHints, detail kegagalan |
| Manusia | Output konsol, tautan laporan HTML |
| Skrip | Stdout/stderr, format yang dapat dikonfigurasi |
Satu perintah melayani semua.
Titik Integrasi
Apidog CLI mendukung integrasi dengan:
| Alat CI | Integrasi |
|---|---|
| Jenkins | Langkah pipeline, penerbitan laporan |
| GitLab CI | Konfigurasi YAML, artefak |
| GitHub Actions | Langkah alur kerja, manajemen rahasia |
| CircleCI | Orbs, konfigurasi alur kerja |
| Azure DevOps | Tugas pipeline, hasil pengujian |
Semua integrasi menggunakan dasar apidog run yang sama.
Gerbang Kualitas vs. Verifikasi
| Kasus Penggunaan | Arti |
|---|---|
| Gerbang kualitas CI | Lulus/gagal menentukan kemajuan pipeline |
| Verifikasi Agen | Dijalankan setelah perubahan untuk mengkonfirmasi kebenaran |
Perintah yang sama, konteks yang berbeda:
| Konteks | Kapan Digunakan | Tujuan |
|---|---|---|
| CI | Setelah kode di-push | Mencegah kode buruk diterapkan |
| Agen | Setelah pembuatan tes | Mengkonfirmasi bahwa pekerjaan Agen benar |
Prinsip Fondasi
Semua yang kami jelaskan dalam seri ini—cli-schema, agentHints, SKILL—dibangun di atas fondasi ini:
┌─────────────────────────────────────────┐
│ Fitur Agen │
│ (cli-schema, agentHints, SKILL) │
├─────────────────────────────────────────┤
│ Fondasi CI/CD │
│ (apidog run, kode keluar, laporan) │
├─────────────────────────────────────────┤
│ CLI Inti │
│ (perintah, parameter, eksekusi) │
└─────────────────────────────────────────┘Fitur agen tidak menggantikan fitur CI. Mereka memperluasnya.
Selanjutnya Apa
Kami telah membahas gambaran lengkap—mulai dari penemuan masalah melalui alur kerja praktis hingga prinsip-prinsip dasar.
Sekarang ada satu bagian krusial lagi: keamanan.
Ketika Agen memodifikasi sumber daya proyek, bagaimana Anda mencegah mereka memengaruhi cabang utama secara langsung?
Di Bagian 9, Cabang AI: Perubahan Proyek yang Lebih Aman dengan Agen AI, kami akan menjelajahi bagaimana Cabang AI menyediakan lingkungan pengeditan yang terisolasi—perubahan tetap berada di cabang terpisah hingga tinjauan manusia, menciptakan lapisan keamanan untuk modifikasi yang digerakkan oleh Agen.
Poin-Poin Penting
- Kompatibilitas CI/CD adalah fondasi, bukan pilihan
- Kemudahan agen dibangun di atas kemudahan CI
- Perintah yang sama (
apidog run) melayani CI, Agen, manusia, skrip - Kebutuhan CI: kode keluar, laporan, parameter stabil
- Kebutuhan Agen: output terstruktur, detail kegagalan, langkah selanjutnya
- Gerbang kualitas (CI) + verifikasi (Agen) = tujuan ganda
Unduh Apidog untuk mendesain, membuat mock, menguji, dan mendokumentasikan API dalam satu ruang kerja. Pelajari lebih lanjut tentang Apidog CLI untuk pengujian API baris perintah, otomatisasi CI, dan alur kerja Agen AI.
