# ── Authelia forward auth snippet ────────────────────────────────────────────
(authelia) {
    forward_auth authelia:9091 {
        uri /api/authz/forward-auth
        copy_headers Remote-User Remote-Groups Remote-Name Remote-Email
    }
}

# ── Authelia login portal ─────────────────────────────────────────────────────
auth.{$MY_DOMAIN} {
    reverse_proxy authelia:9091
    log {
        output file /var/log/caddy/auth.log
    }
}

# ── AI Portal (landing page / stack switcher) ─────────────────────────────────
localai.{$MY_DOMAIN} {
    import authelia
    reverse_proxy 192.0.2.1:8080
    log {
        output file /var/log/caddy/localai.log
    }
}

# ── Open WebUI (Chat) ─────────────────────────────────────────────────────────
chat.{$MY_DOMAIN} {
    import authelia
    reverse_proxy 192.0.2.1:3000
    log {
        output file /var/log/caddy/chat.log
    }
}

# ── InvokeAI (Images) ─────────────────────────────────────────────────────────
images.{$MY_DOMAIN} {
    import authelia
    reverse_proxy 192.0.2.1:9090
    log {
        output file /var/log/caddy/images.log
    }
}

# ── Template for future services ──────────────────────────────────────────────
# newservice.{$MY_DOMAIN} {
#     import authelia
#     reverse_proxy INTERNAL_IP:PORT
# }
