{% extends "base.html" %} {% block title %}Network · Harbormaster{% endblock %} {% block page_title %}Network{% endblock %} {% block content %}

Inter-project network

Live MCP-call events. Edges thicken with call frequency.

{# v21.0.0a6: network tabs. The networkTabs() factory owns active/setTab and (for graph/chat/timeline) re-dispatches the legacy hm:network:view event consumed by networkPanel(); the stats tab toggles a sibling `data-network-stats` block. #}
{% with tabs_id="network" %}{% include "_partials/_tabs.html" %}{% endwith %}

Network stats

total calls
error rate
by tool
by source
{# v13.0.0a4: each source row is a button that dispatches the hm:network:filter event so the events panel below can apply the filter without re-rendering the whole stats panel. #}
top projects
{# v13.0.0a4: server-side filter controls. Tool + source dropdowns are derived from the stats panel above (auto-refresh every 30s); the date inputs accept HTML5 datetime-local strings (operator's local TZ, converted to unix ms before being sent to the API). Filter state is mirrored to the URL so an operator can share / bookmark a filtered view. #}
{# v11.0.0a4: stateBadge unification — replaces two inline color- only spans with the shared icon+label badge component. #}

No MCP traffic yet.

Ask a project something via your MCP client and the call will appear here in real-time — including caller, target, timing, and result.

Event density —

events · peak bucket:

{# v16.0.0a3: network page tour wizard (carry-over #8). Three-step walkthrough on first /network visit, gated by localStorage `hm-network-tour-completed`. Anchors via `data-tour-step="network-*"` markup attrs (carry-over #6) — resilient to template refactors. #} {% endblock %} {# v19.0.0a3: network inspector — compact 1h stats summary. The full stats panel (5-column grid, by-tool / by-source / top-projects breakdowns + filter controls) stays in the main column where it has room to breathe. The inspector mirrors the headline numbers (total_calls / error_rate / by_tool top entries) over the last 1h so the operator gets a glance at network health regardless of which view (graph / chat / timeline) is selected in main. #} {% block inspector %}

Last 1h

total calls
error rate

By tool

Top projects

{% endblock %}