{% extends "admin/base.html" %} {% block title %}Machine — cmdop admin{% endblock %} {% block head %} {# deep-chat + machine-chat.js are loaded globally by base.html (when user and fleet are present, which always holds on this page) — no need to re-load them here. Only the page-specific terminal glue is local. #} {% endblock %} {% block content %} {% from 'admin/components/ui.html' import card, info_row, badge, stat, tooltip %}
Machines

{% call card(title='Spend on this machine', subtitle='Per-machine attribution from the LLM gateway ledger.') %}
Window Loading
{% endcall %}
{# Styling (bubbles, input, scrollbar, intro panel) is applied as JS PROPERTIES in machine-chat.js::applyJarvisChatTheme — not template attributes (deep-chat's attribute JSON parser was throwing at position 230 on multi-key configs). The intro panel below is the native deep-chat feature: a display:none child auto-shown centered and auto-hidden on first message. #}
Ask the agent.
Run a command, inspect files, or check status on this machine.
{% endblock %}