Zum Inhalt springen

Kanäle — Überblick

Wozu das da ist. Über Kanäle schreiben Menschen außerhalb dieser Maschine einem EYAS-Agenten: Telegram, Slack, E-Mail und der Rest des Katalogs. Jede Instanz hat eigene Secrets und einen gebundenen Agenten. Das ist nicht Verbindungen (Odoo, GitHub, MCP-Inventar) und nicht Hände (ein lokales Gerät, das OS-/CLI-Werkzeuge anbietet). MCP und A2A sind Integrationen anderer Art und haben eigene Seiten.

Route: /communication → Tabs Kanäle · Eingangswarteschlange · Kopplung. Untertitel: Messaging-Kanäle verbinden und dem Primary-Agenten zuweisen.

  • Du willst von Telegram (oder einem anderen Katalogtyp) aus mit deinem Primary-Agenten sprechen, ohne die Web-UI zu öffnen.
  • Du betreibst zwei Bots desselben Typs (Arbeit + privat) und brauchst eine zweite Instanz.
  • Eingehende Nachrichten hängen, und du brauchst die dauerhafte Warteschlange (eine tot-Zeile erneut versuchen).
  • Eine Telegram-DM wartet auf einen Kopplungscode.
  1. Kommunikation (/communication) im Tab Kanäle öffnen.
  2. Eine Katalogkarte aufklappen oder Instanz hinzufügen für ein weiteres Konto desselben Typs.
  3. Die Secrets einfügen, Agent für eingehende Nachrichten wählen, Speichern & verbinden drücken.
  4. Autonom (unbeaufsichtigt, weiterhin von der Autonomie-Leiter geprüft) oder Verwaltet (Security-Gate bei jedem Tool-Aufruf) wählen.
  5. Für Telegram-DMs: dem Bot schreiben, dann den Code unter Kopplung freigeben. Die Eingangswarteschlange beobachten, wenn Zustellungen scheitern.

Du kannst mehrere Konten desselben Typs betreiben (z. B. zwei Telegram-Bots), jedes mit eigenen Zugangsdaten und eigenem Agenten. Nutze Instanz hinzufügen oder auf der Karte … -Instanz hinzufügen.

Das sind die Messaging-Typen, die EYAS anbietet. MCP / A2A sind keine Chat-Kanäle.

TypWas du verbindestKopplungExtra
TelegramHTTP-API-Token von BotFatherJa — unbekannte DMsErstklassig; siehe Telegram
DiscordBot-Token der AnwendungNeinBraucht discord.js zur Laufzeit
SlackBot-Token (xoxb-) + App-Level-Token (xapp-)NeinSocket Mode — kein öffentlicher Webhook
Email (SMTP/IMAP)SMTP (Pflicht) + optional IMAPNeinJedes Postfach
Gmail (API)OAuth-Client-ID/-Secret, Refresh-Token, PostfachNeinGmail API
Microsoft 365 (Graph)Tenant, Client-ID/-Secret, Postfach-UPNNeinGraph-App-Zugangsdaten
WhatsApp BusinessPhone-Number-ID, Access-Token, Verify-Token, App-SecretNeinWebhook /api/v1/webhooks/whatsapp
SignalBot-Nummer (E.164) + URL der signal-cli-HTTP-BridgeNeinEYAS bettet Signal nicht ein
Google ChatProjekt-/App-ID, optional Sende-Token und Standard-SpaceNeinWebhook /api/v1/channels/googlechat/webhook
Microsoft TeamsApp-ID, App-Passwort, optional TenantNeinWebhook /api/v1/channels/teams/webhook

Jede Karte klappt So richtest du es ein mit nummerierten Schritten vor dem Formular für die Zugangsdaten auf. Webhook-Typen zeigen außerdem Zu exposierende Webhook-Pfade.

FeldBedeutung
KanaltypVorlage aus dem Katalog
Anzeigenamez. B. Arbeit Signal, Privat Telegram
Erstellen & verbindenInstanz anlegen und Verbindungsablauf starten
Instanz löschenInstanz samt Zugangsdaten entfernen (mit Bestätigung)
StatusBedeutung
VerbundenAktive Verbindung
GetrenntNicht verbunden
Zugangsdaten gesetztSecrets gespeichert, eventuell ist Verbinden nötig
Nicht konfiguriertSecrets fehlen
FehlerLetzter Fehler
Zustand Konflikt / Authentifizierungsfehler / EingeschränktBetriebszustand
ModusBedeutung
AutonomLäuft unbeaufsichtigt; die Stufenautonomie-Leiter prüft weiterhin jede Aktion
VerwaltetDas Security-Gate steuert jeden Tool-Aufruf

Ein Klick wechselt den Modus (Tooltips erklären beide).

Eine Antwort in der internen Stimme des Besitzers bekommt denselben Abrufblock mit Datum und Uhrzeit wie ein Chat-Zug (siehe Speicher — Wie der Abruf das Modell erreicht). Eine Antwort mit Stimm-Scope Extern — Force External am Gespräch oder ein temporärer Override — bekommt nur Datum und Uhrzeit: Kein abgerufener Besitzer-Speicher geht an einen externen Leser. Kann EYAS den Stimm-Scope einer Antwort nicht bestimmen, geht auch sie ohne abgerufenen Speicher raus. Die Speicher-Werkzeuge sind unverändert und stehen weiter unter dem Security-Gate.

