Hermes Agent terminalinizden çalışır, oturumlar arasında proje talimatlarını hatırlar ve gerektiğinde gerçek kabuk komutları çalıştırır. Bu yüzden Hermes, API testlerinizi de çalıştırabilir: doğru komutu bağlam dosyasına yazarsınız, Hermes terminal aracıyla apidog run komutunu çağırır ve sonucu çıkış kodundan okur.
Bu akışı bağlayan araç, npm paketi olarak gelen Apidog CLI’dır: apidog-cli. Apidog'da görsel olarak oluşturduğunuz test senaryolarını terminalden çalıştırır ve Hermes’in karar verebileceği bir çıkış kodu üretir.
Bu yazıda Hermes tarafını uygulayacağız:
- Hermes’e Apidog CLI komutunu
AGENTS.mdile öğretme -
terminalaracı üzerindenapidog runçalıştırma - Çıkış kodunu geçme/kalma kaynağı olarak kullanma
- İsteğe bağlı olarak Apidog MCP sunucusunu Hermes’e bağlama
CLI henüz kurulu değilse önce bir yapay zeka kodlama aracıyla Apidog CLI nasıl yüklenir kılavuzunu izleyin. apidog --version bir sürüm numarası yazdırdığında devam edin. Ayrıca Apidog hesabınızda en az bir kaydedilmiş test senaryosu olmalıdır.
Hermes’te Apidog CLI kullanmak ne anlama gelir?
Hermes Agent, terminalinizde çalışan ve komutları yerleşik terminal aracıyla yürüten bir ajandır. Apidog için özel bir Hermes eklentisi yüklemezsiniz. Hermes’e sadece şu bilgileri verirsiniz:
- Hangi komutun çalıştırılacağı
- Hangi senaryo ve ortam kimliklerinin kullanılacağı
- Çıkış kodunun doğruluk kaynağı olduğu
- Başarısız testte raporun okunup düzeltme yapılması gerektiği
Pratikte akış şöyle olur:
Kod değişikliği
→ Hermes terminal aracıyla apidog run çalıştırır
→ apidog-cli test senaryosunu yürütür
→ çıkış kodu 0 ise geçer
→ çıkış kodu 0 değilse Hermes raporu okur ve düzeltme dener
Mekanizma: sohbet mesajı değil, bağlam dosyası
Hermes oturum başlarken proje bağlamını yükler. Çalışma dizininde AGENTS.md ve CLAUDE.md gibi talimat dosyalarını arar ve bunları sistem istemine ekler.
Bu yüzden Apidog komutunu sohbete yazmak yerine repo içinde kalıcı bir bağlam dosyasına eklemelisiniz. Sohbete yazılan senaryo kimliği oturum bitince kaybolur; AGENTS.md içindeki talimat ise her Hermes çalıştırmasında kullanılabilir.
Not: Hermes ayrıca
SOUL.mdokuyabilir, ancak bu ajanın kişiliği içindir. Proje talimatlarını ve test komutlarınıAGENTS.mdiçinde tutun.
Adım 1: AGENTS.md dosyasına Apidog bloğu ekleyin
Repo kök dizininde AGENTS.md dosyasını açın veya oluşturun. Hermes’e doğrudan çalıştırılacak komutu verin.
## API testing with the Apidog CLI
This repo uses the Apidog CLI (`apidog-cli`, the `apidog` command) to run API
test scenarios. The scenarios live in our Apidog project, not in this repo.
When you change an API handler, route, or response shape, run the relevant
Apidog scenario through the terminal tool before considering the change done:
apidog run -t 605067 -e 1629989 -n 1 -r cli
- `-t 605067` is the checkout-flow test scenario.
- `-e 1629989` is the staging environment.
- The machine is already authenticated via `apidog login`, so do NOT pass
an access token and do NOT print one.
Treat the exit code as the source of truth: `0` means every assertion passed,
non-zero means a failure. If it exits non-zero, read the failing assertion in
the report and fix the code, then re-run. Do not report a pass on a non-zero
exit.
Kendi değerlerinizi kullanın:
-
605067: Apidog test senaryosu kimliği -
1629989: ortam kimliği, genellikle staging veya lokal geliştirme ortamı -
-n 1: çalıştırma sayısı -
-r cli: terminal çıktısı için CLI raporlayıcısı
Üretim ortamını varsayılan hedef yapmayın. Hermes’in otomatik çalıştıracağı senaryolar staging veya lokal geliştirme ortamına yönelmelidir.
Bu blok iki hatayı önler:
- Hermes’in bayrakları tahmin etmesini engeller.
- “Testler geçti” özetini çıkış kodunun önüne koymasını engeller.
Adım 2: Apidog’dan doğru apidog run komutunu alın
Komutu elle tahmin etmeyin. Apidog’da senaryoyu açın, CI/CD sekmesine geçin ve komut satırı seçeneğini seçin. Apidog buna benzer bir komut üretir:
apidog run --access-token YOUR_ACCESS_TOKEN -t 605067 -e 1629989 -n 1 -r cli
Buradaki kimlikleri koruyun:
-t 605067
-e 1629989
Ancak makinede zaten apidog login ile oturum açtıysanız --access-token kısmını AGENTS.md içine koymayın.
Kullanacağınız güvenli yerel komut şu formda olmalıdır:
apidog run -t 605067 -e 1629989 -n 1 -r cli
Erişim jetonlarını repo dosyalarına, sohbet geçmişine veya loglara yazdırmayın.
Adım 3: Hermes’e testi çalıştırmasını söyleyin
Repo dizininde Hermes’i başlatın. Ardından şu tarz kısa ve doğrudan bir istem verin:
AGENTS.md'nin anlattığı şekilde Apidog API test senaryomuzu çalıştırın. Zaten kimliği doğrulanmış durumdayım, bu yüzden erişim jetonu geçmeyin.
apidog run -t 605067 -e 1629989 -n 1 -r clikullanın. Bana tam çıktıyı gösterin ve çıkış kodunu söyleyin.
Hermes bu komutu terminal aracıyla çalıştırır:
apidog run -t 605067 -e 1629989 -n 1 -r cli
-r cli raporlayıcısı terminalde istekleri, yanıtları ve assertion sonuçlarını okunabilir şekilde gösterir.
Kontrol etmeniz gereken şey özet değil, çıkış kodudur:
exit code 0 → tüm assertion’lar geçti
exit code != 0 → en az bir assertion başarısız
Hermes “testler geçti” der ama çıkış kodu sıfır değilse, Hermes’in özeti yanlıştır. Çıkış koduna güvenin.
Daha fazla bayrak görmek için Hermes’e şunu çalıştırmasını söyleyin:
apidog run --help
Rapor formatları ve tüm bayraklar için tam Apidog CLI kılavuzuna bakabilirsiniz.
Adım 4: Testi Hermes’in düzenle-test-düzelt döngüsüne ekleyin
Asıl fayda, Hermes’in test komutunu siz her seferinde hatırlatmadan çalıştırmasıdır.
Örneğin Hermes bir ödeme endpoint’ini düzenliyorsa akış şöyle olmalıdır:
- Route, handler veya response shape üzerinde değişiklik yapar.
-
AGENTS.mdtalimatını okur. -
terminalaracıyla Apidog senaryosunu çalıştırır. - Çıkış kodunu okur.
- Başarısızsa rapordaki assertion’ı inceler.
- Kodu düzeltir.
- Senaryoyu yeniden çalıştırır.
Bu, API testini birim testlerle aynı geliştirme döngüsüne dahil eder.
edit
→ apidog run
→ exit code kontrolü
→ fix
→ re-run
Uzun süren senaryolarda Hermes’in terminal aracını arka planda çalıştırması gerekebilir. Yapılandırmanız destekliyorsa background=true ile taramayı başlatabilir, başka işleri sürdürebilir ve sonra çıkış kodunu kontrol edebilir.
Daha geniş ajan test kalıpları için şu kaynaklara bakabilirsiniz:
İsteğe bağlı: Apidog MCP sunucusunu Hermes’e bağlayın
CLI, Hermes’in testleri çalıştırmasını sağlar. Apidog MCP sunucusu ise Hermes’in kod yazarken API spesifikasyonunuzu okumasını sağlar.
İkisi birlikte şu akışı oluşturur:
Apidog MCP → Hermes API şemasını okur
Apidog CLI → Hermes gerçek test senaryosunu çalıştırır
Hermes Model Context Protocol’ü destekler. ~/.hermes/config.yaml dosyasını açın ve mcp_servers altına Apidog girişini ekleyin:
mcp_servers:
apidog:
command: "npx"
args: ["-y", "apidog-mcp-server@latest", "--project=YOUR_PROJECT_ID"]
env:
APIDOG_ACCESS_TOKEN: "YOUR_ACCESS_TOKEN"
Sonra Hermes içinde MCP yapılandırmasını yeniden yükleyin:
/reload-mcp
Alternatif olarak Hermes’i yeniden başlatın.
Hermes başlangıçta MCP sunucularını keşfeder ve araçları normal araç kayıt defterine ekler. Apidog araçları mcp_apidog_<tool> formatında kullanılabilir hale gelir.
Proje kimliği ve jeton kurulumu için Apidog MCP sunucusu kılavuzuna bakın. Benzer paketlenmiş bir akış için Claude Becerileri ile Apidog CLI kılavuzunu inceleyebilirsiniz.
Yerel döngüden CI’a geçiş
Hermes aynı apidog run komutunu lokal olarak başarıyla çalıştırıyorsa CI için temel komutunuz hazırdır. Fark şudur:
- Lokalde kimlik doğrulama
apidog loginile yapılır. - CI’da erişim jetonu maskeli secret olarak verilir.
Hermes’e GitHub Actions adımını yazdırmak için şöyle isteyebilirsiniz:
apidog-clikuran ve erişim jetonunuAPIDOG_ACCESS_TOKENadlı bir repo secret’ından okuyarakapidog run -t 605067 -e 1629989 -r junitkomutunu çalıştıran bir GitHub Actions adımı yazın.
Örnek yapı:
- name: Install Apidog CLI
run: npm install -g apidog-cli
- name: Run Apidog API tests
env:
APIDOG_ACCESS_TOKEN: ${{ secrets.APIDOG_ACCESS_TOKEN }}
run: |
apidog run --access-token "$APIDOG_ACCESS_TOKEN" -t 605067 -e 1629989 -r junit
Bu adımın ayrıntıları için GitHub Actions’ta Apidog CLI kılavuzuna bakın.
Böylece aynı test komutu üç yerde çalışır:
- Lokal terminalinizde
- Hermes’in düzenle-test-düzelt döngüsünde
- CI pipeline içinde
Sık karşılaşılan sorunlar
Hermes AGENTS.md bloğunu yok sayıyor
Şunları kontrol edin:
- Dosya adı tam olarak
AGENTS.mdmi? - Dosya Hermes’in başlatıldığı repo kökünde mi?
- Hermes oturumu dosya eklendikten sonra yeniden başlatıldı mı?
Gerekirse Hermes’i kapatıp aynı dizinden yeniden başlatın.
Hermes komutu çalıştırmak yerine sadece öneriyor
Hermes komutları terminal aracı üzerinden ve çoğu kurulumda onay katmanı arkasında çalıştırır. Bekleyen komutu onaylayın.
Yapılandırmanız terminal komutlarını tamamen engelliyorsa apidog run için izinleri gevşetmeniz gerekir.
apidog whoami kimliğinizin doğrulanmadığını gösteriyor
Kimlik doğrulama Hermes’te değil, makinenizde tutulur. Terminalde kendiniz giriş yapın:
apidog login --with-token
Sonra Hermes’e doğrulamasını söyleyin:
apidog whoami
Jetonu sohbete yazdırmayın.
Hermes olmayan bir bayrak kullanıyor
“unknown option” veya benzeri bir hata görürseniz Hermes bayrak uydurmuş olabilir. Gerçek bayrakları görmek için şunu çalıştırın:
apidog run --help
Sonra AGENTS.md içindeki komutu güncelleyin.
Başarısız çalıştırmada “geçti” diyor
Bu durumda çıkış kodunu esas alın. Kural basit:
0 → geçti
non-0 → kaldı
Hermes’in metin özeti ile çıkış kodu çelişirse çıkış kodu kazanır.
Özet
Hermes ile Apidog CLI entegrasyonu için özel eklenti gerekmez. Uygulamanız gereken temel kurulum şudur:
-
AGENTS.mdiçine net bir Apidog CLI bloğu ekleyin. - Gerçek
apidog runkomutunu Apidog CI/CD sekmesinden alın. - Erişim jetonunu repo dosyalarına koymayın.
- Hermes’in komutu
terminalaracıyla çalıştırmasına izin verin. - Başarı durumunu sadece çıkış kodundan değerlendirin.
- İsterseniz Apidog MCP sunucusunu ekleyerek Hermes’in API şemasını okumasını sağlayın.
Senaryoları Apidog'da görsel olarak yazmaya devam edersiniz; Hermes sadece bu senaryoları çalıştırır ve sonucu çıkış kodundan yorumlar.
Sonraki adım olarak aynı komutu GitHub Actions’ta Apidog CLI ile CI pipeline’ınıza taşıyabilir veya tüm bayraklar için tam Apidog CLI kılavuzunu okuyabilirsiniz.
Sıkça sorulan sorular
Apidog CLI’yı kullanmak için Hermes eklentisine ihtiyacım var mı?
Hayır. Hermes kabuk komutlarını terminal aracıyla çalıştırır. Bu yüzden apidog run doğrudan çağrılır. Hermes’e özel kurulum sadece AGENTS.md talimatı ve isteğe bağlı MCP yapılandırmasıdır.
Hermes’e Apidog iş akışını nerede öğretmeliyim?
Repo kökündeki AGENTS.md dosyasında. Hermes oturum başlarken bu dosyayı okur ve talimatları bağlama ekler.
Hermes’in hatalı şekilde “test geçti” demesini nasıl önlerim?
AGENTS.md içinde çıkış kodu kuralını açıkça yazın ve Hermes’ten her çalıştırmada çıkış kodunu raporlamasını isteyin. apidog run yalnızca tüm assertion’lar geçtiğinde 0 ile çıkar.
Apidog MCP sunucusunu Hermes’e nasıl bağlarım?
~/.hermes/config.yaml dosyasına mcp_servers altında apidog-mcp-server girişini ekleyin. Ardından /reload-mcp çalıştırın veya Hermes’i yeniden başlatın. Ayrıntılar için Apidog MCP sunucusu kılavuzuna bakın.
Bu yöntem diğer yapay zeka kodlama ajanlarında da çalışır mı?
CLI komutu aynıdır; sadece ajana talimat verme yöntemi değişir. Hermes AGENTS.md okur ve terminal aracıyla komut çalıştırır. Diğer ajanlar farklı talimat dosyaları kullanabilir. Kurulum ve kimlik doğrulama için Apidog CLI kurulum kılavuzu geçerlidir.
Top comments (0)