2026 OpenClaw Eingangs-Governance in der Praxis: Slack/Discord-DM-Pairing (pairing) & groupPolicy-Whitelist auf physischem Fern-Mac – reproduzierbares Runbook: keine Antwort, abgelaufenes Pairing & Modell-Overrides pro Konversation (openclaw.json + FAQ)
Betriebsteams, die OpenClaw auf einem ZoneMac-physischen Fern-Mac fahren, brauchen Slack und Discord in derselben Eingangs-Governance: privates DM-Pairing zur Bindung der Nutzeridentität, groupPolicy für Mehrpersonen-Räume und explizite Modell-Overrides pro Kanal bzw. DM für Kosten- und Latenzkontrolle. Diese Anleitung richtet sich an Admins, die keine sichtbare Antwort erhalten, in abgelaufenes Pairing geraten oder in einem Thread das falsche Modell sehen. Sie umfasst eine Entscheidungsmatrix, kopierfähige openclaw.json-Struktur, ein Sieben-Schritte-Runbook, zitierfähige Prüfpunkte und FAQ. Zum Mehrkanal-Health-Check siehe
OpenClaw Mehrkanal-Gateway: doctor, Health-Probes & Hot-Reload-Runbook (2026) und für kontinuierliche Sichtbarkeit
OpenClaw-Gateway: Prometheus & Grafana auf physischem Fern-Mac 7×24 (2026).
1. Einleitung & Umfang
DM-Pairing (Pairing-Code-Flow) legt fest, welcher Mensch privat mit dem Agenten sprechen darf, bevor kostspielige Tools oder Secrets im Spiel sind. groupPolicy ist die Whitelist-Ebene für geteilte Räume—nur gelistete Kanal-, Thread- oder Gruppen-Ids dürfen Tools oder teure Modelle nutzen. Auf einem headlosen physischen Mac wirkt das so: Chats funktionieren für Nutzer, OpenClaw antwortet aber nicht—häufig Signatur-/URL-Mismatch, unvollständiges OAuth oder Pairing, fehlende Intents bzw. Event-Abos oder ein Policy-Block (einschließlich Modell-Routing).
Der Artikel setzt voraus, dass Sie per SSH auf den Knoten zugreifen und openclaw.json mit Backups bearbeiten können. Für dauerhafte Beobachtbarkeit desselben Gateways eignen sich /metrics—siehe den verlinkten Prometheus-Runbook-Beitrag.
2. Schmerzpunkte (warum „passiert nichts“)
- Zustellung im Chat als „Beweis“ werten. Anbieter können einen Webhook akzeptieren, 200 zurückgeben, und Ihre App trotzdem nicht erreichen, wenn das Signing-Secret falsch ist oder ein doppelter Endpunkt Ereignisse stiehlt. Sie brauchen verifizierbares HMAC bzw. Äquivalent plus genau einen aktiven App-URL am öffentlichen Edge.
- DMs ohne abgeschlossenes Pairing vertrauen. DM-Pairing koppelt
user id↔ interne Policy-Subjekt-ID. Lief Pairing ab, war nie fertig oder ungültig der Bot in einem neu installierten Workspace, ist Drop bzw. No-Op die korrekte Reaktion. - Gruppen-Allowlist und Modell-Matrix getrennt denken. Ein Kanal kann fürs Sprechen erlaubt sein, während eine striktere Modell-Regel den Verkehr auf ein günstigeres Profil routet—dann erscheint kein harter Deny, sondern das „falsche“ Modell. Lösung: klare Vorrangfolge und Override-Tabelle pro Id.
3. Entscheidungsmatrix: Slack vs. Discord (Oberflächen)
Orientierung, wenn Sie Defaults für denselben Gateway auf physischem Fern-Mac wählen.
| Dimension | Slack | Discord |
|---|---|---|
| Identität & Unternehmensschutz | Ausgereiftes Workspace-App-Modell, auditfreundlich | Server-Modell; Intents & Berechtigungsbits müssen exakt stimmen |
| DM & Threads | Threads und App-Mentions in der Events-API klar | Thread-Ids abweichend; Gateway- & MESSAGE_CONTENT-Intents beobachten |
| Pairing / Bind-Workflow | Häufig Slash-Command oder DM-Code an OpenClaw | Häufig OAuth + DMs; user id (Snowflakes) respektieren |
| Typische Posture für ZoneMac | Passt zu Corporate auf Slack | Passt zu Community- / Entwickler-Gruppen |
4. openclaw.json-Fragmente (illustrativ)
Nur Struktur-Beispiel—Schlüssel und Verschachtelung müssen zu Ihrem konkreten OpenClaw-Build passen. In Produktion SecretRef bzw. Umgebungs-Indirektion, mit existierendem gateway-Block mergen, und vor dem Apply Backup.
4.1 Slack: Signing + DM-Pairing + groupPolicy
{
"channels": {
"slack": {
"enabled": true,
"appIdRef": "env:SLACK_APP_ID",
"clientIdRef": "env:SLACK_CLIENT_ID",
"clientSecretRef": "env:SLACK_CLIENT_SECRET",
"botTokenRef": "env:SLACK_BOT_TOKEN",
"signingSecretRef": "env:SLACK_SIGNING_SECRET",
"inbound": {
"urlPath": "/openclaw/slack/events",
"verifyRequestSigning": true
},
"dmPairing": {
"mode": "inline-code",
"codeTtlMinutes": 15,
"requireNewPairingOnWorkspaceReinstall": true
},
"groupPolicy": {
"default": "deny",
"allowChannelIds": ["C0123456789"],
"allowThreadOnlyChannelIds": []
},
"modelByConversation": {
"C0123456789": "anthropic:claude-3-5-sonnet",
"DMBIND:U0ABCDEF": "openai:gpt-4.1-mini"
}
}
}
}
4.2 Discord: Bot-Token + Intents + Allowlist
{
"channels": {
"discord": {
"enabled": true,
"botTokenRef": "env:DISCORD_BOT_TOKEN",
"applicationIdRef": "env:DISCORD_APP_ID",
"gateway": {
"intents": ["GUILDS", "GUILD_MESSAGES", "DIRECT_MESSAGES", "MESSAGE_CONTENT"]
},
"groupPolicy": {
"default": "deny",
"allowGuildIds": ["9876543210"],
"allowChannelIds": ["111122223333444455"]
},
"dmPairing": {
"mode": "dm-code",
"codeTtlMinutes": 15
}
}
}
}
codeTtlMinutes mit der Text-Hilfe an Nutzer abstimmen; bei Pairing abgelaufen zuerst Klarheit, dann TTL. modelByConversation an Ihr kanonisches Id-Format (Kanal, DM, Thread) binden; dieselbe Id nicht unterschiedlich schreiben. Für Router-Modell-Ketten statt pro-Chat-Overrides muss derselbe Upstream-Router und die Kanal-Policy nicht gegeneinander arbeiten—hier hilft ggf. OpenClaw Multi-Modell-Routing & Failover (2026).
5. Sieben-Schritte-Runbook (physischer Fern-Mac)
- Konfig einfrieren & Snapshot.
cp openclaw.json openclaw.json.bak.$(date +%Y%m%d%H%M); OpenClaw-Build-Id und App-Id im Ticket festhalten. - Öffentlichen Eingang zu diesem Mac beweisen. Vom Internet die Vendor-Challenge-URL; Reverse Proxy muss auf dieselbe Loopback-Bindung wie das Gateway (z. B.
127.0.0.1:18789). - Signing & Secrets abgleichen. Slack: Request-Signatur. Discord: Intents + Bot-Auth. Ein falsches Secret fühlt sich im Chat wie völlige Stille an.
- DM-Pairing vollenden oder erneuern. Frischen Code; wenn der Pair-Store auf der Platte liegt, zuerst sichern. Koppelung in Info-Logs oder lokaler Bindetabelle sichtbar machen.
- groupPolicy anziehen, dann testen (Deny → Allow). Neue Installs mit
default: denystarten; einen bekannten Kanal hinzufügen, provozieren, dann erweitern. - Modell-Override-Priorität prüfen. Gleichen Text in DM und Kanal: bei Bedarf unterschiedliche Upstream-Profile. Wenn nein, ist der Override-Key, nicht der Modellname, falsch.
- An Metriken + Audit übergeben. Allowlist, Pairing-TTL, Reverse-Proxy-vHost exportieren—für die nächste Rufbereitschaft nachvollziehbar, ohne Screenshot-Archäologie.
6. Triage: Stille, abgelaufenes Pairing, falsches Modell
| Symptom | Wahrscheinliche Ursache | Erste Maßnahme |
|---|---|---|
| Keine sichtbare Antwort | Falsche Signatur, URL-Pfad, groupPolicy-Deny; Bot nicht im Kanal | HMAC/Vendor-Verification prüfen, Bot re-invite, Kanal-Id vs. Allowlist; Gateway- & Proxy-4xx-Raten beobachten |
| „Pairing abgelaufen“ | TTL kürzer als der Mensch braucht; Uhr-Drift; wiederverwendeter Link | NTP auf dem Mac, neuen Code, UX-Text; TTL nur nach Bedrohungs-Review verlängern |
| Nachricht da, „falsches“ Modell / Tools | Key nicht die aufgelöste Konversations-Id; Router-Fallback verdeckt es | Aufgelöste Ids loggen und mit modelByConversation abgleichen; Router vs. Kanal-Policy entflechten |
7. Zitierfähige Kennzahlen & Checklistenpunkte
- Pairing-Code-TTL (Beispiel):
15Minuten in den Snippets—an SLO anpassen, immer gemeinsam mit der OpenClaw-Version protokollieren. - Default-Deny in groupPolicy:
default: "deny"als 2026-Baseline für jeden bot mit Werkzeugzugriff; Allowlists in kleinen Schritten erweitern. - Lokaler Listener: Gateway auf
127.0.0.1und TLS am Edge beendet: typisches ZoneMac-Muster SSH + Reverse Proxy, reduziert laterale Exposition am Host.
8. FAQ
F: DMs treffen die Plattform, OpenClaw schweigt—warum?
Meist Signatur-Drift, Event-Abo deckt Ihr tatsächliches Ereignis nicht ab, oder die DM ist unter groupPolicy nicht gekoppelt. Nach Secret-Rotation kann der Edge dem Vendor 200 senden, intern aber ablehnen—Roh-Body-Verification und Umgebung vergleichen.
F: Längere Pairing-TTL wegen vieler Nutzer in Zeitzonen—sinnvoll?
Manchmal, sicherer ist: klarer Text, Uhren-Check und Ein-Klick-Repairs. Längere TTLs verlängern das Fenster für versehentlichen oder bösartigen Code-Reuse.
F: Zwei Kanäle, gleiche Modell-Sicht—wo debuggen?
Nach Normalisierung durch den Adapter aufgelöste Konversations-Id ausgeben; Slack-Thread- vs. Kanal-Id und Discord-Thread-Id unterscheiden. Einen autoritativen Key-Namensraum in modelByConversation führen.
F: Discord-Intents ohne message content—geht das?
Für viele Agenten nein—MESSAGE_CONTENT (bzw. Manifest-Äquivalent) ist nötig, um Nutzertext sinnvoll zu verarbeiten. Nach Eingang per Policy ablehnen, nicht durch verhungern der Client-Fähigkeiten.
9. Fazit & warum der Mac (mini) in diesen Stack passt
Slack/Discord-Eingänge beim ersten Anlauf richtig zu machen, ist weniger Marketing als langweilige Reihenfolge: Signaturen prüfen, Pairing beweisen und groupPolicy vor Werkzeug-Ausbreitung sperren. Ein ZoneMac-physischen Fern-Mac—v. a. in Mac mini M4-Klasse—bietet: Apple-Silicon-Leerlaufleistung im Ein-Ziffern-Watt-Bereich, ein Unix-Stack, der openssh, launchd, Homebrew trägt, und wenig Abstürze im Desktop-Stack für 7×24-Dienste.
Sicherheit und Stabilität zählen für langlebige Webhooks: macOS bringt Gatekeeper, SIP und FileVault in einem integrierten Paket, das typische Windows-Utility-Hosts seltener bieten. Ein leises Metall-Gehäuse schlägt wackelige VMs, wenn Pairing-Codes und Whitelists um 3 Uhr morgens stimmen müssen.
Wer OpenClaw, Reverse Proxies und Observability dieses Runbooks hosten will, findet im Mac mini M4 einen sinnvollen Einstieg. Reservieren Sie über ZoneMac dedizierte physische Hardware und fahren Sie diesen Ablauf auf realem Rechner—dann bleiben Slack- und Discord-Eingänge nachvollziehbar, auditierbar und policy-konform.
Physischer Fern-Mac für OpenClaw-Slack/Discord-Eingang?
ZoneMac bietet stabile macOS-Ziele für openclaw.json, Reverse Proxy und Signing-Secrets auf einem Knoten—dieses Runbook ohne Kompromisse.