- connectHermes() — WebSocket to /api/world/ws with auto-reconnect (5s)
handles message/tool_call/tool_result/error event types
- Session persistence — localStorage saves/restores last 60 messages
(including tool output blocks) across page reloads via restoreSession()
- Tool output rendering — tool_call shows pre block with name+args,
tool_result shows pre block with output; both stored in session
- Live 3D panels — NEXUS COMMAND and METRICS panels refresh via
refreshTerminalPanel() to show Hermes connection state and message count
- sendChatMessage() routes through WebSocket when connected, offline
fallback keeps sovereign mode when Hermes is unreachable
- New CSS: .chat-msg-hermes, .chat-tool-block, tool prefix colors
Fixes#6
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>