Wenn ich höre, dass jemand Claude Code nur zwei bis drei Stunden am Tag nutzt und sich über "verschwendete Kapazität" beschwert, denke ich: Wir reden über unterschiedliche Werkzeuge. Nicht weil Claude Code für verschiedene Menschen unterschiedlich funktioniert — sondern weil sich die Nutzungsmuster so fundamental unterscheiden, dass die gleiche Frage ("Wie nutze ich Claude Code unterwegs?") völlig andere Antworten braucht.

Yanli Liu hat kürzlich in einem Artikel auf Medium den Begriff "Desk Tax" geprägt: 20 Dollar im Monat, nur zwei bis drei Stunden Nutzung am Schreibtisch, 230 "idle Stunden" pro Monat. Das Bild eines Werkzeugs, das die meiste Zeit brachliegt. Für einen bestimmten Nutzertyp ist das eine valide Beobachtung. Für meinen Alltag beschreibt es eine andere Realität.

Ich gehöre zu den Nutzern, die Claude Code als primäres Arbeitswerkzeug einsetzen — den ganzen Arbeitstag, plus Freizeit. Nicht eine Instanz, sondern mehrere parallel. Nicht mit vorsichtigen Permission-Prompts, sondern im Bypass-Permissions-Modus, in dem der Agent autonom arbeitet. Für mich ist der Schreibtisch kein Engpass. Er ist der Standardzustand. Die echten Limits liegen woanders.

Dieser Artikel ist ein Erfahrungsbericht aus dieser Perspektive: Was funktioniert beim mobilen Zugriff wirklich, wo sind die echten Bruchstellen — und was würde ich mir stattdessen wünschen.

Mein Setup: Zwei Plans, mehrere Instanzen

Team Premium + Max-200

Ich habe einen Team Premium-Seat (100–150 $/Seat/Monat). Die Limits dort: 50–95 Stunden Sonnet pro Woche, 3–7 Stunden Opus pro Woche. Klingt viel — reicht aber nicht, wenn Claude Code das primäre Werkzeug ist und mehrere Instanzen parallel laufen.

Deshalb habe ich zusätzlich einen Max-200 Account (200 $/Monat). Der bietet 240–480 Stunden Sonnet pro Woche und 24–40 Stunden Opus pro Woche. Damit kann ich weiterarbeiten, wenn der Premium-Seat am Limit ist.

Bypass Permissions als Standard

Im Standard-Modus fragt Claude Code bei jeder Dateiänderung, jedem Bash-Befehl um Erlaubnis. Für einen einzelnen, beobachteten Task ist das vertretbar. Für autonomes Arbeiten mit mehreren Instanzen ist es ein Workflow-Killer — du kannst keine drei Terminals gleichzeitig im Auge behalten, um Permission-Prompts zu bestätigen.

Ich arbeite mit Bypass Permissions on — der Agent führt aus, ohne zu fragen. Das setzt Vertrauen in die eigenen CLAUDE.md-Konfigurationen und Allowlists voraus. Es bedeutet auch, dass ein falsch formulierter Prompt theoretisch Schaden anrichten kann. In der Praxis passiert das selten, weil die CLAUDE.md-Dateien klare Boundaries definieren. Aber es ist ein bewusster Trade-off: Autonomie gegen Kontrolle. Und dieser Trade-off wird relevant, wenn wir später über Channels und Permission Relay sprechen.

Parallele Instanzen

Nicht eine Claude-Code-Session, sondern mindestens zwei — oft mehr. Eine Instanz arbeitet an Feature A, eine andere reviewed Feature B. Blog-Artikel in einem Terminal, Code-Projekt in einem anderen, Dokumentation in einem dritten. Jede Instanz behält ihren eigenen Kontext und Zustand. Das ist kein seltenes Szenario — es ist mein Normalzustand.

Das ist der Punkt, an dem die "Desk Tax"-Rechnung nicht mehr aufgeht: Lius Rechnung setzt ein Nutzerprofil voraus, das abends nach dem Hauptjob noch ein paar Stunden am Terminal sitzt — mit einer einzigen Instanz, auf einem persönlichen $20-Account. Bei ganztägiger Nutzung mit parallelen Instanzen ist die Limitierung das Token-Budget, nicht die Verfügbarkeit am Schreibtisch. Es gibt keine idle Kapazität — eher das Gegenteil: Die Kapazität wird ausgeschöpft. Die echte "Tax" für Power-User sind Max-200-Limits, Context-Window-Grenzen und Token-Kosten.

