Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
🪝 Durable webhook gateway with Caddyfile-style config. Receive → queue → deliver (pull, push, SSE, or exec). HMAC auth, retries, DLQ, hot reload.
翻訳待ち
Loading the full README.
Read the full README ↗Webhook infrastructure that just works. Single binary. Zero runtime dependencies. Production-ready defaults.
Hookaido receives webhooks at the edge, queues them durably, and delivers them to your services — with retries, dead-letter queues, and cryptographic verification built in. Think of it as Caddy for webhooks: a compact config file, sensible defaults, and instant reloads.
Docs: https://nuetzliches.github.io/hookaido/
| Problem | Hookaido |
|---|---|
| Webhooks hit your app directly — downtime means lost events | Durable SQLite/WAL or PostgreSQL queue absorbs traffic; your services consume when ready |
| Retry logic scattered across services | Exponential backoff, jitter, DLQ, and lease-based delivery — configured once |
| DMZ security headaches | Pull mode by default: internal services fetch from the DMZ, no inbound holes |
| Complex multi-service deployment | Single binary, one config file, go build and run |
| Webhook signature verification is error-prone | Built-in HMAC-SHA256 verification with replay protection and secret rotation |
SIGHUP or use --watch. No restarts for most changes.inbound (edge webhooks), outbound (API-published queues), internal (job queues).editors/vscode/).Download a binary from the latest release — no Go required.
Or build from source (requires Go 1.26+):
go build ./cmd/hookaido
Or use Docker (official GHCR image):
docker pull ghcr.io/nuetzliches/hookaido:latest
docker run -p 8080:8080 -p 9443:9443 \
-e HOOKAIDO_PULL_TOKEN=mytoken \
-v $(pwd)/Hookaidofile:/app/Hookaidofile:ro \
-v hookaido-data:/app/.data \
ghcr.io/nuetzliches/hookaido:latest
For immutable deployments, pin to a release tag (for example :v2.0.0) or digest.
Run locally:
export HOOKAIDO_PULL_TOKEN="mytoken"
./hookaido run --config Hookaidofile --db ./.data/hookaido.db
Ingress on :8080, Pull API on :9443, Admin on 127.0.0.1:2019 — ready to receive webhooks.
A Hookaidofile is all you need. Caddy-inspired syntax, designed for readability:
Receive & pull (DMZ-safe):
ingress {
listen :8080
}
pull_api {
auth token env:HOOKAIDO_PULL_TOKEN
}
/webhooks/github {
auth hmac {
provider github
secret env:HOOKAIDO_INGRESS_SECRET
}
pull { path /pull/github }
}
Receive & push (direct delivery):
/webhooks/stripe {
auth hmac {
provider stripe
secret env:STRIPE_SIGNING_SECRET
}
deliver "https://billing.internal/stripe" {
retry exponential max 8 base 2s cap 2m jitter 0.2
timeout 10s
}
}
Deliver via subprocess (no HTTP server needed):
/webhooks/github {
auth hmac {
provider github
secret env:GITHUB_SECRET
}
deliver exec "/opt/hooks/deploy.sh" {
timeout 30s
env DEPLOY_ENV production
}
}
Placeholders keep secrets out of config: {$VAR}, {env.VAR}, {file./run/secrets/key}, {vars.NAME}.
Secret refs for auth/signing support env:, file:, vault:, and raw: schemes.
This is the beginning of the README. Read the rest at the original. Read the full README ↗