Teams Integration für Hermes¶
Stand: 2026-05-29
Status¶
Die Teams-Integration ist vorbereitet, aber nicht live geschaltet. Der Hermes-LXC ist produktiv erreichbar, der interne Teams-Endpoint-Platzhalter ist vorhanden. Es wurden keine Microsoft-Secrets erzeugt, kein Consent erzwungen und keine produktive Bot-Registrierung geändert.
Ziel¶
Maximilian soll später mit Hermes in Microsoft Teams chatten können. Hermes darf dabei nur definierte APIs nutzen und keine Infrastruktur-Änderungen außerhalb des Controlled Execution Layers ausführen.
Architektur¶
flowchart LR
Teams["Microsoft Teams Client"]
Bot["Azure Bot / App Registration"]
Gateway["Lanstyle AI Gateway"]
Core["Nous Hermes Core"]
CE["Controlled Execution Layer"]
Audit["Audit / Policy / RBAC"]
Teams --> Bot --> Gateway
Gateway --> Audit
Gateway --> Core
Gateway --> CE
Benötigte Azure-/Teams-Parameter¶
- Bot/App Name:
Lanstyle Hermes - Tenant: Lanstyle Microsoft 365 Tenant
- Interner Messaging Endpoint:
http://10.222.70.30:8088/teams/messages - Voice-Pilot Endpoint:
http://10.222.70.30:8088/voice/message - Nous Core Endpoint: nur intern im LXC auf
127.0.0.1:8642, nicht public - Public Messaging Endpoint: erst nach separater DNS/NPM-Freigabe festlegen
- Redirect URI: falls OAuth nötig, separat nach Microsoft-Vorgaben festlegen
- Client ID: aus App Registration
- Client Secret: nur in Vaultwarden, nie in Git oder Chat
- Bot Framework Secret: nur in Vaultwarden
Permissions¶
Minimal starten:
- Teams Bot Messaging
- Benutzeridentität/Graph nur wenn fachlich nötig
- keine breit gefassten Admin-Scopes
- kein Exchange/Intune/AD-Write ohne separate Governance
Vaultwarden Einträge¶
Vor Live-Betrieb vorbereiten:
Lanstyle / Hermes Teams App RegistrationLanstyle / Hermes Bot Framework SecretLanstyle / Hermes Service TokenLanstyle / Hermes OpenWebUI Integration Secret
Manuelle Schritte¶
- Azure App Registration anlegen oder freigeben.
- Bot Messaging Endpoint setzen.
- Consent manuell durch berechtigten Admin durchführen.
- Secret in Vaultwarden ablegen.
- Hermes Health und Teams Webhook validieren.
- Audit prüfen.
Für Voice-Kontext muss Teams später zusätzlich übertragen:
user_idtenant_idconversation_iddevice_idoder Channel-ID- Rollen-/Scope-Information
Teams darf keine Voice-/Hermes-Secrets im Chat anzeigen.
Der Teams Bot soll spaeter immer den Gateway ansprechen. Der Gateway routet dann an den Nous Hermes Core und schreibt Audit. Direkter Teams-Zugriff auf den Core ist nicht vorgesehen.
Stop-Kriterien¶
- Secret würde in Chat, Logs oder Doku landen.
- Benutzerkontext kann nicht sicher validiert werden.
- Kein separater Public-FQDN oder NPM-Proxy fuer Hermes freigegeben.
- Bot verlangt zu breite Graph-/Tenant-Rechte.