Remote Control: Theorie vs. Praxis

Was funktioniert

Claude Codes Remote Control ist der offizielle Weg, vom Smartphone auf eine laufende Session zuzugreifen. Das Konzept ist durchdacht:

  • QR-Code-Pairing ist elegant und schnell eingerichtet
  • Authentifiziertes Session-Modell mit Token-basierter Autorisierung
  • Schneller Zugriff auf laufende Sessions von unterwegs

Die Idee: Du startest eine Aufgabe am Rechner, gehst zum Meeting, und reagierst vom Handy auf Rückfragen. Im besten Fall sparst du dir den Weg zurück zum Schreibtisch, nur um "ja, mach weiter" zu tippen. So die Theorie.

Der AskUserQuestion-Rendering-Bug

In der Praxis scheitert genau dieser Workflow an einem Bug, der seit Monaten offen ist und den ich ausführlich beschreiben will — nicht weil er technisch besonders interessant ist, sondern weil er exemplarisch zeigt, wie eine kleine Regression den gesamten Nutzen eines Features zunichte machen kann.

Das Symptom: In der Claude-App auf dem Smartphone rendert das AskUserQuestion-Tool manchmal nicht. Du siehst eine leere Ansicht mit "awaiting input"-Status, aber es gibt keine Interaktionsmöglichkeit. Claude wartet auf deine Antwort — du siehst das — aber du kannst nicht antworten. Die Session hängt, bis du zum Rechner zurückgehst und dort antwortest. Genau das Szenario, das Remote Control verhindern sollte.

Die Root Cause wurde von Community-Mitglied tfvchow auf GitHub analysiert und ist instruktiv: Es handelt sich um eine Regression seit v2.1.72. Im Code gibt es eine Funktion requiresUserInteraction(), die für bestimmte Tools — darunter AskUserQuestion und ExitPlanMode — true zurückgibt. Das Flag bedeutet eigentlich: "Dieses Tool braucht User-Input." Im REPL-Bridge-Pfad wird es aber fälschlich als "nicht an Remote weiterleiten" interpretiert:

// Vereinfachte Darstellung der Root Cause (tfvchow-Analyse)
// requiresUserInteraction() gibt true zurück für AskUserQuestion
// → REPL-Bridge interpretiert das als "lokal halten"
// → Remote Control sieht den Prompt nicht
// Betroffen: AskUserQuestion, ExitPlanMode

Das Ironische: Genau die Tools, die requiresUserInteraction() als true markiert — also die Tools, die User-Input brauchen — werden nicht an Remote Control weitergeleitet. Die Flagge, die sagt "hier muss ein Mensch ran", verhindert, dass der Mensch am Smartphone rankommt. Ein klassischer Fall von semantischer Verwechslung, der durch die Regression in v2.1.72 eingeführt wurde.

Status und Workarounds

Der Bug ist offen und nicht gefixt (Stand 24. März 2026). Drei verwandte GitHub Issues dokumentieren das Problem aus verschiedenen Perspektiven:

  • #33625 — Haupt-Tracker: UI fehlt komplett
  • #35125 — Rendert als Raw-Text statt als interaktives Element (Duplikat)
  • #28991 — Text-Truncation auf iOS (verwandtes Rendering-Problem)

Workarounds, keiner davon befriedigend: - App komplett schließen und neu starten — funktioniert manchmal, verliert den Scroll-Kontext - Am Terminal direkt antworten — was den Remote-Zugriff ad absurdum führt, denn dann hättest du Remote Control gar nicht gebraucht - Downgrade auf v2.1.71 (vor der Regression) — verliert alle neueren Features und Fixes

In der Praxis bedeutet das: Ich verlasse mich nicht auf Remote Control für Workflows, die AskUserQuestion nutzen. Und da meine Claude-Code-Sessions regelmässig AskUserQuestion verwenden — etwa wenn Claude bei Architekturentscheidungen nachfragt oder Optionen zur Wahl stellt — ist Remote Control für mich kein zuverlässiges Werkzeug. Es funktioniert für das passive Beobachten einer Session. Für die Interaktion, die den eigentlichen Wert ausmacht, ist es kaputt.

