Befehle
ZAPBIP_CONNECTION_URL enthält den Verbindungslink. connect und listen fragen danach, wenn er nicht gesetzt ist.
Was du brauchst
- Claude Code oder Codex, bereits mit zapbip verbunden.
- Mindestens eine frühere Sitzung in dem Ordner, in dem die KI arbeiten soll.
- Node 24 oder neuer.
- Deinen Verbindungslink, denselben Link
https://.../c/<secret>/mcp, den deine KI nutzt, um mit zapbip zu sprechen. Behandle ihn wie ein Passwort.
Starten
Öffne ein Terminal in dem Ordner, in dem du deine KI nutzt, und führe eines davon aus:ZAPBIP_CONNECTION_URL nicht, fragt der Connector nach dem Link. Er nimmt den Link nie als Argument, weil Argumente in deinem Shell-Verlauf und in der Prozessliste auftauchen.
Lass das Terminal offen. Der Connector gibt für jedes Ereignis eine Zeile aus und hält an, wenn du Ctrl+C drückst. Damit er ohne Terminal weiterläuft, siehe Im Hintergrund ausführen.
Was passiert, wenn du schreibst
- Du schreibst deiner KI in WhatsApp.
- Der Connector empfängt deine Nachricht und weckt die neueste Sitzung im Ordner.
- Die KI liest deine Nachricht und antwortet dir in WhatsApp.
- Treffen mehrere Nachrichten zusammen ein, werden sie nacheinander, der Reihe nach, bearbeitet.
Die Sitzung wählen
Standardmäßig nutzt der Connector die neueste Sitzung im Ordner. Hast du denselben Ordner in einem anderen Fenster geöffnet, kann ein Wecken zu dieser Unterhaltung hinzukommen. Um das zu vermeiden, hefte eine Sitzung an:Was die KI tun kann, wenn sie geweckt wird
Nur eines: dir eine Nachricht zurückschicken. Der Connector gibt der KI eine private Konfiguration, die nur zapbip enthält, sodass Werkzeuge deiner anderen MCP-Server für sie nicht verfügbar sind. Claude Code läuft außerdem ohne deine Einstellungsdateien und mit abgeschalteten integrierten Werkzeugen, und Codex läuft mit einer schreibgeschützten Sandbox und mit abgeschalteten anderen MCP-Servern, die es in deinen Codex-Konfigurationsdateien findet. Kann es eine dieser Dateien nicht lesen, weckt es Codex nicht und lässt die Nachricht ungelesen. Es lehnt auch ab, wenn eine verwaltete Codex-Datei einen Schlüssel außerhalb einer kurzen Liste harmloser setzt, wenn ein Profil Sandbox, Genehmigung, Werkzeuge oder Features (oder einen Schlüssel außerhalb dieser Liste) setzt, wenn eine Datei einen Schalter für die Websuche einschaltet oder wennzapbip irgendwo anders als in der config.toml deines Codex-Home-Ordners definiert ist. Die Websuche von Codex ist abgeschaltet. Für Codex bleiben send_message und eine schreibgeschützte Shell; Apps und Connectors deines Codex-Kontos werden nicht abgeschaltet, und die verwalteten macOS-Einstellungen com.openai.codex und die verwalteten Richtlinieneinstellungen von Claude Code gelten weiterhin. Deine Nachricht erreicht sie als Nachricht von dir, als verifiziert markiert. Eine Nachricht, die du von jemand anderem weitergeleitet hast, kommt als nicht verifiziert markiert an, mit einer Weiterleitungsmarke, und die KI behandelt sie nicht als deine Anweisung.
Hat die Codex-App die Unterhaltung bereits geöffnet, weigert sich Codex, sie fortzusetzen. Der Connector startet dann eine neue Sitzung im selben Ordner, die ohne die frühere Unterhaltung beginnt, und nutzt sie von da an.
Eine offene Sitzung zuhören lassen
connect weckt eine Sitzung, die geschlossen ist. Für eine Sitzung, die du gerade offen hast, kann Claude Code dich sofort hören, ohne Wecken und ohne Warten. Es gibt zwei Wege, und der erste ist der bessere.
Der Kanal ist die erste Wahl. Er ist ein kleines Programm, das Claude Code selbst startet, genauso wie jedes andere Werkzeug. Er legt jede Nachricht, die du in WhatsApp schreibst, direkt in die offene Sitzung, als Nachricht von dir, als verifiziert markiert (eine weitergeleitete Nachricht wird als nicht verifiziert markiert). Setze ZAPBIP_CONNECTION_URL in der Umgebung, in der Claude Code läuft, und Claude Code startet ihn mit:
ZAPBIP_CONNECTION_URL. Er nimmt keine Argumente.
Deklariere beide Server in der .mcp.json des Ordners, in dem du arbeitest. Der Kanal bringt deine Nachrichten herein; der zapbip-HTTP-Server unter einem anderen Schlüssel gibt der Sitzung das Werkzeug send_message, mit dem sie antwortet:
zapbip. Ohne ihn hört die Sitzung dich, hat aber keine Möglichkeit zu antworten. Starte dann Claude Code mit:
zapbip ist der Schlüssel des Kanalservers in der .mcp.json. Die Startzeile zeigt Channels (experimental). Claude Code bittet dich, den Entwicklungskanal und den MCP-Server des Projekts zu akzeptieren; akzeptiere beide.
Der Listener ist die Sicherung. Er gibt für jede Nachricht, die du schreibst, eine Zeile aus, und Claude Code beobachtet diese Zeilen mit seinem Monitor-Werkzeug. Jede Zeile weckt die offene Sitzung, und solange du schweigst, wird nichts verbraucht:
"sender":"owner", "verified" (true für deine eigene Nachricht, false für eine weitergeleitete), "forwarded" und dem Text. Eine Monitor-Beobachtung dauert bis zu 30 Minuten, deshalb startet die KI die Beobachtung jedes Mal neu, wenn eine endet. Andere Agents, die einen Hintergrundbefehl am Laufen halten und auf seine Ausgabe reagieren können, wie OpenClaw und Hermes, können npx zapbip@0.1.0 listen genauso nutzen.
Beide Programme bleiben offen und verbinden sich von selbst neu, wie connect. Beide markieren eine Nachricht erst als bearbeitet, nachdem sie sie weitergegeben haben, sodass eine Nachricht nie verloren geht und nie doppelt angezeigt wird. Ihre Protokolle gehen auf die Fehlerausgabe und tragen nie deine Nachrichten oder deinen Link.
So greifen die drei Wege ineinander: der Kanal für eine offene Sitzung, listen als seine Sicherung und connect für eine geschlossene.
Ein Connector pro Verbindung
Startest du einen zweiten Connector für dieselbe Verbindung, beendet der erste das Wecken, das er gerade ausführt, und hält an. Führe ihn jeweils auf einem Computer aus. Trifft eine Nachricht genau in dem Moment ein, in dem du wechselst, können beide Connectors deine KI für dieselbe Nachricht einmal wecken; zapbip stellt mindestens einmal zu, nie null Mal. Solange ein Connector angeschlossen ist, weckt zapbip deine KI über ihn. Schließt er, kehrt zapbip zu der Einstellung zurück, die du vorher hattest.Was er ausgibt
Jede Zeile ist JSON mit einer Zeit und einem Ereignis, etwawake_started und wake_finished. Die Zeilen tragen IDs, Arten, Ergebnisse und Zeiten. Sie tragen nie deine Nachrichten, die Antworten der KI oder deinen Verbindungslink.