
Leichter dateibasierter CLI-API-Client mit age-verschlüsselten Geheimnissen, erstklassiger GraphQL-Unterstützung und MCP-Server für agentische Workflows.
REST · GraphQL · OAuth
Schnellstart • GraphQL-Explorer • Projektstruktur • Dokumentation
hulak run ./requests/
Hulak führt Anfragedateien direkt aus deinem Projekt aus. Es unterstützt die gleichzeitige Ausführung von Verzeichnissen. Wenn du nur hulak ausführst, wird ein interaktiver Auswahldialog geöffnet.
Durchstöbere Schemas mehrerer Endpunkte. Suche Operationen. Erstelle Abfragen interaktiv. Führe sie direkt aus. Speichere generierte Dateien aus dem Terminal.
Hulak wird über xaaha/tap ausgeliefert. Homebrew 6.0+ verlangt explizites Vertrauen für Drittanbieter-Taps; ohne dieses überspringt brew upgrade hulak stillschweigend. Einmaliger Schritt pro Rechner:
brew trust xaaha/tap
brew install --cask xaaha/tap/hulak
Weitere Installationsoptionen:
go install github.com/xaaha/hulak@latestgo build -o hulakHomebrew installiert die Vervollständigung automatisch. Wenn du über go install installiert oder aus dem Quellcode gebaut hast, aktiviere sie einmalig:
# zsh
hulak completion zsh > "${fpath[1]}/_hulak" # then restart your shell
# bash (macOS, Homebrew bash-completion)
hulak completion bash > $(brew --prefix)/etc/bash_completion.d/hulak
# bash (Linux)
hulak completion bash | sudo tee /etc/bash_completion.d/hulak >/dev/null
Zsh erfordert autoload -Uz compinit && compinit in deiner .zshrc.
mkdir my-apis && cd my-apis
hulak init # creates .hulak/store.age + identity
Erzeuge eine Starter-Anfrage. Um schnell zu sehen, wie eine Anfragedatei aussieht, führe Folgendes aus:
hulak example api # writes example-api.hk.yaml you can run
[!Note] Für andere Typen führe
hulak exampleaus. Der Unterbefehlexamplebietet dir eine schnelle Möglichkeit, eine anpassbare Anfragedatei zu erstellen. Weitere Informationen erhältst du mithulak example -h.
Um ein Geheimnis einzurichten, kannst du Folgendes ausführen:
hulak secrets keys set placeholder https://jsonplaceholder.typicode.com/posts -env prod
In deiner Datei example-api.hk.yaml kannst du dieses Geheimnis nun referenzieren:
method: POST
url: "{{.placeholder}}"
# rest of the body of the file remains same
Führe die Anfrage aus:
hulak run example-api.hk.yaml --env prod
env/*.env anstelle verschlüsselter Geheimnisse?hulak init classic
Der Klartextmodus wird vollständig unterstützt. Weitere Informationen findest du unter docs/environment.md.
.env-DateienHulak läuft in zwei Modi. Wähle einmal während hulak init. Du kannst später migrieren.
.hulak/store.age, verschlüsselt mit einem age- oder SSH-Schlüsselpaar. Bedenkenlos committbar. Teams teilen sie über eine Recipients-Datei. Siehe docs/store.md.env/*.env. Einfacher, keine Verschlüsselung. Füge env/ zu .gitignore hinzu. Siehe docs/environment.md.Du nutzt den klassischen Modus und möchtest wechseln? Siehe docs/migrating-to-vault.md.
Hulak bringt einen integrierten MCP-Server mit, sodass Agenten wie Claude Code, Cursor und Zed deine API-Sammlung in natürlicher Sprache steuern können – „liste die Anfragen auf“, „führe login gegen Staging als Probelauf aus“, „rufe getUser auf und zeige die Antwort“.
Für Claude Code fügst du es mit einem Befehl hinzu:
claude mcp add hulak -s user -- hulak mcp --project api=~/work/api-tests
Cursor, Zed, Codex, opencode und Pi verwenden stattdessen eine kleine Konfigurationsdatei. Details für jedes findest du in docs/mcp.md.
Geheimnisse verlassen deinen Rechner nie: Der Agent arbeitet mit Namen von Anfragen und Umgebungen, niemals mit entschlüsselten Werten. Lesezugriffe und Probeläufe sind schreibgeschützt; Schreibvorgänge werden schema-validiert; Antwortdateien werden nur auf Anfrage gespeichert.
Vollständige Einrichtung, Tool-Referenz und Sicherheitsmodell: docs/mcp.md.
| Command | Purpose | Read more |
|---|---|---|
run | Anfragedatei(en) oder ein Verzeichnis ausführen | body.md, actions.md |
gql | GraphQL-Explorer-TUI | graphql-explorer.md |
secrets | CRUD für den verschlüsselten Vault | store.md |
init | Ein hulak-Projekt initialisieren | store.md |
migrate | Postman-zu-hulak-Konvertierung | migrating-to-vault.md |
example | Beispiel-Anfragedateien erzeugen | — |
doctor | Projektstatus prüfen | — |
mcp | Anfragen über MCP an KI-Agenten bereitstellen | mcp.md |
version | Version anzeigen | — |
Führe hulak <command> --help aus, um Flags und Beispiele pro Befehl zu sehen.
Wenn du --env weglässt, öffnet sich ein interaktiver Auswahldialog.
hulak run und hulak gql fragen nur nach, wenn Dateien {{.key}} referenzieren.hulak secrets fragen jedes Mal nach (außer secrets list).--env <name>.