Channels: Sicherheitsmodell unter der Lupe

Seit Version 2.1.80 (20. März 2026) bietet Claude Code mit Channels einen zweiten Weg für mobilen Zugriff — über Telegram, Discord oder iMessage. Noch als "Research Preview" gekennzeichnet.

Wie die Authentifizierung funktioniert

Channels nutzen eine Sender-Allowlist mit Pairing-Codes:

  1. User schickt eine DM an den Bot
  2. Bot antwortet mit einem Pairing-Code
  3. User bestätigt im Terminal: /<platform>:access pair <code>
  4. Allowlist-Policy wird gesetzt

Ein wichtiges Detail aus der Dokumentation: Channels gaten auf message.from.id (Sender), nicht auf message.chat.id (Raum). In Gruppenchats sind diese unterschiedlich — ein Gating-Fehler hier öffnet den Zugriff für alle Gruppenmitglieder.

Der Bot-Token wird lokal gespeichert (~/.claude/channels/<platform>/.env). Anthropic behandelt ihn wie einen SSH-Key — der Schutz liegt allein beim User. Nur Plugins von Anthropics geprüfter Allowlist sind erlaubt; Custom-Channels erfordern das --dangerously-load-development-channels-Flag. Für Team/Enterprise ist die Funktion standardmäßig deaktiviert und erfordert Admin-Opt-in über channelsEnabled.

Die echten Sicherheitsrisiken

Das Problem ist nicht fehlende Authentifizierung. Das Problem ist, was nach erfolgreicher Authentifizierung möglich wird:

Permission Relay (ab v2.1.81+): Jeder auf der Allowlist kann Tool-Ausführungen — Bash, Write, Edit — remote genehmigen oder ablehnen. Das ist de facto Shell-Zugriff für jeden gepairten User.

Verschärfung bei Bypass Permissions: Wer wie ich im Bypass-Permissions-Modus arbeitet, hat ein anderes Problem. Permission Relay ist irrelevant, weil alle Operationen ohnehin auto-approved werden. Jede Nachricht von einem User auf der Allowlist wird direkt ausgeführt. Das ist die Kombination, die mir Sorgen macht: Bypass Permissions + Channels = uneingeschränkter Shell-Zugriff für jeden auf der Sender-Allowlist.

Prompt Injection: Die Dokumentation warnt explizit:

"An ungated channel is a prompt injection vector. Anyone who can reach your endpoint can put text in front of Claude."

Anthropic Channels Documentation

Bot-Token als Single Point of Failure: Wer den Token hat, kann sich auf die Allowlist setzen. Kein Zwei-Faktor, keine Biometrie — nur ein Token in einer .env-Datei. Anthropic vergleicht den Bot-Token mit einem SSH-Key, und das ist der richtige Vergleich: Wenn dein SSH-Key kompromittiert ist, hat jemand Zugriff auf deine Server. Wenn dein Channel-Bot-Token kompromittiert ist, hat jemand Zugriff auf deinen Code-Agenten mit Shell-Rechten.

Zur Einordnung: Das ist nicht dasselbe Problem wie bei OpenClaw (wo Schadcode über Skills eingeschleust werden konnte). Aber es ist ein verwandtes Risiko — eine offene Interaktionsschnittstelle zu einem Code-Agenten, bei der die Sicherheit von einem einzelnen Token abhängt.

Architektonischer Vergleich: RC vs. Channels

Remote ControlChannels
AuthQR-Code → Session-TokenPairing-Code → Sender-Allowlist
Permission RelayNein (AskUserQuestion-Bug)Ja, für Bash/Write/Edit
Prompt InjectionSession-gebunden, 1:1Gruppen möglich, Gating-Fehler denkbar
ProtokollProprietär, verschlüsseltPlattform-abhängig (Telegram/Discord API)
Offline-RisikoToken-Timeout (10 Min)Bot-Token persistent

