Web server and reverse proxy CLI for running, validating, and reloading Caddy configs with automatic HTTPS.
$brew install caddy
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis
Caddy is a web server and reverse proxy CLI built around a long-running server process plus commands for adapting, validating, and reloading its native JSON config. It is useful when you want one tool to serve static sites, proxy upstream apps, and manage HTTPS certificates without bolting together separate components.
What It Enables
- Run local or production web servers, reverse proxies, and static file servers from config files or purpose-built subcommands like
file-serverandreverse-proxy. - Adapt Caddyfiles and other supported config formats into native JSON, validate them before deploy, then reload a running instance through the admin API.
- Inspect installed modules, export or import storage assets such as certificates, and manage local trust for Caddy's internal CA during HTTPS workflows.
Agent Fit
- Commands map well to inspect, change, and verify loops:
adapt,validate,reload,stop,list-modules, and trust commands are direct subcommands with clear exit behavior. - JSON support is useful but narrow:
adaptemits native JSON config andlist-modules --jsongives machine-readable module metadata, while most operational output is still logs and plain text. - Best when a project already has Caddy config conventions or deployment scripts; agents become much safer once addresses, cert policy, and admin API access are captured in skills.
Caveats
- Many actions target a running admin API or privileged ports, so unattended use depends on local permissions, reachable listeners, and careful config review before reloads.
- Caddy is primarily a server and proxy runtime CLI, not a general service-management surface; most automation value is on hosts where you control the web-serving stack.