So verwenden Sie die Apidog CLI im Hermes Agent

Bringe dem Hermes Agent deinen API-Test-Workflow in einer AGENTS.md-Datei bei, dann lass sein Terminal-Tool „apidog run“ ausführen und den Exit-Code auslesen. Sowie der Apidog MCP-Server.

INEZA Felin-Michel

INEZA Felin-Michel

6 July 2026

So verwenden Sie die Apidog CLI im Hermes Agent

Apidog für Unternehmen

On-Premises Bereitstellung

SSO & RBAC

SOC 2 konform

Apidog Enterprise entdecken

Hermes Agent läuft von Ihrem Terminal aus, merkt sich, was es über mehrere Sitzungen hinweg lernt, und greift auf echte Shell-Befehle zurück, um Aufgaben zu erledigen. Dieser letzte Teil ist der Kern: Wenn es einen Befehl ausführen kann, kann es auch Ihre API-Tests ausführen.

Der Runner, der sie verbindet, ist die Apidog CLI, ein npm-Paket namens apidog-cli. Es führt die Testszenarien, die Sie visuell in Apidog erstellt haben, direkt von einem Terminal aus aus und beendet sich mit einem Statuscode, auf den Hermes reagieren kann. Dieser Leitfaden behandelt die Hermes-spezifische Hälfte: das terminal-Tool, das den Befehl ausführt, die Kontextdatei, die Hermes Ihren Workflow lehrt, wie der Lauf in seine Schleife integriert wird, und den optionalen Apidog MCP-Server, der Hermes Ihre API-Spezifikation während der Arbeit übermittelt.

Wenn die CLI noch nicht installiert ist, beginnen Sie mit der Installation der Apidog CLI mit einem KI-Codierungsagenten, die einen Agenten durch Installation und Authentifizierung führt. Kehren Sie zurück, sobald apidog --version eine Zahl ausgibt. Sie benötigen außerdem ein Apidog-Konto mit mindestens einem gespeicherten Testszenario; laden Sie Apidog herunter, wenn Sie keines haben.

Schaltfläche

Was „die CLI in Hermes verwenden“ bedeutet

Hermes Agent, entwickelt von Nous Research, läuft in Ihrem Terminal, kommuniziert mit Ihren KI-Modellen und agiert über integrierte Tools. Das hier relevante ist das terminal-Tool: Hermes führt Shell-Befehle aus, indem es es in Ihrem Arbeitsverzeichnis aufruft, und liest dann die Ausgabe zurück in seine Argumentation ein. Es gibt kein Apidog-Plugin zu installieren, und Sie benötigen auch keines. Die Verwendung der Apidog CLI in Hermes bedeutet drei Dinge:

  1. Lehren Sie Hermes den Workflow einmal, indem Sie ihn in eine Kontextdatei schreiben, die Hermes beim Start lädt, sodass es den Befehl, die Flags und weiß, dass der Exit-Code die Quelle der Wahrheit ist.
  2. Lassen Sie Hermes apidog run ausführen über das terminal-Tool, wie jeden anderen Befehl.
  3. Verbinden Sie optional den Apidog MCP-Server, damit Hermes Ihre API-Spezifikation lesen kann, während es den Code schreibt, den diese Tests prüfen.

Die Kontextdatei macht dies zu einem Hermes-spezifischen Leitfaden anstelle einer generischen „Terminal öffnen und tippen“-Anleitung und verwandelt ein einmaliges „Führe meine Tests aus“ in etwas, worauf es von selbst zugreift.

Der Mechanismus: eine Kontextdatei, kein Chat-Hinweis

Hermes lädt den Projektkontext zu Beginn einer Sitzung. Seine Kontext-Engine durchsucht Ihr Arbeitsverzeichnis nach Anweisungsdateien, einschließlich CLAUDE.md und AGENTS.md, und injiziert sie in den System-Prompt. Das ist dieselbe Konvention, die Claude Code und Codex verwenden, wenn Ihr Repo also bereits eine AGENTS.md enthält, liest Hermes diese ebenfalls.

Deshalb schreiben Sie die CLI in eine Kontextdatei, anstatt sie im Chat zu erwähnen. Eine in eine Sitzung eingegebene Szenario-ID ist nach Beendigung verschwunden; eine in AGENTS.md ist von nun an für jedes Teammitglied und jeden Hermes-Lauf verfügbar. (Hermes liest auch eine SOUL.md, aber das ist für die Persona des Agenten, nicht für Ihr Projekt. Bewahren Sie Testanweisungen in AGENTS.md auf.)

