Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
hulak — Un cliente CLI de API ligero basado en archivos con secretos cifrados con age, soporte GraphQL de primera clase y un servidor MCP integrado para flujos de trabajo de agentes de IA. | Kitploit
Herramientas/GitHubGitHub/xaaha/hulak
Herramientas de Cifrado/DescifradoPruebas de Seguridad de APIsDevSecOpsUtilidades y FrameworksDetección de SecretosAutenticaciónSeguridad de APIs
GitHubxaaha/hulak

hulak

Un cliente CLI de API ligero basado en archivos con secretos cifrados con age, soporte GraphQL de primera clase y un servidor MCP integrado para flujos de trabajo de agentes de IA.

Ver Repositorio
90641hace 7 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
<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">
  Tu mensajero en la terminal.
</h3>

<p align="center">
  <a href="#quick-start">Inicio rápido</a> &bull;
  <a href="#graphql-explorer">Explorador GraphQL</a> &bull;
  <a href="#project-layout">Estructura del proyecto</a> &bull;
  <a href="#documentation">Documentación</a>
</p>

---

### Ejecuta una petición, un directorio completo o mantente en modo interactivo

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

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

Hulak ejecuta archivos de peticiones directamente desde tu proyecto. Admite la ejecución concurrente de directorios. Recurre a un selector interactivo cuando simplemente ejecutas `hulak`.

### Explorador GraphQL dedicado

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

Explora esquemas desde múltiples endpoints. Busca operaciones. Construye consultas de forma interactiva. Ejecuta en línea. Guarda los archivos generados desde la terminal.

## Inicio rápido

### Instalación

