Hi all! I’ve released Aegis (v0.1.0), a handler that checks Web Bot Auth signatures on incoming requests. Web Bot Auth lets an agent such as OpenAI’s sign its HTTP requests with a key it publishes at a well-known URL. Aegis checks each signature and passes the
result to the rest of your config, so your routes decide what each agent gets.
caddyfile
example.com {
web_bot_auth
@openai vars {web_bot_auth.agent} https://chatgpt.com/.well-known/http-message-signatures-directory
handle @openai {
reverse_proxy app:8080
}
handle {
reverse_proxy anubis:8923
}
}
It isn’t on the caddyserver.com download page yet (troubles claiming it). I’d suggest starting in observe and reading the
outcomes in your access log before you block anything. The README covers the settings, the reason codes, and running behind another HTTPS server.
Setup, settings and examples: GitHub - kauricre/aegis: Aegis is a Caddy module that checks Web Bot Auth signatures on incoming requests and tells the rest of the Caddy config the outcome of each check. · GitHub
Feedback welcome!