Files
Timmy-time-dashboard/src/dashboard/templates/index.html
Kimi Agent 7e983fcdb3
Some checks failed
Tests / lint (push) Has been cancelled
Tests / test (push) Has been cancelled
[kimi] Add dashboard card for Daily Run and triage metrics (#718) (#786)
2026-03-21 19:58:25 +00:00

59 lines
1.6 KiB
HTML

{% extends "base.html" %}
{% from "macros.html" import panel %}
{% block content %}
<div class="container-fluid mc-content h-100">
<div class="row g-3 h-100">
<!-- Sidebar -->
<div class="col-12 col-md-3 d-flex flex-column gap-3 mc-sidebar">
<!-- Agents (HTMX-polled from registry) -->
{% call panel("AGENTS", hx_get="/swarm/agents/sidebar", hx_trigger="every 10s") %}
<div class="mc-loading-placeholder">LOADING...</div>
{% endcall %}
<!-- System Health (HTMX polled) -->
{% call panel("SYSTEM HEALTH", hx_get="/health/status", hx_trigger="every 30s") %}
<div class="health-row">
<span class="health-label">LOADING...</span>
</div>
{% endcall %}
<!-- Daily Run Metrics (HTMX polled) -->
{% call panel("DAILY RUN", hx_get="/daily-run/panel", hx_trigger="every 60s") %}
<div class="mc-loading-placeholder">LOADING...</div>
{% endcall %}
</div>
<!-- Main panel — swappable via HTMX; defaults to Timmy on load -->
<div id="main-panel"
class="col-12 col-md-9 d-flex flex-column mc-chat-panel"
hx-get="/agents/default/panel"
hx-trigger="load"
hx-target="#main-panel"
hx-swap="outerHTML">
</div>
</div>
</div>
<script>
function scrollChat() {
var log = document.getElementById('chat-log');
if (log) {
requestAnimationFrame(function() {
log.scrollTop = log.scrollHeight;
});
}
}
function scrollAgentLog(id) {
const log = document.getElementById('agent-log-' + id);
if (log) log.scrollTop = log.scrollHeight;
}
</script>
{% endblock %}