Un proxy d'interception HTTP rapide, piloté au clavier, et une boîte à outils de hacking et de pentesting pour le terminal.
Piratez depuis le terminal.
Installation • Utilisation • Documentation • Contribution
gori (고리 — coréen pour anneau, lien, boucle) se place dans la boucle entre votre client et sa cible,
capturant chaque requête et réponse sous forme de flux que vous pouvez rejouer, fuzzer et scanner sur HTTP/1.1,
HTTP/2, WebSocket, gRPC et SSE, et intercepter en vol sur HTTP/1.1 et HTTP/2. Les actions d'évaluation
essentielles qui traversent les surfaces utilisent les mêmes moteurs, et ces workflows sont également
disponibles via gori run et MCP, afin que les scripts et les agents IA puissent piloter le même engagement.
La matrice de capacités nomme explicitement les limites
de protocoles et de surfaces.
proto:wsfetch, Go, httpie ou PoC CSRFCtrl-P) et menu contextuel (Space) donnent accès à chaque actiongori run expose les workflows principaux de projet et de test pour un usage non interactifgori mcp) expose ces workflows aux agents IA (il ne démarre pas de proxy de capture)curl -fsSL https://gori.hahwul.com/install.sh | bash
Puis mettez à jour plus tard avec gori update (auto-mise à jour pour les installations binaires ; conseils de gestionnaire de paquets pour Homebrew / Snap / AUR).
brew tap hahwul/gori
brew install gori
Le dépôt est un flake, il s'exécute donc sans être installé :
nix run github:hahwul/gori
nix profile install github:hahwul/gori # ou conservez-le
Nécessite Crystal >= 1.21.0 et pkg-config.
git clone https://github.com/hahwul/gori.git
cd gori
shards build --release
Le binaire est écrit dans bin/gori.
Pour les bibliothèques système (Brotli / Zstd), les builds hors ligne et d'autres options, consultez le guide d'installation.
gori exécute un seul moteur et un seul projet derrière trois points d'entrée. Pilotez-le vous-même, confiez-le à un agent IA, ou scriptez-le, et choisissez celui qui correspond à qui est aux commandes.
gori (TUI)Démarrez le proxy et ouvrez l'interface terminal interactive. Aucune sous-commande nécessaire :
gori
Le proxy écoute sur 127.0.0.1:8070 par défaut, et un court assistant de premier lancement choisit la
liaison et le thème par défaut globaux (les projets peuvent fixer les leurs plus tard). Pour intercepter HTTPS, faites confiance à l'autorité de certification racine de gori. Le chemin le plus rapide est Open browser dans la palette (Ctrl-P), qui lance un navigateur déjà approuvé et proxifié. Le trafic capturé arrive dans History ; appuyez sur Ctrl-P pour la palette de commandes ou Space pour les actions contextuelles.
gori --listen 0.0.0.0 --port 8080 # liaison globale pour cette exécution uniquement (non persistée)
gori mcp (serveur MCP)gori mcp est un serveur Model Context Protocol. Un client IA
le lance via stdio, lit votre trafic et pilote les mêmes outils que vous. Laissez gori écrire la
configuration pour votre agent, puis redémarrez le client :
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 nécessite un adaptateur MCP, tel que pi-mcp-adapter
(pi install npm:pi-mcp-adapter). L'installateur respecte PI_CODING_AGENT_DIR lorsqu'il est défini.
Ajoutez --read-only pour confier un projet à un agent non fiable (outils de lecture uniquement, aucune requête en direct). Le
guide de configuration IA explique comment connecter un agent et
exécuter votre première requête.
gori run (CLI headless)gori run expose les mêmes moteurs principaux de projet et de test sans l'interface interactive. Il est
conçu pour le scripting et la CI, mais fonctionne tout aussi bien à la main ou depuis le shell d'un agent :
gori run history --format json # exporte les flux capturés en JSON
gori run sitemap # points de terminaison vus jusqu'ici
gori run --help # toutes les sous-commandes
Les trois points d'entrée partagent la même base de données de projet. Consultez la documentation pour le guide complet, ou ouvrez l'onglet Help dans l'application.
shards build # binaire de release dans bin/gori
shards run gori # exécuter sans installer
Si l'édition de liens échoue avec des symboles BrotliDecoder* non définis, libbrotlidec est manquant ou
pkg-config ne le trouve pas — consultez le
guide d'installation pour les bibliothèques système et le
build hors ligne -Dwithout_native_codecs.
Les contributions sont les bienvenues — consultez CONTRIBUTING.md pour vous préparer.
Toutes les formes d'aide ne se concrétisent pas par un commit, c'est pourquoi la ligne sous chaque nom indique de quoi il s'agissait : les rapports de bugs et reproductions ci-dessus ont trouvé des choses que gori n'aurait pas trouvées seul. Pour créditer
quelqu'un, modifiez .github/contributor-mural.yml.
gori (고리) est le mot coréen pour un anneau, un lien ou une boucle — exactement là où se situe l'outil : dans la boucle entre votre client et sa cible, capturant et remodelant chaque requête à son passage. Sit in the loop.