Remote Control hat das bessere Sicherheitsmodell — Session-gebunden, verschlüsselt, 1:1. Channels tauschen Sicherheit gegen Flexibilität: Mehr Plattformen, mehr Möglichkeiten, aber auch mehr Angriffsfläche. Und der Fakt, dass Channels Chat-Tools als Proxy nutzen, ist architektonisch fragwürdig: Telegram und Discord sind Chat-Infrastruktur, keine Sicherheitsinfrastruktur.

Architekturdiagramm: Remote Control (Session-basiert, 1:1, verschlüsselt) vs. Channels (Relay über Chat-Plattformen, Allowlist-basiert)

Was ich mir wirklich wünsche

Die Frage "Wie nutze ich Claude Code mobil?" ist für mich die falsche Frage. Die richtige Frage ist: Was fehlt Claude Code, damit ich es am Schreibtisch effektiver nutzen kann?

Statt mobilem Zugriff

Bessere Batch-/Queue-Workflows. Das ist mein Nummer-Eins-Wunsch. Aufgaben einstellen, die nacheinander abgearbeitet werden. Nicht drei Terminals offen halten und manuell überwachen, weil ich drei Tasks parallel brauche — sondern eine Queue, die Claude autonom abarbeitet. Task 1 fertig, Ergebnis loggen, Task 2 starten. Am Ende ein Bericht: Was wurde erledigt, wo gab es Probleme, was braucht menschlichen Input. Das würde die Produktivität mehr steigern als jeder mobile Zugriff, weil ich Aufgaben delegieren könnte, ohne sie aktiv zu beobachten.

Granulareres Permission-Handling. Bypass Permissions ist ein Alles-oder-Nichts-Schalter. Was fehlt, ist die Mitte: Auto-Approve-Profile für vertrauenswürdige Operationen. "Git-Operationen ja, Netzwerk-Zugriff nein." Oder: "Dateien im Projektverzeichnis ja, alles außerhalb fragen." Oder sogar zeitbasiert: "Für die nächsten 30 Minuten alles auto-approven, dann zurück auf Standard." Das existiert teilweise mit --dangerously-skip-permissions, aber der Name sagt schon alles — es ist ein einziger, grober Schalter, kein feinkörniges System.

Session-Persistenz bei Netzwerkproblemen. Der 10-Minuten-Timeout bei Remote Control ist zu knapp. Wer im Zug sitzt und durch ein Funkloch fährt, verliert die Verbindung. Eine robustere Reconnect-Logik — mit lokaler Queue für ausstehende Interaktionen, die nach Reconnect synchronisiert werden — würde mehr bringen als jeder Chat-Bot-Proxy.

Multi-Instanz-Dashboard. Wenn ich fünf Claude-Code-Instanzen laufen habe, will ich auf einen Blick sehen: Welche arbeitet noch, welche wartet auf Input, welche ist fertig, welche hat einen Fehler. Aktuell heißt das: Fünf Terminal-Tabs durchklicken. Ein Dashboard — ob als Web-UI, als Terminal-Multiplexer-Integration oder als separates Tool — würde das drastisch vereinfachen.

Wenn mobile, dann richtig

Falls Anthropic wirklich eine mobile Lösung bauen will — und Lius Punkt, dass Session-Start vom Smartphone fehlt, ist hier valide — dann bitte richtig:

Authentifiziertes Pairing wie bei Remote Control. Das Session-Token-Modell von RC ist der richtige Ansatz: zeitlich begrenzt, Session-gebunden, verschlüsselt. Channels' Sender-Allowlist mit persistentem Bot-Token ist das falsche Modell für Sicherheit.

Permission-Bestätigung per Push-Notification + Biometrie. Stell dir vor: Claude braucht eine Bestätigung für eine Bash-Operation. Dein Smartphone vibriert. Du siehst eine Push-Notification mit dem konkreten Command. Face ID oder Fingerprint, und die Operation wird freigegeben. Kein Telegram-Bot, kein Chat-Interface — eine dedizierte Sicherheits-Interaktion. So wie Banking-Apps Transaktionen bestätigen.

Session-Start vom Smartphone. Remote Control kann aktuell nur auf laufende Sessions zugreifen. Aber manchmal willst du von unterwegs eine neue Aufgabe starten — nicht nur auf eine bestehende reagieren.