Die Tools-Liste des gebundenen Agenten gilt für Kanal-Antworten wie auf jedem anderen Pfad, plus memory_search und memory_expand (Konfigurieren — Tools). Was Kanal-Absender schreiben, wird als Peer-Text gespeichert, nicht als deiner.

Speichererfassung bei Kanal-Antworten. Jede Kanal-Antwort führt jetzt auch EYAS’ Erfassung dauerhafter Erinnerungen aus, unter denselben memory.capture.*-Einstellungen wie ein Chat-Zug. Die Nachricht des Absenders wird als Worte eines Dritten gelesen: Sie kann nie eine Notiz darüber anlegen, wer du bist, oder eine Regel dafür, wie EYAS arbeiten soll; sie kann nur Notizen der Art reference, project oder domain erzeugen, die trust: peer tragen und mit Peer-Vertrauen gespeichert werden, und eine solche Notiz ergänzt nie eine deiner eigenen Notizen. Die Längenprüfung zählt nur die Worte des Absenders, ein kurzes „ok“ kostet also keinen Modellaufruf, und ein Kanal-Gespräch teilt sich eine Obergrenze maxPerConversation über alle seine Nachrichten. Siehe Speicher — Capture ist standardmäßig an.

Modell und Effort. Ein Kanal-Gespräch folgt dem Modell des gebundenen Agenten; hat der Agent keines, wird der Installations-Default mit der ersten Antwort am Gespräch festgelegt. Auch der eigene Reasoning-Effort des Agenten gilt. Jede Kanal-Antwort hält Anbieter und Modell fest, die geantwortet haben, und den Effort, mit dem sie lief.

Ein Kanal gilt immer als entferntes Ziel. Eine eingehende Nachricht mit einem Wert, den die Datenschutzrichtlinie auf Blockieren setzt — standardmäßig IBAN, Kontonummer, Steuernummer, Personalausweisnummer, Kartennummer oder US-Sozialversicherungsnummer, plus jedes eigene Muster auf Blockieren —, wird abgelehnt, bevor irgendetwas gespeichert wird:

  • Der Absender bekommt eine automatische Antwort in der Sprache, in der er geschrieben hat (Englisch, Ungarisch, Deutsch, Spanisch, Französisch oder Klingonisch; Englisch, wenn unklar). Sie nennt die Typen, nie die Werte, und bittet darum, die Nachricht ohne diese Werte erneut zu senden.
  • Es entsteht kein Gespräch, keine Nachricht und kein Agentenlauf. In der Eingangswarteschlange zeigt das Ereignis den Status übersprungen mit dem Fehler privacy_blocked, und nur sein maskierter Text bleibt erhalten. Scheitert das Senden des Hinweises, wird das Ereignis wie jede Zustellung erneut versucht.
  • Nachrichten, die vor einer Änderung der Richtlinie schon gespeichert waren, werden nachträglich nicht abgelehnt. E-Mail-Adressen und Telefonnummern (Klasse Maskieren) und Werte der Klasse Warnen werden nie abgelehnt.

Jede Ablehnung wird als privacy.inbound_refused auditiert (Typen und die ID des eingehenden Ereignisses, nie ein Wert). Siehe Sicherheit & Datenschutz — Abgelehnte Nachrichten.

FeldBedeutung
Secret-FelderJe nach Kanal (siehe Karte bzw. Kapitel Telegram)
Leer lassen, um den aktuellen Wert zu behaltenPlatzhalter beim Bearbeiten
Kennzeichen gesetztSecret ist schon gespeichert
Agent für eingehende NachrichtenWelcher Agent antwortet; Standard ist der Primary-Assistent
— keiner (Nachricht gespeichert, keine Auto-Antwort) —Nur speichern
Gebundener AgentAktuell gebundener Agent
Speichern & verbindenSecrets speichern und verbinden
Test / Verbinden / Trennen / Erneut verbinden / KonfigurierenLebenszyklus-Aktionen

Dauerhafte At-least-once-Warteschlange für eingehende Kanalnachrichten. Fehlgeschlagene Zustellungen werden verzögert erneut versucht und landen schließlich im Dead-Letter; tot-Zeilen lassen sich erneut einreihen.

SpalteBedeutung
QuelleKanal-Instanz
AbsenderAbsender-ID / Name
NachrichtInhalt
VersucheZustellversuche
EmpfangenAlter (vor Ns / vor N Min. / vor N Std.)

Die Spalte Status zeigt ausstehend, zugestellt, tot oder übersprungen; der Grund einer gescheiterten oder übersprungenen Zeile steht unter der Nachricht (etwa privacy_blocked, siehe oben). Erneut versuchen an einer tot-Zeile reiht sie wieder ein; Aktualisieren lädt die Liste neu.

Unbekannte Absender bekommen einen Kopplungscode und warten hier. Eine Freigabe gibt dem Kanal Zugriff auf seinen gebundenen Agenten; Kopplungen überstehen Neustarts. Telegram ist der Katalogtyp mit supportsPairing.

SteuerungBedeutung
Kennzeichen PairingAuf der Kanalkarte, wenn Kopplung nötig ist
Freigeben / AblehnenEntscheidung über eine offene Anfrage
SpaltenQuelle, Absender, Code, Angefragt

Leer: Keine ausstehenden Kopplungsanfragen.