Назад к обновлениям
New releaseSep 3, 2026

hulak v0.3.33

Легкий файловый CLI-клиент API с age-шифрованием секретов, полноценной поддержкой GraphQL и встроенным MCP-сервером для рабочих процессов ИИ-агентов.

Поделиться

Hulak

Hulak

Ваш мессенджер в терминале.

Быстрый старт • GraphQL Explorer • Структура проекта • Документация


Запустите один запрос, целый каталог или оставайтесь в интерактивном режиме

Concurrent Execution
hulak run ./requests/

Hulak запускает файлы запросов напрямую из вашего проекта. Он поддерживает параллельное выполнение по каталогу. Если вы просто запустите hulak, откроется интерактивный выбор.

Отдельный GraphQL Explorer

GraphQL Explorer

Просматривайте схемы с нескольких эндпоинтов. Ищите операции. Создавайте запросы интерактивно. Выполняйте их прямо на месте. Сохраняйте сгенерированные файлы из терминала.

Быстрый старт

Установка

Hulak распространяется через xaaha/tap. Homebrew 6.0+ требует явного доверия для сторонних tap-репозиториев; без него brew upgrade молча пропускает hulak. Это разовый шаг для каждой машины:

brew trust xaaha/tap
brew install --cask xaaha/tap/hulak

Другие варианты установки:

  • go install github.com/xaaha/hulak@latest
  • Сборка из исходников с помощью go build -o hulak

Автодополнение оболочки (go install / сборка из исходников)

Homebrew устанавливает автодополнение автоматически. Если вы установили через go install или собрали из исходников, включите его один раз:

# zsh
hulak completion zsh > "${fpath[1]}/_hulak"        # затем перезапустите оболочку

# 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 требуется autoload -Uz compinit && compinit в вашем .zshrc.

Путь A. API-клиент с зашифрованными секретами (по умолчанию)

mkdir my-apis && cd my-apis
hulak init # creates .hulak/store.age + identity

Создайте стартовый запрос; чтобы быстро посмотреть, как выглядит файл запроса, выполните:

hulak example api  # writes example-api.hk.yaml you can run

[!Note] Для других типов выполните: hulak example. Подкоманда example даёт быстрый способ создать файл запроса, который вы можете изменить. Для получения дополнительной информации выполните hulak example -h

Чтобы настроить секрет, выполните:

hulak secrets keys set placeholder  https://jsonplaceholder.typicode.com/posts -env prod

Теперь в вашем файле example-api.hk.yaml вы можете ссылаться на этот секрет:

method: POST
url: "{{.placeholder}}"
# rest of the body of the file remains same

Запустите запрос:

hulak run example-api.hk.yaml --env prod

Предпочитаете обычные текстовые файлы env/*.env вместо зашифрованных секретов?

hulak init classic

Режим с открытым текстом полностью поддерживается. Подробнее см. docs/environment.md

Хранилище зашифрованных секретов или текстовые файлы .env

Hulak работает в двух режимах. Выберите один при hulak init. Позже можно мигрировать.

  • Хранилище (по умолчанию): секреты хранятся в .hulak/store.age, зашифрованные с помощью age или пары ключей SSH. Безопасно коммитить. Команды делятся ими через файл получателей. См. docs/store.md.
  • Открытый текст: секреты хранятся в текстовых файлах env/*.env. Проще, без шифрования. Добавьте env/ в .gitignore. См. docs/environment.md.

Работаете в classic-режиме и хотите переключиться? См. docs/migrating-to-vault.md.

Использование из AI-агента (MCP)

Hulak включает встроенный сервер MCP, поэтому такие агенты, как Claude Code, Cursor и Zed, могут управлять вашей коллекцией API на естественном языке — «покажи список запросов», «сделай dry-run login против staging», «вызови getUser и покажи ответ».

Для Claude Code добавьте его одной командой:

claude mcp add hulak -s user -- hulak mcp --project api=~/work/api-tests

Cursor, Zed, Codex, opencode и Pi используют вместо этого небольшой файл конфигурации. См. docs/mcp.md для каждого из них.

Секреты никогда не покидают вашу машину: агент работает с именами запросов и окружений, но никогда с расшифрованными значениями. Чтение и dry-run доступны только для чтения; запись проверяется по схеме; файлы ответов не сохраняются, если об этом не попросили.

Полная настройка, справочник по инструментам и модель безопасности: docs/mcp.md.

Команды

КомандаНазначениеПодробнее
runВыполнить файл(ы) запросов или каталогbody.md, actions.md
gqlTUI-проводник GraphQLgraphql-explorer.md
secretsCRUD для зашифрованного хранилищаstore.md
initИнициализировать проект hulakstore.md
migrateКонвертация Postman в hulakmigrating-to-vault.md
exampleСоздать образцы файлов запросов—
doctorПроверить состояние проекта—
mcpОбслуживать запросы для AI-агентов через MCPmcp.md
versionПоказать версию—

Выполните hulak <command> --help, чтобы узнать о флагах и примерах для каждой команды.

Поведение выбора

Если опустить --env, откроется интерактивный выбор.

  • hulak run и hulak gql запрашивают только когда файлы ссылаются на {{.key}}.
  • Подкоманды hulak secrets запрашивают каждый раз (кроме secrets list).
  • Неинтерактивные оболочки требуют --env <name>.

Частые ошибки

Категории