Claude ist ein Chat mehr.

aipager bringt deine Sitzungen von Claude Code nach Telegram, zwischen deine Familie, deine Freunde und dein Team. Es läuft auf deinem Computer.

Sichere Aufrufe laufen von allein; riskante warten auf deine Erlaubnis.

Eine Sitzung von Claude Code liegt auf deinem Laptop bereit, im Auto-Modus, in dem jede neue Sitzung startet.

$curl -fsSL aipager.run/install | sh

Linux & macOS · MIT · rund eine Minute

Berechtigungsmodi

Drei Modi. Du startest im Auto-Modus.

Jede Sitzung läuft in einem der drei Modi, pro Sitzung eingestellt und jederzeit mit /mode änderbar. Der Fragen-Modus hält vor jeder Aktion an. Der Auto-Modus, in dem jede neue Sitzung startet, lässt die Sicherheitsprüfung von Claude Code die sicheren Aufrufe durchlassen und die riskanten für dich anhalten. Der Vollzugriff-Modus führt alles ohne jede Prüfung aus. Ein Modus steuert nur die Berechtigungsanfragen von Claude Code, sonst nichts: In einer Gruppe wird ein Tool, das die Rolle eines Mitglieds nicht nutzen darf, trotzdem abgelehnt, egal, was der Modus sagt.

aipager
Bot
💬 Fragen-Modus/mode ask
Ich schaue mir zuerst den Cookie-Helper an.”
🔐 Read: der Cookie-Helper
src/auth/cookie.ts
🔐 api · Braucht deine Erlaubnis
✅ Erlauben❌ Ablehnen🟢 Immer erlauben⏹ Stoppen
✅ api · Erlaubt · Read: src/auth/cookie.ts

Jeder Aufruf wartet auf dich, auch das Lesen einer Datei.

aipager
Bot
🤖 Auto-ModusStandard
Der Test klickt, bevor das Session-Cookie gesetzt ist.”
✅Read: src/auth/cookie.ts
✅Bash: pnpm test e2e/login --trace on
🔐 Bash: Die neuesten Sessions auf staging ansehen
psql $STAGING_URL -c 'select id, …'
🔐 api · Braucht deine Erlaubnis
✅ Erlauben❌ Ablehnen🟢 Immer erlauben⏹ Stoppen

Das Lesen und der Testlauf gingen von allein durch. Ein Befehl gegen staging gehört zu den riskanten, also hat die Prüfung ihn angehalten.

aipager
Bot
🔓 Vollzugriff-Modus/mode full
/mode full
✅ api ist jetzt im 🔓 Vollzugriff-Modus.
fix den flaky Login-E2E-Test
▸ 4 Tools genutzt
Der Test klickt, bevor das Session-Cookie gesetzt ist. Er schläft 5 s und hofft.”
✅Edit: e2e/login.spec.ts
⏳Bash: pnpm test e2e/login --repeat 10
⏳ api · Arbeitet · 4:02 · Read ×2 · Bash ×3 · Edit ×1

Keine Prüfungen, keine Buttons. Nur die Antwort, wenn Claude fertig ist.

  • ✅ Erlauben · nur diesen einen Aufruf
  • ❌ Ablehnen · Claude blockiert den Aufruf
  • 🟢 Immer erlauben · fügt die Regel hinzu, die Claude anbietet, wenn es eine gibt
  • ⏹ Stoppen · unterbricht die Aufgabe, statt zu antworten
/mode

Zeigt einen Button für jeden anderen Modus; /mode ask, /mode auto und /mode full wechseln sofort. Neue Sitzungen starten im Auto-Modus, außer der Chat hat es unter /settings → Neue Sitzungen anders eingestellt.

Fragen-Modus ⇄ Auto-Modus, ohne Unterbrechung

Kein Neustart, auch während Claude arbeitet: aipager drückt Shift+Tab in der Sitzung, und die Karte zeigt den Wechsel an, bis Claude Code den neuen Modus bestätigt.

Der Vollzugriff-Modus braucht einen Neustart

Der Wechsel in den Vollzugriff-Modus oder aus ihm heraus startet die Sitzung neu; die Unterhaltung bleibt erhalten. Nur ein Admin kann eine Sitzung in diesem Modus starten oder eine laufende dorthin umschalten (oder du, in deinem eigenen privaten Chat mit dem Bot).

Fragen kommen trotzdem

