All projects

Intercepting Proxy · Terminal

Gori

gori (고리 — Korean for ring, link, loop) sits in the loop between your client and its target, capturing every request and response as a flow you can intercept, replay, fuzz and scan — across HTTP/1.1, HTTP/2, WebSocket, gRPC and SSE, all from the terminal.

Crystal Apache-2.0 Hack from the terminal
Gori preview
GitHub stars
5 Protocols spoken
MCP AI-agent native
Apache-2.0 License

Capabilities

One engine, three entry points

Every action in gori works three ways — interactively in the TUI, headlessly as a gori run subcommand, and over MCP for AI agents. Same engine, same project, whoever is at the controls.

Capture & intercept

A proxy for HTTP/1.1, HTTP/2, WebSocket, gRPC and SSE. Hold, edit, forward or drop traffic in flight.

Replay & fuzz

A replay workbench for crafting and re-sending requests, plus an intruder-style fuzzer with four attack modes.

Prism scanner

Passive and light-touch active vulnerability scanning, with Param Miner and findings triage built in.

Keyboard-first TUI

Command palette, context space menu, rebindable hotkeys and switchable themes — the mouse is optional.

Headless CLI

Every TUI action mirrors to a gori run subcommand, built for scripts, pipelines and CI.

MCP for AI agents

gori mcp hands the same engagement to your AI client, with a read-only mode for untrusted agents.

Quickstart

From install to intercepted traffic in a minute

zsh
$ brew tap hahwul/gori
$ brew install gori
# start the proxy and open the TUI
$ gori
[*] proxy listening on 127.0.0.1:8070
# headless, for scripts and CI
$ gori run history --format json
# or hand it to an AI agent
$ gori mcp --install-claude-code

Trust the root CA once, then open a proxied browser straight from the palette.

Get in the loop.

Put gori between your client and its target.