Schritt 1: Fügen Sie einen Apidog-Block zu Ihrer Kontextdatei hinzu

Öffnen Sie AGENTS.md im Stammverzeichnis Ihres Repositorys oder erstellen Sie es, und fügen Sie einen Abschnitt hinzu, der Hermes mitteilt, dass die CLI existiert, wie sie ausgeführt wird und wie das Ergebnis zu lesen ist. Geben Sie den tatsächlichen Befehl und die ID an, nicht eine Beschreibung.

## 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.

Ersetzen Sie 605067 durch Ihre echte Szenario-ID und 1629989 durch die Umgebung, die Hermes während der normalen Arbeit verwenden soll, normalerweise Staging oder lokale Entwicklung, niemals Produktion. Um die richtigen IDs zu erhalten, kopieren Sie den apidog run-Befehl, den Apidog im CI/CD-Tab des Szenarios generiert (als Nächstes behandelt), und entfernen Sie das Zugriffstoken, bevor Sie es einfügen, da die Maschine bereits angemeldet ist und ein Token nicht in eine committete Datei gehört.

Zwei Dinge lassen diesen Block funktionieren. Er benennt den Befehl exakt, sodass Hermes keine Flags errät. Und er legt die Bestanden/Fehlgeschlagen-Regel in einfacher Sprache fest, sodass Hermes weiß, dass der Exit-Code seine eigene Zusammenfassung übertrumpft, was Sie vor dem häufigsten Agentenversagen bewahrt: einem selbstbewussten „Tests bestanden“ über einem fehlgeschlagenen Lauf.

Schritt 2: Holen Sie sich den Befehl von Apidog

Holen Sie sich einen bekanntermaßen guten Befehl, bevor Sie Hermes bitten, etwas auszuführen. Öffnen Sie Ihr Szenario in Apidog, wechseln Sie zum CI/CD-Tab und wählen Sie die Kommandozeilenoption. Apidog erstellt den vollständigen apidog run-Befehl mit den IDs und einem bereits ausgefüllten Zugriffstoken:

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

605067 ist die Szenario-ID und 1629989 ist die Umgebungs-ID; Ihre werden abweichen. Da Sie die CLI während der Installation authentifiziert haben, lassen Sie den `--access-token`-Teil weg und behalten Sie die IDs. Das ist der Befehl, den Ihre Kontextdatei Hermes zur Verwendung angewiesen hat.

Schritt 3: Lassen Sie Hermes den Test ausführen

Starten Sie Hermes in Ihrem Repo und bitten Sie es dann, die Überprüfung durchzuführen. Mit dem vorhandenen Block ist der Prompt kurz:

Führen Sie unser Apidog API-Testszenario so aus, wie es AGENTS.md beschreibt. Ich bin bereits authentifiziert, also geben Sie kein Zugriffstoken weiter. Verwenden Sie `apidog run -t 605067 -e 1629989 -n 1 -r cli`. Zeigen Sie mir die vollständige Ausgabe und teilen Sie mir den Exit-Code mit.

Hermes ruft sein terminal-Tool auf, um den Befehl in Ihrem Arbeitsverzeichnis auszuführen, und der -r cli-Reporter streamt ein Schritt-für-Schritt-Ergebnis zurück in seinen Kontext, wo Sie jede Anfrage und Assertion beobachten. Da Hermes Befehle über eine Genehmigungsebene leitet, sehen Sie möglicherweise eine Aufforderung, bevor es ausgeführt wird, abhängig von Ihrer Konfiguration. Ein schreibgeschütztes Testszenario gegen Staging ist genau die Art von sicherem, im Arbeitsbereich ausführbarem Befehl, der problemlos erlaubt werden kann.

Ihre Überprüfung: Achten Sie auf den Exit-Code, nicht auf die Zusammenfassung. apidog run beendet sich mit 0, wenn jede Assertion bestanden ist, und ungleich null, wenn eine fehlschlägt. Dieses Verhalten ist der Hauptgrund, warum dies als Gate funktioniert, sowohl für CI als auch für Hermes. Wenn Hermes sagt „Tests bestanden“, aber der Exit-Code ungleich null war, ist es falsch; vertrauen Sie dem Code. Dies ist der Fehler, den der Block in Schritt 1 verhindert.

Für ein anderes Berichtsformat oder mehr Iterationen lassen Sie Hermes apidog run --help ausführen, damit es die echte Flag-Liste liest. Der vollständige Apidog CLI-Leitfaden dokumentiert jedes Flag, einschließlich der html-, json- und junit-Reporter.