Ein Modus steuert Berechtigungsanfragen, keine Entscheidungen: Wenn Claude dich etwas fragt, landen die Buttons in jedem Modus in deinem Chat.

Wo es sich abspielt

Drei Chats. Alles andere ist einfach dein Leben.

  • aipagerBot
    ⏳ api · Arbeitet · 3:14 · Read ×2 · Bash ×2
    Dein Chat mit Claude

    Ein Chat für alle deine Sitzungen. Pro Aufgabe eine Karte, die sich selbst aktualisiert, Anfragen, die du mit einem Tippen beantwortest, und eine angeheftete Leiste, die zeigt, was auf dich wartet. Eine normale Nachricht geht an die Sitzung, die in der Leiste steht; /web schickt die nächste woandershin, und danach gehen deine Nachrichten dorthin.

    /status/new/mode/stop/app/<sitzung> <nachricht>
  • BT
    backend-teamGruppe · Teambetrieb
    Sara: @aipagerbot /web lass den Login-E2E gegen staging laufen
    Die Gruppe deines Teams

    Steck den Bot in eine Gruppe, und alle auf der Liste der erlaubten Personen können ihn erwähnen. Jede Nachricht läuft mit der Rolle der Person, die sie schickt; ein Tool, das diese Rolle nicht nutzen darf, wird abgelehnt, bevor es läuft, und jede Entscheidung landet im Audit-Log, mit dem Namen der Person, die getippt hat.

    owneradminuserread_only
  • J
    Jimeigener Chat mit dem Bot
    🔐 web · Braucht deine Erlaubnis
    Jemand anderes, im eigenen Chat

    Nimm den privaten Chat eines Teammitglieds mit dem Bot dazu: Das Mitglied steuert seine eigenen Sitzungen, mit eigener Rolle und eigenem Stammordner: Claude arbeitet für das Mitglied in diesem Ordner und liest nichts in deinem Home-Ordner außerhalb davon. Wer nur zuschauen soll, bekommt in deiner Gruppe read_only.

    Stammordner der Mitglieder~/aipager-users/<label>read_only/new

Vier Rollen und pro Rolle eine Tool-Regel.

Es zählt die Rolle, die du in dem Chat hast, in dem du gerade bist. Ein Tool, das eine Rolle nicht nutzen darf, wird abgelehnt, bevor es läuft, ohne Nachfrage. Nichts in Telegram und nichts in der Mini App ändert, wer auf der Liste der erlaubten Personen steht: nur aipager config, auf dem Computer.

Darfowneradminuserread_only
Nachrichten an eine Sitzung schicken✓✓✓✕
Erlauben, Ablehnen, Claudes Fragen beantworten✓✓✓✕
Bash und alles andere, was Code ausführt✓✓✕✕
Vollzugriff-Modus, die /settings einer Gruppe, /update✓✓im eigenen Chat✕
Wo ihre Sitzungen arbeiten dürfenüberallüberallim Stammordnerim Stammordner
Dateien mit Anmeldedaten lesen (~/.ssh, …)✓✓✕✕
Teambetrieb im Detail →
Im Alltag

Nutz es wie einen Chat.

