Skip to content

Releases: lance0/hookshot

Hookshot v1.0.0

08 Dec 14:43

Choose a tag to compare

The self-hosted webhook relay. Receive Stripe, GitHub, and other webhooks on localhost—without paying for ngrok.

Highlights

  • Free & Self-hosted — Your webhooks, your servers, no subscription
  • Request Replay — Re-send any webhook for debugging (included free, unlike ngrok)
  • Beautiful TUI — Live request stream with Catppuccin colors
  • SQLite Storage — Request history persists across restarts
  • Security Hardened — UUID tunnel IDs, size limits, origin validation

Features

  • WebSocket-based tunnel relay for webhook forwarding
  • Interactive TUI with live request stream and search/filter
  • Request replay from TUI (r key) or CLI
  • Path-based routing to multiple local targets
  • Auth tokens for secure relays (--token)
  • SQLite persistent storage (--database)
  • YAML configuration files
  • Native TLS/HTTPS support
  • Docker and Fly.io deployment ready

Security

  • Full UUID tunnel IDs (36 characters) — prevents guessing
  • Server-generated IDs only — client requests ignored
  • Replay API ownership verification
  • Configurable body/message size limits (default 10MB)
  • WebSocket origin validation (--allowed-origins)
  • Bearer token auth only — no URL token leakage
  • Graceful shutdown on SIGINT/SIGTERM

Quick Start

Install

go install github.com/lance0/hookshot/cmd/hookshot@v1.0.0

Run server (on your VPS)

hookshot server --token secret --database /data/hookshot.db

Connect locally

hookshot client -s https://your-server.com --token secret --tui

Deploy

Fly.io:
git clone https://github.com/lance0/hookshot.git && cd hookshot
fly launch --copy-config --name my-hookshot
fly volumes create hookshot_data --size 1
fly secrets set TOKEN=your-secret
fly deploy

Docker:
docker run -p 8080:8080 -v hookshot-data:/data ghcr.io/lance0/hookshot:v1.0.0 server --token=secret

vs ngrok

ngrok Hookshot
Price $8-20/mo Free
Self-hosted No Yes
Replay Paid Included
Path routing No Yes

Full documentation: https://github.com/lance0/hookshot