CLI / TUI / Web
Verantwortung
Die UI-Schicht ist ein weiterer Satz Eingänge, über die Nutzer den Agenten erreichen (neben den Gateway-Nachrichtenplattformen): CLI (hermes_cli/, Befehlszeilen-Subcommand-System), TUI (ui-tui/, TypeScript-Terminal-UI + tui_gateway/-Python-Brücke), Web (web/, Browser-Oberfläche). Alle drei leiten die Nutzereingaben letztlich in run_conversation des Agenten und rendern die Ausgabe zurück. Sie stehen parallel zur Gateway-Schicht – das Gateway bindet externe Plattformen an, die UI-Schicht bindet lokale Nutzer an.
Schlüsseldateien
CLI
hermes_cli/__init__.py— Package-Einstieg_parser.py— Kommandozeilen-Argument-Parsingauth.py/auth_commands.py— Authentifizierung (Nous Portal u. a.)active_sessions.py— aktive Sitzungen verwaltenbackup.py/checkpoints.py— Backup und Checkpointsblueprint_cmd.py— Blaupausen-Commandbrowser_connect.py/bundles.py/callbacks.pybanner.py/build_info.py— Banner und Build-Info
TUI
ui-tui/README— Terminal-UI (TypeScript, inkl. packages/src)ui-tui/package.json— Abhängigkeiten und Skriptetui_gateway/entry.py— TUI-Gateway-Einstiegserver.py— TUI-Servertransport.py/ws.py— Transport und WebSocketevent_publisher.py— Event-Publishinghost_supervisor.py/compute_host.py— Host-Aufsichtslash_worker.py/synthetic_turn.py/render.py/project_tree.py_stdin_recovery.py— Stdin-Wiederherstellung
Web
web/README— Browser-Oberflächeweb/index.html/vite.config.ts— Vite-Einstiegweb/src/— Frontend-Quellen
Datenfluss
- CLI:
hermes <subcommand>→hermes_cli/_parser.pyparsed → das Subcommand-Modul (auth/backup/blueprint/…) führt aus; dialogorientierte Commands rufen letztlichAIAgent.run_conversation:6350auf. - TUI:
ui-tui/(TS-Frontend) verbindet sich per WebSocket mittui_gateway/ws.py;tui_gatewayübersetzt Terminal-Events an den Agenten (tui_gateway/server.pyhält den Agenten), Output wird übertui_gateway/event_publisher.pyans Frontend gepusht. - Web:
web/(Vite-Frontend) bindet sich ebenfalls über ein Backend an den Agenten und rendert Dialog und Werkzeugergebnisse. - Die Agent-Instanz aller drei wird über
init_agent:276zusammengebaut und teilt sich die Fähigkeitsschicht.
Zusammenfassung
UI-Schicht = drei Hüllen (CLI/TUI/Web) + eine tui_gateway-Brücke. Sie tragen keine Geschäftslogik, sondern nur Ein-/Ausgabeform. Parallel zum Gateway: das Gateway bindet externe Nachrichtenplattformen an, die UI-Schicht bindet lokales Terminal/Browser an. ACP (siehe hier) bindet die IDE an und komplettiert die «Erreichungsfläche».