Keine Konsole mit Chat-Anstrich: Alles, was du in Telegram sowieso machst, geht auch hier. Sprich auf dem Heimweg eine Sprachnachricht ein, wirf den Screenshot rein, schreib den nächsten Gedanken, bevor der letzte fertig ist.

  • 🎙️
    Sag es einfach

    Schick eine Sprachnachricht: aipager wandelt sie auf deinem eigenen Computer in Text um (nie in irgendeiner Cloud), schickt dir zurück, was es verstanden hat, und tippt sie in die Sitzung, als hättest du sie geschrieben.

    0:07
    🎙️ Gehört: fix den flaky Login-E2E-Test
  • 📎
    Ein Screenshot vom Bug

    Fotos und Dateien landen in einem Ordner auf deinem Computer, und Claude bekommt den Pfad, mit deiner Bildunterschrift als Nachricht oder mit „check this: …“, wenn du keine geschrieben hast. Schick mehrere auf einmal, und sie gehen als eine Nachricht raus.

  • 📤
    Es schickt dir Dateien

    Bitte in deinen eigenen Worten darum, „schick mir den Screenshot“, und die Datei kommt direkt nach der Antwort in den Chat dieser Sitzung: Bilder als Fotos, Videos und Audio als das, was sie sind, alles andere als Datei, mehrere auf einmal als ein Album. Nie die Einstellungen von aipager, die Zugangsdaten von Claude oder deine Schlüssel: Die werden abgelehnt, bevor irgendetwas gesendet wird.

    schick mir den Screenshot
  • 👀
    Schick die nächste sofort

    Deine Nachricht geht in dem Moment an Claude, in dem du sie sendest, auch mitten in einer Aufgabe: 👀, solange Claudes eigene Warteschlange sie hält, 👍, wenn Claude sie annimmt. „⚡ Jetzt senden“ gibt sie weiter, ohne das Ende des Schritts abzuwarten.

  • ⏸
    Nie als Antwort gelesen

    Eine Nachricht, die du schickst, während eine Berechtigungsanfrage offen ist, wird zurückgehalten, statt als Antwort auf die Anfrage zu zählen, und geht an die Sitzung, sobald du die Anfrage beantwortet hast.

  • 🤖
    Agenten und Hintergrundbefehle, mitgezählt

    Jeder Hintergrund-Agent, den Claude startet, bekommt eine eigene Zeile auf der Karte mit dem, was er gerade tut, und ein Befehl, der im Hintergrund weiterläuft, zeigt seine eigene Uhr, bis er endet.

  • 🔔
    Es sagt dir Bescheid

    Eine Warnung zum Kontext, eine Komprimierung, eine Sitzung, die beendet ist oder nichts mehr meldet, eine Aufgabe, die ungewöhnlich lange läuft: Der Chat sagt es dir, ohne dass du nachsehen musst.

  • ⌨️
    Die Buttons sind schon da

    Unter dem Eingabefeld liegt eine Tastatur: ein Button pro laufender Sitzung, dann Status, Stop und Neu…, dann Vorlagen › für die Nachrichten, die du immer wieder tippst, und Befehle › für alles, was Claude Code selbst erledigt.

  • 📋
    /status, der ganze Chat auf einmal

    Alle Sitzungen in einer Liste, die du direkt bedienen kannst: was jede gerade tut, ihr Modell, wie viel Kontext noch bleibt, was sie gekostet hat, was in ihrer Warteschlange steht, mit „Stoppen“, „Antworten“ und dem Rest des Menüs bei jeder einzelnen.

Die Mini App

Ein Dashboard, ohne Telegram zu verlassen.

/app zeigt alle Sitzungen auf einmal: eine Kachel pro Sitzung, mit ihrem Kontext-Ring, ihrem Ordner, ihrem Modell und dem, was sie gekostet hat. Du antwortest weiter im Chat; die App ist für den Überblick über alle da und für das, was im Chat umständlich ist, etwa Änderungen (diff) lesen oder eine Einstellung ändern.

aipager⋮
aipager
@aipagerbot · v1.3.8 · läuft seit 141 Min.
1 braucht dich, 2 arbeiten, 1 bereit
$4.19 ausgegeben · 12 beendet
Brauchen dich
@aipagerbot
Alle Sitzungen auf einem Bildschirm

Eine Kachel pro Sitzung, mit Kontext-Ring, wem sie gehört, Modell und Kosten. Darüber eine Zeile, die sagt, wie es im Chat steht: was arbeitet, was bereit ist, was der Tag gekostet hat, wie viele beendet sind. Mit dem + startest du eine weitere: ein Name, einer der Ordner, die du schon nutzt, ein Modell.

Was auf dich wartet, steht oben

Eine Sitzung, die auf deine Antwort zu einer Berechtigungsanfrage oder Frage wartet, steht ganz oben, mit dem, was sie fragt. „Im Chat antworten“ schickt die Anfrage samt Buttons wieder ans Ende des Chats, und du beantwortest sie dort.

Eine Seite pro Sitzung

Oben der Zustand, „Arbeitet (3:12)“ oder „Bereit, zuletzt aktiv vor 5 Min.“, und mit einem Tippen „Stoppen“ oder „Fortsetzen“. Darunter die zuletzt genutzten Tools, die letzte Antwort, die Modellauswahl, die Dateien, die Claude in dieser Aufgabe geändert hat, als Änderungen (diff), und die eigenen Einstellungen dieser Sitzung.

aipager liefert die App selbst aus

Sie ist standardmäßig an, jede Anfrage an die App wird anhand der Signatur von Telegram geprüft, und die Seite lädt nichts von anderswo: keine Schriften, keine Skripte. aipager miniapp disable schaltet sie aus.

