{% extends "admin/base.html" %} {% from "partials/_macros.html" import pill, empty_state %} {% block page %}
{{ icon('layers') }}Registered providers {{ icon('chevron-right') }}
{{ overview.providers|length }}
{{ icon('sparkles') }}Model tiers {{ icon('chevron-right') }}
{{ overview.tier_count }}
{{ icon('shield-check') }}Auth {{ icon('chevron-right') }}
{{ overview.api_keys_count }}
{{ icon('zap') }}Rate limit / min {{ icon('chevron-right') }}
{% if overview.rate_limit_per_minute %} {{ overview.rate_limit_per_minute }} {% else %}∞{% endif %}
{% if savings %}

{{ icon('zap') }} Savings (last 7 days)

Estimated USD saved by routing through brains versus running every call against {% if savings.baseline_model %} {{ savings.baseline_model }} {% else %} the default tier {% endif %}. Powered by the static price catalog at brains.router.prices — override per model via the runtime overlay under savings.price_catalog.

{{ icon('zap') }}Saved (7d)
${{ "%.2f"|format(savings.totals.savings_usd) }}
{{ icon('network') }}Calls (7d)
{{ savings.totals.calls }}
{{ icon('sparkles') }}Top routed model
{% if savings.top %} {{ savings.top[0].routed_model }} {% else %} — {% endif %}
{{ icon('shield-check') }}Coverage
{% set total = savings.totals.calls %} {% set priced = total - savings.totals.unpriced_calls %} {% if total %}{{ ((priced * 100) // total) }}%{% else %}—{% endif %}
{% if savings.top and savings.top|length > 1 %} {% for row in savings.top %} {% endfor %}
Routed modelCallsSaved
{{ row.routed_model }} {{ row.calls }} ${{ "%.2f"|format(row.savings_usd) }}
{% endif %}
{% endif %}

{{ icon('layers') }} Model tiers

How brains classifies requests by quality & cost.

{% if overview.models %} {% for tier, route in overview.models.items() %} {% endfor %}
TierProviderModel
{{ tier }} {{ pill(route.provider, tone='accent') }} {{ route.model }}
{% else %} {{ empty_state('No tiers defined', body='Add a tier in Config to start routing requests.', icon_name='layers') }} {% endif %}

{{ icon('network') }} Task routing

Which tier each named task is sent to.

{% if overview.routes %} {% for task, tier in overview.routes.items() %} {% endfor %}
TaskTier
{{ task }} {{ tier }}
{% else %} {{ empty_state('No routes mapped', body='Map at least one task to a tier.', icon_name='network') }} {% endif %}

{{ icon('key-round') }} Auth & secrets

Snapshot of who’s authorised to call the gateway.

Primary admin key
{% if overview.api_key_set %}{{ pill('configured', tone='success', dot=True) }} {% else %}{{ pill('unset', tone='danger', dot=True) }}{% endif %}
Rotation keys
{{ pill(overview.api_keys_count, tone='neutral') }}
OpenAI-compatible key
{% if overview.openai_compatible_api_key_set %}{{ pill('resolved', tone='success', dot=True) }} {% else %}{{ pill('none', tone='warning', dot=True) }}{% endif %}
Anonymous API access
{% if overview.allow_unauthenticated_api %}{{ pill('allowed', tone='danger', dot=True) }} {% else %}{{ pill('blocked', tone='success', dot=True) }}{% endif %}

{{ icon('hard-drive') }} Runtime overlay

Every admin-UI edit lands here. Secrets stay as ${ENV:NAME} refs.

{{ overview.overlay_path }}

{% endblock %}