Un proxy de interceptación HTTP rápido, controlado por teclado, y un conjunto de herramientas de hacking y pentesting para la terminal.
Hackea desde la terminal.
Instalación • Uso • Documentación • Contribuir
gori (고리 — coreano para anillo, enlace, bucle) se sitúa en el bucle entre tu cliente y su objetivo,
capturando cada petición y respuesta como un flujo que puedes reproducir, fuzzear y escanear en HTTP/1.1,
HTTP/2, WebSocket, gRPC y SSE, e interceptar en vuelo en HTTP/1.1 y HTTP/2. Las acciones de evaluación
principales que cruzan superficies usan los mismos motores, y esos flujos de trabajo también están
disponibles a través de gori run y MCP, para que los scripts y los agentes de IA puedan dirigir el mismo
compromiso. La matriz de capacidades nombra los límites
de protocolo y superficie explícitamente.
proto:wsfetch, Go, httpie o un PoC de CSRFCtrl-P) y menú de espacio contextual (Space) alcanzan cada accióngori run expone los flujos de trabajo principales de proyecto y pruebas para uso no interactivogori mcp) expone esos flujos de trabajo a agentes de IA (no inicia un proxy de captura)curl -fsSL https://gori.hahwul.com/install.sh | bash
Luego actualiza más tarde con gori update (autoactualización para instalaciones binarias; guía del gestor de paquetes para Homebrew / Snap / AUR).
brew tap hahwul/gori
brew install gori
El repositorio es un flake, por lo que se ejecuta sin necesidad de instalarlo:
nix run github:hahwul/gori
nix profile install github:hahwul/gori # o consérvalo
Requiere Crystal >= 1.21.0 y pkg-config.
git clone https://github.com/hahwul/gori.git
cd gori
shards build --release
El binario se escribe en bin/gori.
Para bibliotecas del sistema (Brotli / Zstd), compilaciones sin conexión y otras opciones, consulta la guía de instalación.
gori ejecuta un motor y un proyecto detrás de tres puntos de entrada. Dirígelo tú mismo, entrégalo a un agente de IA, o scriptéalo, y elige el que se ajuste a quién tiene los controles.
gori (TUI)Inicia el proxy y abre la interfaz de terminal interactiva. No se necesita subcomando:
gori
El proxy escucha en 127.0.0.1:8070 por defecto, y un breve asistente de primera ejecución elige el
enlace y el tema predeterminados globales (los proyectos pueden fijar los suyos más tarde). Para interceptar HTTPS, confía en la CA raíz de gori. La ruta más rápida es Open browser (Ctrl-P) de la paleta, que lanza un navegador ya confiado y proxeado. El tráfico capturado llega a History; pulsa Ctrl-P para la paleta de comandos o Space para acciones contextuales.
gori --listen 0.0.0.0 --port 8080 # enlace global solo para esta ejecución (no persistente)
gori mcp (servidor MCP)gori mcp es un servidor de Model Context Protocol. Un cliente de IA
lo lanza sobre stdio, lee tu tráfico y dirige las mismas herramientas que tú. Deja que gori escriba la
configuración para tu agente, luego reinicia el cliente:
gori mcp --install-claude-code # Claude Code (~/.claude.json)
gori mcp --install-claude # Claude Desktop
gori mcp --install-codex # OpenAI Codex
gori mcp --install-agy # Antigravity CLI
gori mcp --install-grok # Grok
gori mcp --install-hermes # Hermes (~/.hermes/config.yaml)
gori mcp --install-pi # Pi (~/.pi/agent/mcp.json)
Pi necesita un adaptador MCP, como pi-mcp-adapter
(pi install npm:pi-mcp-adapter). El instalador respeta PI_CODING_AGENT_DIR cuando está definido.
Añade --read-only para entregar un proyecto a un agente no confiable (solo herramientas de lectura, sin peticiones en vivo). La
guía de configuración de IA explica cómo conectar un agente y
ejecutar tu primera petición.
gori run (CLI sin interfaz)gori run expone los mismos motores principales de proyecto y pruebas sin la interfaz interactiva. Está
diseñado para scripting y CI, pero funciona igual de bien a mano o desde el shell de un agente:
gori run history --format json # volcar los flujos capturados como JSON
gori run sitemap # endpoints vistos hasta ahora
gori run --help # todos los subcomandos
Los tres puntos de entrada comparten la misma base de datos de proyecto. Consulta la documentación para la guía completa, o abre la pestaña Help en la aplicación.
shards build # binario de release en bin/gori
shards run gori # ejecutar sin instalar
Si el enlazado falla con símbolos BrotliDecoder* indefinidos, falta libbrotlidec o
pkg-config no puede encontrarlo — consulta la
guía de instalación para las bibliotecas del sistema y la
compilación sin conexión con -Dwithout_native_codecs.
Las contribuciones son bienvenidas — consulta CONTRIBUTING.md para empezar.
No todo tipo de ayuda llega como un commit, por lo que la línea bajo cada nombre dice qué fue: los informes
de errores y las reproducciones de ahí arriba encontraron cosas que gori no habría encontrado por sí solo. Para acreditar
a alguien, edita .github/contributor-mural.yml.
gori (고리) es la palabra coreana para anillo, enlace o bucle — exactamente donde se sitúa la herramienta: en el bucle entre tu cliente y su objetivo, capturando y remodelando cada petición a su paso. Siéntate en el bucle.