Hulak se distribuye a través de [xaaha/tap](https://github.com/xaaha/homebrew-tap). Homebrew 6.0+ requiere confianza explícita para taps de terceros; sin ella, `brew upgrade` omite hulak silenciosamente. Paso único por máquina:

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

Otras opciones de instalación:

- `go install github.com/xaaha/hulak@latest`
- Compilar desde el código fuente con `go build -o hulak`

#### Autocompletado de shell (go install / compilaciones desde el código fuente)

Homebrew instala el autocompletado automáticamente. Si instalaste mediante `go install`
o compilaste desde el código fuente, actívalo una vez:

```bash
# 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 requiere `autoload -Uz compinit && compinit` en tu `.zshrc`.

### Ruta A. Cliente de API con secretos cifrados (predeterminado)

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

Genera una petición inicial; para comprobar rápidamente cómo es un archivo de petición, ejecuta:

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

> [!Note]
> Para otros tipos, ejecuta: `hulak example`. El subcomando `example` te ofrece una forma rápida de escribir un archivo de petición que puedes modificar. Para más información, ejecuta `hulak example -h`

Para configurar un secreto puedes ejecutar:

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

```

Ahora, en tu archivo `example-api.hk.yaml`, puedes hacer referencia a este secreto:

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

Ejecuta la petición:

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

### ¿Prefieres archivos `env/*.env` en texto plano en lugar de secretos cifrados?

```bash
hulak init classic
```

El modo de texto plano es totalmente compatible. Consulta [docs/environment.md](https://github.com/xaaha/hulak/blob/main/docs/environment.md) para más información

## Bóveda de secretos cifrados o archivos `.env` en texto plano

Hulak funciona en dos modos. Elige uno durante `hulak init`. Puedes migrar más adelante.

- **Bóveda (predeterminado):** los secretos residen en `.hulak/store.age`, cifrados con un par de claves age o SSH. Seguro para hacer commit. Los equipos comparten mediante un archivo de destinatarios. Consulta [docs/store.md](https://github.com/xaaha/hulak/blob/main/docs/store.md).
- **Texto plano:** los secretos residen en archivos `env/*.env` en texto plano. Más sencillo, sin cifrado. Añade `env/` a `.gitignore`. Consulta [docs/environment.md](https://github.com/xaaha/hulak/blob/main/docs/environment.md).

¿Usas el modo clásico y quieres cambiar? Consulta [docs/migrating-to-vault.md](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md).

## Úsalo desde un agente de IA (MCP)

Hulak incluye un servidor [MCP](https://modelcontextprotocol.io) integrado, para que agentes como Claude Code, Cursor y Zed puedan manejar tu colección de API en lenguaje natural — "lista las peticiones", "ejecuta en seco `login` contra staging", "llama a `getUser` y muestra la respuesta".

Para Claude Code, añádelo con un solo comando:

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

Cursor, Zed, Codex, opencode y Pi usan un pequeño archivo de configuración en su lugar. Consulta [docs/mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md) para cada uno.

Los secretos nunca salen de tu máquina: el agente trabaja con **nombres** de peticiones y entornos, nunca con valores descifrados. Las lecturas y ejecuciones en seco son de solo lectura; las escrituras se validan contra el esquema; los archivos de respuesta no se guardan a menos que se soliciten.

Configuración completa, referencia de herramientas y modelo de seguridad: [docs/mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md).

## Comandos

| Comando   | Propósito                                | Leer más                                                  |
| --------- | -------------------------------------- | ---------------------------------------------------------- |
| `run`     | Ejecutar archivo(s) de petición o un directorio | [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 del explorador GraphQL                   | [graphql-explorer.md](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md)          |
| `secrets` | CRUD de la bóveda cifrada                   | [store.md](https://github.com/xaaha/hulak/blob/main/docs/store.md)                                |
| `init`    | Inicializar un proyecto hulak             | [store.md](https://github.com/xaaha/hulak/blob/main/docs/store.md)                                |
| `migrate` | Conversión de Postman a hulak            | [migrating-to-vault.md](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md)      |
| `example` | Generar archivos de petición de ejemplo          | —                                                          |
| `doctor`  | Comprobar la salud del proyecto                   | —                                                          |
| `mcp`     | Servir peticiones a agentes de IA mediante MCP   | [mcp.md](https://github.com/xaaha/hulak/blob/main/docs/mcp.md)                                    |
| `version` | Mostrar la versión                          | —                                                          |

Ejecuta `hulak <command> --help` para ver las opciones y ejemplos de cada comando.

### Comportamiento del selector

Omitir `--env` abre un selector interactivo.

- `hulak run` y `hulak gql` solo preguntan cuando los archivos hacen referencia a `{{.key}}`.
- Los subcomandos de `hulak secrets` preguntan siempre (excepto `secrets list`).
- Los shells no interactivos requieren `--env <name>`.

## Errores comunes

- **Nunca hagas commit de `~/.config/hulak/identity.txt`.** Esa es tu clave privada. Modo 0600. Haz una copia de seguridad primero. Consulta [docs/store.md#identity-backup](https://github.com/xaaha/hulak/blob/main/docs/store.md#identity-backup).
- **En `hulak init`, `-env` crea archivos de entorno. Es una opción de configuración, no un selector en tiempo de ejecución.** `hulak init -env staging prod` genera dos entornos.
- **`env` es un alias de `secrets`.** `hulak env list` funciona igual que `hulak secrets list`.
- **Los editores con GUI necesitan una opción de espera para `secrets edit`.** Usa `EDITOR="code -w"` o `EDITOR="zed --wait"`. Sin ella, el editor regresa inmediatamente y los cambios se pierden.
- **Los conflictos de fusión en `store.age` necesitan una receta.** Consulta [docs/versioning.md#merge-conflicts](https://github.com/xaaha/hulak/blob/main/docs/versioning.md#merge-conflicts).

## Estructura del proyecto

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

## Explorador GraphQL

Inicia el explorador con un archivo o un directorio:

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

Lee la guía completa en [docs/graphql-explorer.md](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md).

## Documentación

Empieza aquí para la referencia completa:

- [Almacén cifrado](https://github.com/xaaha/hulak/blob/main/docs/store.md). Modelo de cifrado, uso compartido en equipo, CI.
- [Migrar a la bóveda](https://github.com/xaaha/hulak/blob/main/docs/migrating-to-vault.md). De `env/` a `.hulak/`.
- [Versionar tu bóveda](https://github.com/xaaha/hulak/blob/main/docs/versioning.md). Flujo de trabajo con Git para secretos.
- [Comparación](https://github.com/xaaha/hulak/blob/main/docs/comparison.md). Hulak vs SOPS, Bruno y similares.
- [Cuerpo de la petición](https://github.com/xaaha/hulak/blob/main/docs/body.md)
- [Acciones](https://github.com/xaaha/hulak/blob/main/docs/actions.md)
- [Secretos de entorno (modo clásico)](https://github.com/xaaha/hulak/blob/main/docs/environment.md)
- [Archivos de respuesta](https://github.com/xaaha/hulak/blob/main/docs/response.md)
- [Explorador GraphQL](https://github.com/xaaha/hulak/blob/main/docs/graphql-explorer.md)
- [Auth 2.0](https://github.com/xaaha/hulak/blob/main/docs/auth20.md)
- [Servidor MCP](https://github.com/xaaha/hulak/blob/main/docs/mcp.md). Expón tus peticiones a agentes de IA.

Para la superficie de comandos en vivo, ejecuta:

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

## Compatibilidad de esquemas

El esquema de Hulak está disponible en el [Schema Store](https://www.schemastore.org/), por lo que los editores compatibles con Schema Store pueden habilitar automáticamente el autocompletado para archivos `.hk.yaml` y `.hk.yml`.

También puedes apuntar tu servidor de lenguaje YAML directamente a:

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

## Contribuir

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

Consulta [CONTRIBUTING.md](https://github.com/xaaha/hulak/blob/main/CONTRIBUTING.md) para el flujo de trabajo de desarrollo completo.

## Apoya el proyecto

Si Hulak te resulta útil, abre un issue, sugiere una funcionalidad, envía un pull request o patrocina el proyecto.
Descargar herramienta