Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
hulak — Легкий файловый CLI-клиент API с age-шифрованием секретов, полноценной поддержкой GraphQL и встроенным MCP-сервером для рабочих процессов ИИ-агентов. | Kitploit
Инструменты/GitHubGitHub/xaaha/hulak
Инструменты шифрования/дешифрованияТестирование безопасности APIDevSecOpsУтилиты и фреймворкиОбнаружение СекретовАутентификацияБезопасность API
GitHubxaaha/hulak

hulak

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

Репозиторий
906417 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
<p align="center">
  <img alt="Hulak" src="https://raw.githubusercontent.com/xaaha/hulak/main/assets/hulak-logo.svg" width="180" />
</p>

<h1 align="center">Hulak</h1>

<h3 align="center">
  Ваш мессенджер в терминале.
</h3>

<p align="center">
  <a href="#quick-start">Быстрый старт</a> &bull;
  <a href="#graphql-explorer">GraphQL Explorer</a> &bull;
  <a href="#project-layout">Структура проекта</a> &bull;
  <a href="#documentation">Документация</a>
</p>

---

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

<img alt="Concurrent Execution" src="https://assets.kitploit.com/production/public/readmes/12535/3ea47749f291ed181923d64f3751b68e0fa035e3c16ec44c973a65fb32ee4c5a.gif" width="720" />

```bash
hulak run ./requests/
```

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

### Отдельный GraphQL Explorer

<img alt="GraphQL Explorer" src="https://assets.kitploit.com/production/public/readmes/12535/be3004f25dc07831b622ac6bae4a8cf276dbe450518d70d0de4641accd1cb454.gif" width="720" />

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

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

### Установка

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

```bash
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`
или собрали из исходников, включите его один раз:

```bash
# 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-клиент с зашифрованными секретами (по умолчанию)

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

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

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

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

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

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

```

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

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

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

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

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

```bash
hulak init classic
```

Режим с открытым текстом полностью поддерживается. Подробнее см. [docs/environment.md](https://github.com/xaaha/hulak/blob/main/docs/environment.md)

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

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

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

Работаете в classic-режиме и хотите переключиться? См. [docs/migrating-to-vault.md](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md).

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

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

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

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

Cursor, Zed, Codex, opencode и Pi используют вместо этого небольшой файл конфигурации. См. [docs/mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md) для каждого из них.

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

Полная настройка, справочник по инструментам и модель безопасности: [docs/mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md).

## Команды

| Команда   | Назначение                                | Подробнее                                                  |
| --------- | -------------------------------------- | ---------------------------------------------------------- |
| `run`     | Выполнить файл(ы) запросов или каталог | [body.md](https://github.com/xaaha/hulak/blob/main/docs/body.md), [actions.md](https://github.com/xaaha/hulak/blob/main/docs/actions.md) |
| `gql`     | TUI-проводник GraphQL                   | [graphql-explorer.md](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md)          |
| `secrets` | CRUD для зашифрованного хранилища                   | [store.md](https://github.com/xaaha/hulak/blob/main/docs/store.md)                                |
| `init`    | Инициализировать проект hulak             | [store.md](https://github.com/xaaha/hulak/blob/main/docs/store.md)                                |
| `migrate` | Конвертация Postman в hulak            | [migrating-to-vault.md](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md)      |
| `example` | Создать образцы файлов запросов          | —                                                          |
| `doctor`  | Проверить состояние проекта                   | —                                                          |
| `mcp`     | Обслуживать запросы для AI-агентов через MCP   | [mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md)                                    |
| `version` | Показать версию                          | —                                                          |

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

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

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

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

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

- **Никогда не коммитьте `~/.config/hulak/identity.txt`.** Это ваш приватный ключ. Режим 0600. Сначала сделайте резервную копию. См. [docs/store.md#identity-backup](https://github.com/xaaha/hulak/blob/main/docs/store.md#identity-backup).
- **При `hulak init` флаг `-env` создаёт файлы окружений. Это флаг настройки, а не селектор во время выполнения.** `hulak init -env staging prod` создаёт два окружения.
- **`env` — это псевдоним для `secrets`.** `hulak env list` работает так же, как `hulak secrets list`.
- **GUI-редакторам нужен флаг ожидания для `secrets edit`.** Используйте `EDITOR="code -w"` или `EDITOR="zed --wait"`. Без него редактор возвращает управление сразу, и изменения теряются.
- **Конфликты слияния в `store.age` требуют рецепта.** См. [docs/versioning.md#merge-conflicts](https://github.com/xaaha/hulak/blob/main/docs/versioning.md#merge-conflicts).

## Структура проекта

```text
my-project/
├── .hulak/
│   ├── store.age          # encrypted secrets (safe to commit)
│   └── recipients.txt     # public keys of recipients (safe to commit)
├── requests/
│   ├── create-user.hk.yaml
│   └── get-user.hk.yaml
└── (your project files)

~/.config/hulak/
└── identity.txt           # YOUR private key. NEVER commit. Mode 0600.
```

## GraphQL Explorer

Запустите проводник с файлом или каталогом:

```bash
hulak gql e2etests/gql_schemas/countries.yml
hulak gql .
hulak gql -env staging ./collections/graphql
```

Полное руководство читайте в [docs/graphql-explorer.md](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md).

## Документация

Начните отсюда для полного справочника:

- [Зашифрованное хранилище](https://github.com/xaaha/hulak/blob/main/docs/store.md). Модель шифрования, общий доступ в команде, CI.
- [Миграция в хранилище](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md). Из `env/` в `.hulak/`.
- [Версионирование вашего хранилища](https://github.com/xaaha/hulak/blob/main/docs/versioning.md). Git-процесс для секретов.
- [Сравнение](https://github.com/xaaha/hulak/blob/main/docs/comparison.md). Hulak против SOPS, Bruno и других.
- [Тело запроса](https://github.com/xaaha/hulak/blob/main/docs/body.md)
- [Действия](https://github.com/xaaha/hulak/blob/main/docs/actions.md)
- [Секреты окружения (classic-режим)](https://github.com/xaaha/hulak/blob/main/docs/environment.md)
- [Файлы ответов](https://github.com/xaaha/hulak/blob/main/docs/response.md)
- [GraphQL Explorer](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md)
- [Auth 2.0](https://github.com/xaaha/hulak/blob/main/docs/auth20.md)
- [MCP-сервер](https://github.com/xaaha/hulak/blob/main/docs/mcp.md). Откройте ваши запросы для AI-агентов.

Чтобы увидеть актуальный набор команд, выполните:

```bash
hulak help
hulak <command> --help
```

## Поддержка схем

Схема Hulak доступна в [Schema Store](https://www.schemastore.org/), поэтому редакторы, поддерживающие Schema Store, могут автоматически включать автодополнение для файлов `.hk.yaml` и `.hk.yml`.

Вы также можете указать вашему языковому серверу YAML напрямую:

```text
https://raw.githubusercontent.com/xaaha/hulak/refs/heads/main/assets/schema.json
```

## Участие в разработке

```bash
git clone https://github.com/xaaha/hulak.git
cd hulak
mise install
```

Полный процесс разработки см. в [CONTRIBUTING.md](https://github.com/xaaha/hulak/blob/main/CONTRIBUTING.md).

## Поддержка проекта

Если Hulak вам полезен, откройте issue, предложите функцию, отправьте pull request или спонсируйте проект.
Скачать инструмент