Zum Inhalt

Jarvis Voice Assistant

Stand: 2026-05-29

ARCHITECTURE NOTE: Jarvis ist ein Voice-Kanal fuer Hermes. Hermes selbst ist die zentrale Context-, Memory-, Retrieval- und Policy-Schicht der AI Suite, nicht primaer ein Voice-System.

Ergebnis der Analyse

Das GitHub-Projekt Julian-Ivanov/jarvis-voice-assistant wurde geklont und analysiert. Es ist ein lokaler Windows-/Desktop-Assistent, kein fertiger Headless-Serverdienst.

Wesentliche Befunde:

  • FastAPI/WebSocket-Backend vorhanden
  • Browser-Frontend nutzt Web Speech API
  • Playwright startet sichtbares Chromium mit headless=False
  • Screen Capture nutzt PIL.ImageGrab
  • Clap Trigger nutzt lokale Audio-Hardware
  • Windows-Launch nutzt PowerShell und Window-Snapping
  • LLM läuft direkt über Anthropic SDK
  • TTS läuft direkt über ElevenLabs
  • keine Lizenzdatei gefunden

Was auf Hermes laufen kann

  • ein serverfähiger Orchestrator
  • Health-/Readiness-Endpunkte
  • Voice-Session-API
  • Text-basierte Voice-Message-API
  • Audit/RBAC/Tenant-Kontext
  • LiteLLM-/MCP-Anbindung

Nicht direkt auf Hermes laufen sollten:

  • lokales Mikrofon
  • Lautsprecher
  • Browser Web Speech API
  • sichtbares Playwright-Chromium
  • Screen Capture
  • Windows PowerShell Window Management

Umgesetzter Pilot

Hermes wurde um einen backend-only Voice-Pilot erweitert. Der Pilot spricht inzwischen nicht mehr nur mit einem statischen Gateway-Stub, sondern routet Textnachrichten kontrolliert an den Nous Hermes Agent Core:

Endpoint Zweck
GET /voice/health Voice-Pilot-Health
GET /voice/config sichere Client-Konfiguration ohne Secretwerte
POST /voice/session auditierte Voice-Session anlegen
POST /voice/message auditierte Voice-Nachricht annehmen
POST /voice/end auditierte Voice-Session beenden

Der Pilot gibt keine Secretwerte aus und erlaubt keine direkten Infrastrukturaktionen.

Aktueller Pfad:

macOS Testclient oder Voice Device
  -> /voice/session und /voice/message am Lanstyle AI Gateway
  -> Nous Hermes Core API intern auf 127.0.0.1:8642
  -> LiteLLM und native Hermes Memory/Sessions

Produktiver Zielpfad

Jarvis wird nicht als Original-Desktop-App produktiv betrieben. Stattdessen wird die Logik in Lanstyle-Komponenten getrennt:

  • voice-client: Browser/Kiosk/Python auf Gerät
  • backend-api: Hermes Voice API
  • agent-orchestrator: Nous Hermes Core + LiteLLM + MCP
  • actions/tools: nur über Controlled Execution
  • tts/stt: später austauschbar, secret- und auditfähig

Lizenzhinweis

Im analysierten Repository wurde keine Lizenzdatei gefunden. Der Code wird deshalb nicht als produktive Codebasis übernommen. Die Umsetzung auf Hermes ist ein eigener, minimaler Adapter/Pilot.

Lokaler Testclient für Maximilian

Ein sofort nutzbarer macOS-Testclient liegt unter:

clients/hermes-voice-macos/

Start:

cd clients/hermes-voice-macos
./start-hermes-voice-macos.sh

Der Client nutzt den Browser für Mikrofon und Sprachausgabe. Das Hermes-Token liegt in ~/.config/hermes-voice/secrets.env und wird nur vom lokalen Python-Proxy gelesen, nicht im UI angezeigt.