Schritt 4: Hermes testet innerhalb seiner eigenen Schleife

Der Punkt ist, was passiert, wenn Sie aufhören zu fragen und Hermes das Szenario von selbst ausführt, weil AGENTS.md es ihm gesagt hat. Stellen Sie sich vor, es bearbeitet einen Handler, der eine Checkout-Antwort erstellt: Es bearbeitet den Code, führt Ihr Apidog-Szenario gegen Staging über das terminal-Tool aus, liest den Exit-Code und handelt danach. Grün, es geht weiter. Rot, es öffnet den Bericht, liest, welche Assertion fehlgeschlagen ist (der Statuscode, das fehlende Feld, der falsche Wert), versucht eine Korrektur und führt es erneut aus. Der API-Test wird Teil derselben Bearbeiten-Testen-Beheben-Schleife, die es bereits für Ihre Unit-Tests durchläuft. Sie haben eine Anweisung geschrieben und es hat den Befehl in seine bereits bestehende Funktionsweise integriert.

Dies ist das Delegieren-dann-Verifizieren-Modell, das jeden Agenten-Workflow sicher macht. Hermes führt den Befehl aus und liest das Ergebnis; Sie erstellen weiterhin Szenarien in Apidog und überprüfen stichprobenartig, ob es die Exit-Codes ehrlich liest. Für einen langsamen Lauf, einen großen Ordner oder eine hohe Iterationszahl akzeptiert das terminal-Tool ein background=true-Flag, sodass Hermes den Durchlauf starten, weiterarbeiten und den Exit-Code abfragen kann, anstatt zu blockieren. Für das breitere Muster siehe wie man KI-Agenten für API-Tests verwendet und den Apidog AI-Test-Harness.

Optional: Verbinden Sie den Apidog MCP-Server

Die CLI lässt Hermes Ihre Tests ausführen; der Apidog MCP-Server lässt es Ihre API-Spezifikation lesen, während es Code schreibt. Die beiden ergänzen sich: MCP speist Hermes Ihr Schema zu, damit es Code generiert, der dem Vertrag entspricht, und die CLI überprüft diesen Code anhand realer Szenarien.

Hermes unterstützt das Model Context Protocol sofort. Bearbeiten Sie ~/.hermes/config.yaml und fügen Sie einen Eintrag unter dem Abschnitt mcp_servers hinzu. Für einen lokalen Stdio-Server wie den von Apidog ist das ein command, ein args-Array und beliebige env-Werte:

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

Nach dem Speichern führen Sie /reload-mcp innerhalb von Hermes aus oder starten Sie es neu. Hermes entdeckt MCP-Server beim Start und registriert ihre Tools in seinem normalen Register, benannt als mcp_apidog_<tool>, sodass der Agent während der normalen Argumentation darauf zugreift. Für die vollständige Einrichtung, einschließlich der Projekt-ID und des Tokens, siehe den Apidog MCP-Server-Leitfaden. Für eine gebündelte Version dieser Schleife siehe den Apidog CLI mit Claude Skills-Leitfaden.

Vom lokalen Loop zur CI

Sobald Hermes das Szenario lokal ausgeführt und auf den Exit-Code reagiert hat, haben Sie den genauen Befehl validiert, den Ihre Pipeline verwenden wird. Der Sprung zur CI ist klein: derselbe apidog run, wobei das Token als maskiertes Geheimnis anstelle einer gespeicherten Anmeldung übergeben wird. Bitten Sie Hermes, den Schritt zu schreiben, da es den Befehl aus Ihrer Kontextdatei kennt:

Schreiben Sie einen GitHub Actions-Schritt, der apidog-cli installiert und `apidog run -t 605067 -e 1629989 -r junit` ausführt, wobei das Zugriffstoken aus einem Repository-Geheimnis namens APIDOG_ACCESS_TOKEN gelesen wird.

Die Mechanik dieses Schritts (Geheimnisse, Reporter, Exit-Code-Gating) finden Sie unter Apidog CLI in GitHub Actions. Derselbe Befehl wird dann an drei Stellen ausgeführt: Ihrem Terminal, in Hermes' Schleife und in der CI, alle mit einem Exit-Code.

Häufige Fallstricke

Hermes ignoriert den Kontextblock. Wenn es einen generischen Befehl oder gar keinen ausführt, stellen Sie sicher, dass die Datei genau AGENTS.md (oder CLAUDE.md) heißt und sich in dem Verzeichnis befindet, in dem Hermes gestartet wurde. Ein Neustart der Sitzung erzwingt ein erneutes Einlesen.

