{% extends 'base.html' %} {% from 'components/ui.html' import page_header, panel, choice_card, select_field, empty_state, tab_link %} {% block title %}Settings · Woltspace{% endblock %} {% block content %}
{% call page_header('Lodge controls', 'Settings', 'Shape how the lodge behaves without reaching for a config file.') %} Changes save here {% endcall %}
{% call panel('Lodge default', 'Every wolt follows this engine unless it has an override.', 'applies to new sessions') %}
Default agent engine {% for harness in harnesses %} {{ choice_card( 'default-harness', harness.id, harness.label, 'The standard engine for wolts without a pin.', harness.models.raccoon, harness.id == harness_default, harness.emoji ) }} {% endfor %}
{% endcall %}
A quiet handoff

Engine changes affect the next den you open. Sessions already running keep the engine they started with.

{% call panel('Wolt overrides', 'Pin a particular wolt, or let it wander with the lodge default.', (wolts|length ~ ' wolts')) %} {% if wolts %}
{% for wolt in wolts %} {% set wolt_name = wolt.name or wolt.dir %} {% set wolt_type = wolt.type or 'rodent' %} {% set selected = wolt.harness or '' %} {% set effective = selected or harness_default %} {% set field_id = 'wolt-harness-' ~ loop.index %} {% call select_field(field_id, wolt_name, wolt_type ~ ' · ' ~ ('pinned override' if selected else 'follows lodge')) %}
{{ 'Follows lodge' if not selected else 'Pinned' }} · {{ effective }}
{% endcall %} {% endfor %}
{% else %} {{ empty_state('🪵', 'No wolts to configure yet', 'Create a wolt and it will settle in here.') }} {% endif %} {% endcall %}
Saved
{% endblock %} {% block scripts %} {% endblock %}