Skip to content

teszerrakt/orthrus

Repository files navigation

Orthrus

Orthrus

SSE debugging tool — intercepts Server-Sent Events via mitmproxy, routes them through a relay server, and presents a browser UI (or native macOS app) to inspect, pause, edit, drop, inject, and delay individual events in real time.

Mobile/Browser ──WiFi proxy──► mitmproxy :28080
                                   │
                                   │ rewrites SSE requests to /relay?target=<url>
                                   ▼
                           relay server :29000   ◄──► WebSocket ◄──► Browser UI / Desktop App
                                   │
                                   │ upstream SSE fetch
                                   ▼
                           Real SSE Server

Prerequisites

Quick Start

bun run install:all        # install all dependencies (uv + bun)
bun run dev:web            # relay server + mitmproxy + Vite dev server

Open http://localhost:5173 in your browser. On your mobile device, set WiFi proxy to <your-machine-ip>:28080.

Desktop App (macOS)

bun run dev:desktop        # relay server + mitmproxy + Tauri dev
bun run build:desktop      # build .app + .dmg

Event Actions

Action Description
Forward Send the event as-is to the client
Edit Modify the event data, then forward
Drop Discard the event (client never sees it)
Inject Send a synthetic event not from the real stream
Forward All Flush all pending events without reviewing

Auto-Forward: Toggle in the toolbar to let all events pass through automatically.

Configuration

config.json controls which URLs mitmproxy intercepts. Editable from the Settings page in the UI.

{
  "sse_patterns": ["*/sse*", "*/stream*", "*/events*"],
  "relay_host": "127.0.0.1",
  "relay_port": 29000
}

Patterns use glob syntax. Changes are hot-reloaded on every request.

Environment Variables

Variable Default Description
RELAY_PORT 29000 Relay server port
PROXY_PORT 28080 mitmproxy port
MOCKS_DIR ./mocks Mock files directory

About

SSE debugging tool — intercepts Server-Sent Events with mitmproxy, breakpoint-level event control via a Chrome DevTools-style UI

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors