#!/usr/bin/with-contenv bashio
# Headroom optimization proxy — local backend for Claude Desktop MCP and Claude Code.
declare port=8787
declare host=127.0.0.1

# The dashboard is unauthenticated. Keep it container-local by default and bind all
# interfaces only when the user explicitly opts in and maps port 8787.
if bashio::config.true 'expose_headroom_dashboard'; then
    host=0.0.0.0
fi

if bashio::config.true 'install_headroom' && command -v headroom > /dev/null 2>&1; then
    bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}"
    exec s6-setuidgid abc headroom proxy --host "${host}" --port "${port}" --code-aware
fi

bashio::log.info "svc-headroom: install_headroom disabled or headroom not found; idling"
exec sleep infinity