Kein Chat-Tool als Proxy. Telegram, Discord und iMessage sind Chat-Infrastruktur. Sie sind dafür gebaut, dass Menschen miteinander kommunizieren — nicht dafür, dass ein Mensch einen Code-Agenten mit Shell-Zugriff steuert. Die Sicherheitsmodelle dieser Plattformen sind für ihren Zweck angemessen, aber nicht für den Zugriff auf eine Maschine, auf der Code ausgeführt wird.

Tatsächlich nutze ich Remote Control genau so: Ich monitore und steuere meine laufenden Claude-Code-Sessions auf dem MacBook Pro über mein iPad — vom Sofa, aus der Küche, von wo auch immer. Das funktioniert, solange keine AskUserQuestion-Dialoge ins Leere laufen. Wenn es passiert, starte ich die App neu — der einzige verfügbare Workaround. Ich würde es deutlich öfter nutzen, wenn der Bug nicht wäre.

Plan-Vergleich: Max-200 vs. Team Premium

Für den Kontext, warum ich zwei Plans gleichzeitig nutze, hier der direkte Vergleich:

Team PremiumMax-200
Kosten100–150 $/Seat/Monat200 $/Monat
Sonnet/Woche50–95 Stunden240–480 Stunden
Opus/Woche3–7 Stunden24–40 Stunden
Typischer EngpassOpus-Budget Ende der WocheSelten am Limit

In der Praxis sieht das so aus: Unter der Woche arbeite ich primär über den Team Premium-Seat. Für komplexere Aufgaben, die Opus erfordern, oder wenn das Sonnet-Budget zur Wochenmitte knapp wird, wechsle ich auf Max-200. Am Wochenende und für private Projekte ausschließlich Max-200.

Das Team-Premium-Budget wird regelmäßig ausgereizt — nicht weil ich verschwenderisch bin, sondern weil parallele Instanzen und ganztägige Nutzung schnell an Limits stoßen. Der Max-200-Account ist die Absicherung, die dafür sorgt, dass ich nie wegen Budget-Limits aufhören muss.

Die "Desk Tax"-These setzt implizit voraus, dass man einen einzigen $20-Account hat und diesen nur abends nutzt. Bei meinem Setup ist das Gegenteil der Fall: Ich muss zwei Plans kombinieren, um genug Kapazität für meinen Arbeitstag zu haben.

Fazit

Die echten Limits von Claude Code sind nicht der Schreibtisch. Sie sind Token-Budgets, Context-Window-Grenzen und — ja — Bugs wie der AskUserQuestion-Rendering-Bug, der Remote Control in der Praxis unzuverlässig macht. Channels als Alternative sind architektonisch fragwürdig: Chat-Tools als Proxy für einen Code-Agenten mit Shell-Zugriff, bei dem die Kombination aus Permission Relay und Bypass Permissions jeden Security-Reviewer nervös machen sollte.

Was ich mir wünsche, ist nicht "Claude Code auf dem Handy." Es sind bessere Workflows am Schreibtisch: Batch-Queues, granulares Permission-Handling, ein Dashboard für parallele Instanzen. Werkzeuge, die die acht-plus Stunden, die ich bereits am Terminal sitze, produktiver machen. Und wenn Anthropic eine mobile Lösung baut, dann bitte als eigenständiges Produkt mit Push-Notifications und Biometrie — nicht als Telegram-Bot.

Am Anfang dieses Artikels habe ich gesagt, dass die Frage nach mobilem Zugriff für mich die falsche Frage ist. Das stimmt immer noch. Die "Desk Tax" existiert — aber nur für ein bestimmtes Nutzerprofil. Für Power-User ist die Rechnung eine andere: zwei Plans, parallele Instanzen, Token-Budgets als echte Begrenzung. Die richtige Frage lautet nicht "Wie komme ich vom Sofa an meine Claude-Code-Session?", sondern: "Wie mache ich die Zeit, die ich bereits am Schreibtisch verbringe, produktiver?" Die Antwort darauf hat wenig mit dem Smartphone zu tun — und viel mit den Werkzeugen, die Claude Code noch nicht hat.


Dieser Artikel erschien ursprünglich auf dem Mayflower Blog.