Bevor du zum ersten Mal vom Rechner weggehst
Installation des Servers, Koppeln des Handys per QR-Code, direkte Verbindung gegen Relay und die erste Aufgabe für den Agenten. Schritt für Schritt.
Was du brauchst
- Ein Rechner mit macOS, Windows oder Ubuntu, auf dem das Projekt liegt, an dem du arbeiten willst.
- Node.js 20 oder neuer — darin läuft der Agent.
- Anthropic-API-Zugangsdaten in der Variable
ANTHROPIC_API_KEY, oder ein Claude-Abo, bei dem sich der Agent selbst anmeldet. - Ein Telefon mit der coden-App und einer Kamera, oder die coden-App in einem Fenster auf dem Computer.
Einen eigenen Server brauchst du nicht. Rendezvous und Relay, über die sich Telefon und Rechner finden, betreiben wir, und der Server kennt sie schon.
Der Client: Telefon oder Fenster auf dem Computer
Der Client ist die coden-App — die, über die du dem Agenten Arbeit gibst und sie verfolgst. Es ist eine App an zwei Orten:
- Telefon (iPhone und Android)
- Für die Momente, in denen du nicht am Rechner bist. Du gibst eine Aufgabe, genehmigst einen Befehl, liest die Dokumentation und klickst dich in der Vorschau durch die App, an der gearbeitet wird. Wenn der Agent fertig ist, kommt eine Benachrichtigung — auch bei geschlossener App.
- Fenster auf dem Computer
- Für die Momente am Schreibtisch. Dieselben Tabs, nur mit mehr Platz: der Dateibaum neben dem Dokument, offene Dateien in Tabs und die Unterhaltung daneben. Läuft der Server auf demselben Computer, liest das Fenster das Projekt direkt von der Festplatte und du bearbeitest darin auch Quelldateien. Und den Server startest du darin ohne Terminal.
Beides kann gleichzeitig verbunden sein: Eine am Schreibtisch begonnene Unterhaltung beendest du am Telefon und umgekehrt. Jedes Gerät wird separat mit dem Server gekoppelt.
Die Telefon-App lädst du aus dem App Store oder von Google Play. Die App für den Computer installiert der Installer zusammen mit dem Server.
1. Installiere den Server
Lade das Paket für dein System von der Downloadseite. Jedes System hat seinen eigenen Installer und alle tun dasselbe: sie legen den Befehl coden-server in den PATH, sodass du ihn dann von überall startest.
- macOS
- Doppelklick auf die .pkg und den Assistenten durchklicken. Das Paket ist signiert und notarisiert, Gatekeeper fragt also nicht.
- Windows
- Doppelklick auf die .msi und den Assistenten durchklicken. Öffne nach der Installation ein neues Kommandozeilenfenster — in das alte kommt die Änderung des PATH nicht.
- Ubuntu und Debian
- Ein Doppelklick auf die .deb öffnet sie im Systeminstaller. Vom Terminal aus ist es
sudo apt install ./coden_*.deb.
$ coden-server --version
Wird der Befehl nicht gefunden, öffne ein neues Terminal. In die schon laufenden gelangt der PATH nicht.
2. Server über dem Projekt starten
Der Server bedient ein Verzeichnis. Das, das du ihm übergibst, ist genau das, in dem der Agent arbeiten und Befehle ausführen wird. Nichts über das Projekt wird irgendwo außerhalb davon gespeichert.
$ cd ~/projekty/muj-projekt
$ coden-server start
Ohne weitere Schalter bedient der Server das Verzeichnis, in dem du ihn gestartet hast. Ein anderes gibst du mit --dir:
$ coden-server start --dir ~/projekty/jiny-projekt
Der Server bleibt im Vordergrund und schreibt, was passiert. Lass das Fenster offen — es ist die einzige Stelle, an der du siehst, dass sich jemand verbunden hat.
Mehr Projekte heißt mehr Server, jeder in seinem Fenster. In der App wechselst du dann zwischen ihnen, und jeder führt seine eigenen Konversationen, Tests und Historie.
Auf dem Computer auch ohne Terminal
Die coden-App läuft auch in einem Fenster auf dem Computer, und von dort startest du den Server selbst:
- Öffne Einstellungen → Verbindung.
- Gib unter Server auf diesem Computer den Pfad zum Projektordner ein, zum Beispiel ~/projekty/muj-projekt.
- Tippe auf Server starten.
Das Fenster koppelt sich sofort mit dem Server, und der Server läuft weiter, auch wenn du das Fenster schließt. Das Telefon verbindest du dann über Telefon verbinden in der Leiste unten im Fenster — es zeigt einen QR-Code zum Scannen.
3. Telefon koppeln
Solange kein Telefon gekoppelt ist, gibt der Server gleich nach dem Start selbst einen QR-Code aus. Tippen Sie in der App auf Koppeln und richten Sie die Kamera darauf. Der Code gilt zehn Minuten und nur für eine Kopplung — einmal benutzt ist er wertlos.
Wenn er abläuft oder Sie ein weiteres Gerät koppeln wollen, erzeugen Sie einen neuen. In einem zweiten Terminalfenster, während der Server läuft:
$ cd ~/projekty/muj-projekt
$ coden-server pair
Beide Befehle müssen aus demselben Ordner laufen, und der Server muss zuerst laufen. coden-server pair ist kein eigenes Programm — es ist eine Nachricht an den laufenden Server, den es über den Ordner findet, in dem Sie es starten. Aus einem anderen Ordner oder ohne laufenden Server meldet es, dass es niemanden zu fragen gibt.
Zeig diesen Code niemandem und fotografiere ihn nicht. Er trägt neben der Identität deines Rechners auch den Zugang zum Dienst. Wer ihn hat, kommt weiter, als dir lieb ist.
4. Direkte Verbindung oder über das Relay
Nach dem Koppeln verbindet sich das Handy von selbst, und in der App ist zu sehen, auf welchem Weg. Den Unterschied musst du nicht einstellen — es wird die bessere der verbliebenen Möglichkeiten gewählt — aber es ist gut zu wissen, was welcher Zustand bedeutet:
- Direkte Verbindung
- Die Daten fließen vom Handy zum Rechner und nirgends sonst hin. Am schnellsten, kein Kontingent, nichts geht durch unseren Dienst. Es funktioniert, wenn beide Geräte im gleichen Netz sind oder wenn der Durchstoß durch NAT gelingt.
- Über das Relay
- Unser Server reicht die Daten weiter. Bei mobilen Daten und in Firmennetzen, in denen eine direkte Verbindung nicht möglich ist, ist es der einzige Weg. Der Verkehr ist vom Handy bis zum Server verschlüsselt, den Inhalt sehen wir also nicht — wir leiten ihn nur weiter.
Die App versucht von selbst, auf direkt umzuschalten, sobald es geht — typischerweise wenn du nach Hause ins WLAN kommst. Das Relay lässt sich in den Einstellungen abschalten; dann verbindest du dich in einem Netz, das keine direkte Verbindung erlaubt, aber überhaupt nicht.
Rendezvous ist der Teil des Dienstes, der die beiden Seiten bekannt macht. Ohne ihn wüsste das Handy nicht, wohin es sich verbinden soll — die Adresse des Rechners wechselt ja. Daten darüber zu übertragen geht aber nicht.
5. Gib die erste Aufgabe
Fang mit etwas an, bei dem du erkennst, ob der Agent es gut gemacht hat. Zum Beispiel:
Geh die README durch und schreib mir, was darin fehlt, damit sich das Projekt danach auf einem sauberen Rechner starten lässt.
Unterwegs siehst du, welche Dateien der Agent liest und was er ausführt. Beim ersten Befehl fragt er nach Erlaubnis — das ist normal und die Voreinstellung. Wenn er bei einer bestimmten Art von Aktion nicht mehr fragen soll, erteile eine dauerhafte Erlaubnis; entziehen lässt sie sich jederzeit in den Einstellungen.
Dort arbeitet Claude Code, also derselbe Agent, den du aus dem Terminal kennst. Er kann dasselbe und verhält sich gleich; der Unterschied ist nur, dass Eingabe und Ausgabe über das Handy gehen und dass CLAUDE.md, Skills und Einstellungen im Projekt genauso gelten wie am Rechner.
6. Geh vom Rechner weg
Das ist der Teil, wegen dem es coden gibt. Gib eine längere Aufgabe, sperr das Telefon und geh. Der Agent arbeitet weiter. Wenn er fertig ist, kommt eine Benachrichtigung; wenn du dich verbindest, kommt die ganze Ausgabe an, die dir entgangen ist.
Damit das funktioniert, darf der Rechner nicht einschlafen — dafür gibt es eine eigene Anleitung. Und wenn du nicht zum Freigeben zurücklaufen willst, siehe das Arbeiten ohne Freigaben.
Wenn das Telefon sich nicht verbindet
- Die App sagt „der Kopplungscode ist abgelaufen"
- Führe
coden-server pairerneut aus. Der Code ist absichtlich kurzlebig. - Das Telefon ist im Mobilfunk und die Verbindung kommt nicht zustande
- Manche Mobilfunknetze lassen eine direkte Verbindung nicht zu. Prüfe in der App, dass das Relay erlaubt ist — ohne es verbindest du dich in so einem Netz nicht.
- Die App meldet eine Schlüssel-Abweichung
- Der Server hat eine andere Identität als die, die das Telefon sich merkt — typischerweise, weil du sein Zustandsverzeichnis gelöscht hast. Koppelt neu. Ein „trotzdem fortfahren" bietet die App absichtlich nicht an.
Nützliche Befehle
$ coden-server status # läuft? wer ist verbunden? wie lange?
$ coden-server clients # gekoppelte Geräte, letzte Verbindung
$ coden-server stop # geordnetes Beenden
Woanders hängengeblieben als hier beschrieben? Schreib an support@coden-app.com.