Was die App kann →
Fünfzehn Sprachen

In deiner Sprache, bis hin zu den Ziffern.

Nur die eigenen Wörter von aipager ändern sich: Karten, Anfragen, Buttons, die angeheftete Leiste, /status, die Mini App, die Docs. Deine Sitzungen nicht: Claude antwortet in der Sprache, in der du schreibst, und was aipager an Claude schickt, bleibt, wie es war. Wähl eine mit /language oder lass aipager die Sprache deiner Telegram-App übernehmen.

Von rechts nach links, und zwar richtig

Persisch und Arabisch laufen von rechts nach links, mit persischen (۰-۹) oder arabisch-indischen (٠-٩) Ziffern und eigenen Trennzeichen, in Telegram und in der Mini App. Sitzungsnamen, Pfade, Befehle und Code behalten ihre eigene Richtung.

Geschrieben, nicht übersetzt

Jede Sprache ist so geschrieben, wie die Leute, die ihre Apps in dieser Sprache nutzen, wirklich reden, Lehnwörter inklusive, und mit ihren eigenen Pluralformen (Arabisch hat sechs).

Dein Chat, deine Sprache

Ein privater Chat kann die Sprache deiner Telegram-App übernehmen. Eine Gruppe hat eine Sprache, die ein Admin festlegt, und ein Hinweis nach einem Tippen erscheint in der Sprache der Person, die getippt hat.

Die Docs auch

Die README und jede Seite unter docs/ sind übersetzt. Wenn eine Übersetzung und die englische Seite voneinander abweichen, gilt die englische Fassung.

aipager
Bot
فارسی
Angeheftete Nachricht
‏⏳ ⁨api⁩ منتظر شماست‏ - ‏⁨Bash: pnpm test e2e/login⁩‏
‏🔐 ⁨api⁩ · اجازه می‌خواهد‏
pnpm test e2e/login --trace on
‏✅ اجازه بده‏‏❌ رد کن‏‏🟢 همیشه اجازه بده‏‏⏹ توقف‏
‏⁨✅⁩ ⁨api⁩ · ⁨‏اجازه داده شد‏⁩ · ⁨Bash: pnpm test e2e/login⁩‏
‏⁨⏳⁩ ⁨api⁩ · ⁨‏در حال تأمل‏⁩‏ · ۳:۱۴ · Read ×۲ · Bash ×۱
‏✅ کار ۲ ایجنت تمام شد (⁨۶:۱۲⁩)‏
‏🌐 زبان: ⁨فارسی⁩‏
Unter dem Chat

Maßgeblich bleibt das Terminal.

Claude Code läuft in einem echten Terminal, in dtach, also muss niemand ein Fenster offen halten. Jeder Schritt löst einen Hook aus, der ein Datagramm über einen lokalen Socket an aipager schickt, und aipager bearbeitet eine Nachricht in deinem Chat. Deine Antworten gehen denselben Weg zurück: eine Entscheidung an den Hook, der den Aufruf hält, oder Tastenanschläge in die Sitzung.

  1. Claude Code
    in dtach, kein Fenster nötig
  2. Hook
    löst bei jedem Schritt aus
  3. aipager
    ein Prozess, unter deinem Benutzer
  4. Telegram
    dein eigener Bot-Token
  5. deine Chats
    dein privater Chat, die Gruppe deines Teams
Setz dich jederzeit davor

aipager session api verbindet dich aus jedem Terminal mit der laufenden Sitzung. Tipp dort, tipp im Chat: dieselbe Sitzung. Schließ das Fenster, und sie läuft weiter; die Verbindung folgt der Sitzung sogar durch einen Neustart.

Es liest nie deinen Bildschirm

aipager tippt in die Sitzung und hört auf die eigenen Ereignisse von Claude Code. Was dein Chat zeigt, kommt aus den Hooks und der gespeicherten Unterhaltung, nicht aus dem Auslesen eines Terminals.

Nichts wartet auf den Chat

Ein Hook schickt ein Datagramm und ist fertig; das kostet Claude Code etwa 20 ms. Hört aipager gerade nicht zu, fällt das Ereignis einfach weg und Claude macht weiter; aipager holt später aus den eigenen Dateien der Sitzung nach, was gefehlt hat.