Es schlägt den Befehl nur vor, anstatt ihn auszuführen. Hermes führt Befehle über das terminal-Tool hinter einer Genehmigungsebene aus. Genehmigen Sie einen wartenden Lauf; wenn Ihre Konfiguration Terminalbefehle verweigert, lockern Sie die Berechtigung für apidog run.

apidog whoami zeigt, dass Sie nicht authentifiziert sind. Die Anmeldung ist auf Ihrem Computer gespeichert, nicht in Hermes. Führen Sie apidog login --with-token selbst mit einem neuen Token aus und bitten Sie Hermes dann, dies mit apidog whoami zu bestätigen. Halten Sie das Token aus dem Chat fern.

Es erfindet ein Flag. Ein „unbekannte Option“-Fehler bedeutet, dass Hermes ein Flag erraten hat, das in Ihrer Version nicht existiert. Lassen Sie es apidog run --help ausführen und kopieren Sie das richtige Flag.

Es meldet ein Bestanden bei einem fehlgeschlagenen Lauf. Der kostspieligste Fehler und der Grund, warum die Exit-Code-Regel sowohl in Ihrer AGENTS.md als auch in Ihrer manuellen Überprüfung steht. Wenn Prosa und Code nicht übereinstimmen, vertrauen Sie dem Code.

Zusammenfassung

Die Hermes-Einrichtung besteht aus einer Datei und einer Gewohnheit: einem AGENTS.md-Block, der den Befehl, die Authentifizierungsquelle und die Exit-Code-Regel festlegt, sowie der Gewohnheit, Hermes apidog run über sein terminal-Tool ausführen zu lassen und den Exit-Code selbst zu überprüfen. Fügen Sie den Apidog MCP-Server über ~/.hermes/config.yaml hinzu, und er kann auch Ihre Spezifikation lesen, während er Code schreibt.

Sie erstellen weiterhin Szenarien visuell in Apidog; Hermes führt sie einfach aus. Von hier aus richten Sie denselben Befehl mit Apidog CLI in GitHub Actions auf Ihre Pipeline, oder lesen Sie die vollständige Flag-Referenz im vollständigen Leitfaden.

Häufig gestellte Fragen

Benötige ich ein Hermes-Plugin, um die Apidog CLI zu verwenden?

Nein. Hermes führt Shell-Befehle über sein terminal-Tool aus, daher ruft es apidog run direkt auf. Die einzige Hermes-spezifische Einrichtung ist der AGENTS.md-Block, plus der optionale MCP-Server.

Wo platziere ich die Anweisungen, die Hermes den Workflow lehren?

In einer Kontextdatei, die Hermes beim Start lädt. Seine Kontext-Engine durchsucht das Arbeitsverzeichnis nach Dateien wie AGENTS.md und CLAUDE.md und injiziert sie in den System-Prompt. Platzieren Sie Ihren Apidog-Block in AGENTS.md im Repo-Root, und jede Sitzung in diesem Repo liest ihn.

Wie stelle ich sicher, dass Hermes keinen bestandenen Test vortäuscht?

Lassen Sie es den Exit-Code melden, nicht nur eine Zusammenfassung, und überprüfen Sie diesen Code selbst. apidog run beendet sich nur mit 0, wenn jede Assertion bestanden ist. Wenn Prosa und Code nicht übereinstimmen, vertrauen Sie dem Code.

Wie verbinde ich den Apidog MCP-Server mit Hermes?

Fügen Sie einen mcp_servers-Eintrag zu ~/.hermes/config.yaml mit dem apidog-mcp-server-Befehl und Ihrer Projekt-ID hinzu, und führen Sie dann /reload-mcp aus oder starten Sie Hermes neu. Es entdeckt den Server beim Start und registriert seine Tools. Der Apidog MCP-Server-Leitfaden behandelt die Projekt-ID und das Token.

Funktioniert das bei anderen KI-Codierungsagenten genauso?

Die CLI ist überall dieselbe; nur die Art und Weise, wie Sie den Agenten beibringen, unterscheidet sich. Hermes liest AGENTS.md und führt Befehle über sein terminal-Tool aus; andere Agenten verwenden ihre eigenen Anweisungsdateien. Installation und Authentifizierung sind identisch, daher gilt der Installationsleitfaden für jeden Agenten.

Praktizieren Sie API Design-First in Apidog

Entdecken Sie eine einfachere Möglichkeit, APIs zu erstellen und zu nutzen