CLI-Referenz

Aktualisiert 31. Aug. 2026·5 Min. Lesezeit

Die mockzilla CLI ist der Open-Source-Mock-Server. Sie läuft auf deinem Rechner, braucht kein Konto und funktioniert offline. Diese Seite listet auf, was du eingeben kannst.

Siehe CLI installieren dafür, wie sie auf deine Maschine kommt.

Einen Mock ausliefern

Ein Argument, und worauf du zeigst, entscheidet, was läuft:

mockzilla petstore.yml                                       # eine Spec-Datei
mockzilla https://petstore3.swagger.io/api/v3/openapi.json   # eine Spec per URL
mockzilla ./services/                                        # ein Ordner
mockzilla petstore.mockz                                     # ein Paket, von der Platte oder per URL
mockzilla response.json                                      # eine statische Antwort, unter GET / ausgeliefert

Der Server startet auf Port 2200, mit dem API-Explorer an seiner Wurzel. Dateien von der Platte werden beobachtet: Speicherst du eine Spec, eine config.yml oder eine context.yml, wird dieser Service live getauscht, ohne Neustart.

Ein Ordner wird als Haufen Specs gelesen, als einzelner Service oder als services/-Baum.

Siehe Portable Simulationen für die drei Ordnerformen und was in jede gehört.

Flags

  • --port N wählt den Port. 0 nimmt irgendeinen freien Port, den die Maschine anbietet. Standard ist 2200.
  • --ready-stamp gibt eine einzelne JSON-Zeile aus, sobald der Server lauscht, für Skripte, die darauf warten.

Vier weitere gelten, wenn genau ein Service registriert ist, also bei einer einzelnen Spec-Datei oder einem einzelnen Service-Ordner:

  • --latency D verzögert jede Antwort um eine Dauer, etwa 100ms oder 1s.
  • --mount PATH setzt das URL-Präfix, unter dem der Service antwortet, etwa pets/v2.
  • --errors RULES beantwortet einen Teil der Anfragen mit einem Fehlerstatus. p5=500,p10=503 schickt 500 an 5 Prozent der Anfragen und 503 an die nächsten 5.
  • --context FILE zeigt auf eine Kontext-YAML, die flachen Ersetzungswerte, die generierte Daten formen.

Wie viel der Server protokolliert, ist eine Umgebungsvariable statt eines Flags. LOG_LEVEL nimmt debug, info, warn, error oder none und steht standardmäßig auf info.

In eine Spec hineinsehen

mockzilla info petstore.yml
mockzilla info https://petstore3.swagger.io/api/v3/openapi.json
mockzilla info petstore.mockz

Gibt ein einzelnes JSON-Objekt aus und beendet sich: Titel, Version, OpenAPI-Version, Anzahl der Endpunkte und jeden Pfad mit seiner Methode und seiner Operation-ID. Ein .mockz-Paket wird genauso ausgepackt und zusammengefasst, du kannst also lesen, was ein Archiv enthält, bevor du es ausführst.

Eine Spec vereinfachen

mockzilla simplify openapi.yml

Wirft optionale Eigenschaften weg, die anyOf oder oneOf benutzen, reduziert eine erforderliche Union auf ihre erste Variante und entfernt x-*-Erweiterungsfelder. Beispiele bleiben unangetastet. Das Ergebnis geht nach stdout, solange --output keine Datei nennt.

Optionale Eigenschaften kürzt du auf eine von zwei Arten:

  • --optional N behält genau N davon pro Schema. --optional 0 wirft alle weg.
  • --optional-min A --optional-max B behält eine zufällige Anzahl in diesem Bereich. Beide Flags gehören zusammen.

Lässt du beide weg, überlebt jede optionale Eigenschaft. Kombinieren lassen sie sich nicht.

  • --output FILE, oder -o, schreibt in eine Datei statt nach stdout.
  • --config FILE führt zuerst eine Codegen-Konfiguration aus: filtern nach Pfad, Tag oder Operation-ID, OpenAPI-Overlay-Deltas anwenden und dann die Refs entfernen, die dabei ins Leere zeigen.

Übergib - als Spec, um sie von stdin zu lesen:

curl -s https://example.com/openapi.json | mockzilla simplify -

Die App macht dasselbe mit einer hochgeladenen Spec, unter Spec-Optionen.

Siehe Service-Einstellungen.

Einen Ordner packen

mockzilla pack ./

Schreibt <ordner>.mockz neben den Ordner: jeden gefundenen Service plus ein Manifest, das jeden davon benennt, mit seinem Mount und seinen Dateien. Liefere das Ergebnis mit mockzilla mocks.mockz aus, oder gib es jemandem, der das tut.

  • --output FILE, oder -o, legt das Archiv an einen anderen Ort.
  • --name und --description landen im Manifest.
  • --min-version hält fest, welche CLI-Version das Archiv mindestens laden kann.
  • --skip-git lässt Git-Remote, Ref und Commit weg, die eingebettet werden, sobald der Ordner in einem Git-Arbeitsverzeichnis liegt.

Genau dieses Archiv packt und lädt die GitHub Action bei jedem Push hoch.

Siehe GitHub Action.

Codegen-Projekte laufen selbst

Ein Codegen-Projekt kompiliert seinen eigenen Server. go build erzeugt ein Binary, und dieses Binary liefert das Projekt aus, die CLI hat damit nichts zu tun. Zeigst du mockzilla auf den Projektordner, liest sie den Ordner stattdessen als Specs.

Siehe Codegen-Simulationen.

Eine Simulation aus deinem Konto ausführen

Eine Simulation, die du in der App gebaut hast, läuft lokal auf derselben Engine. Zeige die CLI auf ihren geteilten Link:

mockzilla https://mockz.io/fxygibah

Ihre .mockz-Datei funktioniert genauso, direkt von der Platte und ganz ohne Netz. Die Ansicht Lokal ausführen der Simulation schreibt dir beide Befehle aus, gefüllt mit ihrem eigenen Link.

Siehe Eine Simulation lokal ausführen.

Version und Hilfe

mockzilla --version
mockzilla --help
mockzilla simplify --help

Jedes Unterkommando bringt sein eigenes --help mit, mit den Flags von oben und ihren Standardwerten.

War diese Seite hilfreich?