Sechzehn Hooks, dazu die Statuszeile, die Modell, Kontext und Kosten liefert. aipager ist an jeden einzelnen davon angeschlossen.
UserPromptSubmitPreToolUsePermissionRequestPostToolUsePostToolUseFailureNotificationStopStopFailureSubagentStartSubagentStopPreCompactPostCompactMessageDisplayPreModelSwitchSessionStartSessionEndstatusline
Sicherheit

Nichts dazwischen.

aipager spricht nie mit Anthropic. Das tut nur Claude Code selbst, mit deinem eigenen Login, auf deinem eigenen Computer. aipager startet es in einem Terminal und hört auf die Hooks, die Claude Code veröffentlicht. Kein nachgebauter Endpunkt, kein Proxy, kein Konto außer deinem: Die Sitzung, die du vom Handy aus steuerst, ist dieselbe, die du an der Tastatur steuern würdest.

01
Kein aipager-Server.

aipager spricht mit der Telegram Bot API über deinen eigenen Bot-Token. Es gibt kein aipager-Konto und keinen aipager-Dienst, und zwischen deinem Handy und deinem Computer steht kein fremder Computer.

02
Nur deine Chats bekommen Antwort.

aipager antwortet nur in den Chats, die in deiner Konfiguration stehen. Fremde, die den Bot finden, bekommen nur eine Zeile, dass er nicht für sie eingerichtet ist; nichts, was sie schicken, erreicht eine Sitzung.

03
Kein offener Port.

aipager lauscht nur auf Loopback. Die Mini App geht über einen Cloudflare-Tunnel nach außen, wo jede Anfrage Telegrams Signatur tragen muss, und aipager miniapp disable schaltet sie aus.

04
Dein Token, deine Datei.

Der Bot-Token und die Chat-IDs liegen in ~/.config/aipager/aipager.yaml mit den Dateirechten 600. Sie kommen nicht ins Log von aipager und werden überall geschwärzt, wo sie doch in ein Log rutschen könnten.

05
Es holt sich nie mehr Rechte.

Kein sudo, kein setuid. Alles, was es schreibt, liegt in deinem Home-Ordner, in /tmp oder in seinem eigenen Socket-Ordner, und jeder Prozess, den es startet (claude, dtach, die Installer), läuft unter deinem Benutzer.

06
Claude Code entscheidet weiter.

In deiner settings.json steht, wofür nachgefragt werden muss. aipager reicht die Frage nur weiter; es entscheidet nie, was laufen darf, und ein Button aus einer fertigen Aufgabe ist veraltet und greift nicht in die Arbeit ein, die gerade läuft.

07
Zugang gibt es nur am Computer.

Mitglieder und Rollen ändern sich nur mit aipager config, auf dem Computer. Nichts in Telegram und nichts in der Mini App fügt eine Person hinzu oder erweitert eine Rolle.

08
Jede Antwort steht im Audit-Log.

Jedes Erlauben, jedes Ablehnen und jede Antwort wird an ~/.claude/aipager-audit.jsonl angehängt (nie überschrieben), in einer Gruppe mit dem Namen der Person, die getippt hat.

Das Sicherheitsmodell →
Installieren

Vier Zeilen. Ab in die Gespeicherten Nachrichten.

Tipp auf eine Zeile, um sie zu kopieren. Zwei Dinge vorher: ein eigener Bot von @BotFather (tipp dort auf „Starten“) und Claude Code, auf diesem Computer angemeldet. Der Assistent in Zeile zwei fragt den Rest ab.

Oder gib es dem Agenten, den du schon hast.

Leg den Bot-Token in eine Datei, die der Agent nie lesen muss, und gib Claude Code dann das hier:

Install aipager for me by following https://aipager.run/agent.md. My Telegram bot token is in ~/.config/aipager/bot-token and my Telegram user id is <your id>.

Die Anleitung, der er folgt →

Lieber dein Paketmanager? uv, pipx, Homebrew, Docker, Nix, das AUR und Snap. alle Wege zur Installation →

Gespeicherte Nachrichten
4 Nachrichten
FAQ

Frag einfach.

aipager
Bot
Was ist der Unterschied zu den Claude-Apps fürs Handy?
Die Apps von Claude sprechen mit dem gehosteten Assistenten von Anthropic. aipager spiegelt eine Sitzung von Claude Code, die auf deinem eigenen Computer läuft: dein Repo, deine Tools, deine Umgebung.

Hol Claude in deine Chats.

Dann mach das Terminal zu und genieß deinen Abend.

$curl -fsSL aipager.run/install | sh