ターミナル向けの高速でキーボード駆動のHTTP傍受プロキシおよびハッキング・ペネトレーションテストツールキット。
ターミナルからハックする。
インストール • 使い方 • ドキュメント • コントリビュート
gori(고리 — 韓国語で リング、リンク、ループ)は、クライアントとそのターゲットの間のループに位置し、
すべてのリクエストとレスポンスを フロー としてキャプチャします。これをリプレイ、ファズ、スキャンでき、
HTTP/1.1、HTTP/2、WebSocket、gRPC、SSE を横断して利用でき、HTTP/1.1 と HTTP/2 では通信中のインターセプトも可能です。
複数のサーフェスにまたがる中核の評価アクションは同じエンジンを使用し、それらのワークフローは
gori run と MCP からも利用できるため、スクリプトや AI エージェントが同じエンゲージメントを操作できます。
ケイパビリティマトリクスには、プロトコルと
サーフェスの制限が明示されています。
proto:ws でオプトインfetch、Go、httpie、または CSRF PoC としてコピーCtrl-P)とコンテキストスペースメニュー(Space)ですべてのアクションに到達gori run は中核のプロジェクトおよびテストワークフローを非対話的に公開gori mcp)はそれらのワークフローを AI エージェントに公開(キャプチャプロキシは起動しない)curl -fsSL https://gori.hahwul.com/install.sh | bash
その後は gori update で更新できます(バイナリインストールでは自己更新、Homebrew / Snap / AUR ではパッケージマネージャーのガイダンス)。
brew tap hahwul/gori
brew install gori
このリポジトリは flake なので、インストールせずに実行できます:
nix run github:hahwul/gori
nix profile install github:hahwul/gori # またはインストールして保持する
Crystal >= 1.21.0 と pkg-config が必要です。
git clone https://github.com/hahwul/gori.git
cd gori
shards build --release
バイナリは bin/gori に出力されます。
システムライブラリ(Brotli / Zstd)、オフラインビルド、その他のオプションについては、 インストールガイドを参照してください。
gori は 1 つのエンジンと 1 つのプロジェクトを 3 つのエントリポイントの背後で実行します。自分で操作するか、 AI エージェントに任せるか、スクリプト化するか、操作する主体に合ったものを選んでください。
gori(TUI)プロキシを起動し、対話型のターミナル UI を開きます。サブコマンドは不要です:
gori
プロキシはデフォルトで 127.0.0.1:8070 をリッスンし、初回起動時の短いウィザードで
グローバルデフォルトのバインドとテーマを選択します(プロジェクトごとに後で固定できます)。HTTPS をインターセプトするには、
gori のルート CA を信頼してください。最も手早い方法はパレットの Open browser(Ctrl-P)で、
すでに信頼されプロキシ経由になっているブラウザを起動します。キャプチャしたトラフィックは History に表示されます。Ctrl-P で
コマンドパレット、Space でコンテキストアクションを開けます。
gori --listen 0.0.0.0 --port 8080 # この実行のみのグローバルバインド(永続化されない)
gori mcp(MCP サーバー)gori mcp は Model Context Protocol サーバーです。AI クライアントが
stdio 経由でこれを起動し、あなたのトラフィックを読み取り、あなたと同じツールを操作します。gori にエージェント用の
設定を書き込ませ、クライアントを再起動してください:
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 には MCP アダプターが必要です。例えば pi-mcp-adapter
(pi install npm:pi-mcp-adapter)です。インストーラーは設定されている場合 PI_CODING_AGENT_DIR を尊重します。
信頼できないエージェントにプロジェクトを渡すには --read-only を追加します(読み取りツールのみ、ライブリクエストなし)。
AI セットアップガイドでは、エージェントの接続と
最初のリクエストの実行を順を追って説明しています。
gori run(ヘッドレス CLI)gori run は、対話型 UI なしで同じ中核のプロジェクトおよびテストエンジンを公開します。これは
スクリプトや CI 向けに作られていますが、手動やエージェントのシェルからも同様に使えます:
gori run history --format json # キャプチャしたフローを JSON としてダンプ
gori run sitemap # これまでに見つかったエンドポイント
gori run --help # すべてのサブコマンド
3 つのエントリポイントはすべて同じプロジェクトデータベースを共有します。完全なガイドについては ドキュメントを参照するか、アプリの Help タブを開いてください。
shards build # bin/gori にリリースバイナリを生成
shards run gori # インストールせずに実行
未定義の BrotliDecoder* シンボルでリンクが失敗する場合、libbrotlidec が存在しないか、
pkg-config が見つけられていません — システムライブラリと
-Dwithout_native_codecs オフラインビルドについては
インストールガイドを参照してください。
コントリビュートを歓迎します — セットアップについては CONTRIBUTING.md を参照してください。
すべての種類の助けがコミットとして残るわけではないため、各名前の下の行にはそれが何だったかが書かれています:
そこにあるバグ報告と再現は、gori だけでは見つけられなかったものを発見しました。誰かをクレジットするには、
.github/contributor-mural.yml を編集してください。
gori(고리)は韓国語で リング、リンク、ループ を意味します — まさにこのツールが位置する場所です: クライアントとそのターゲットの間のループの中で、通過する各リクエストをキャプチャし、形を変えます。 ループの中に座る。