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.
Einen eigenen Server brauchst du nicht. Rendezvous und Relay, über die sich Telefon und Rechner finden, betreiben wir, und der Server kennt sie schon.
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 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 --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 start
Ohne weitere Schalter bedient der Server das Verzeichnis, in dem du ihn gestartet hast. Ein anderes gibst du mit --dir:
$ coden 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.
3. Telefon koppeln
In einem zweiten Terminalfenster, während der Server läuft:
$ coden pair
Ein QR-Code erscheint. Tippe in der App auf Koppeln und richte die Kamera darauf. Der Code gilt ein paar Minuten und nur für eine Kopplung — nach dem Gebrauch ist er nichts mehr wert.
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 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.
- „Der Server bedient ein anderes Gerät"
-
Ein anderes gekoppeltes Telefon ist verbunden. Liste sie mit dem Befehl
coden clients.
Nützliche Befehle
$ coden status # läuft? wer ist verbunden? wie lange?
$ coden clients # gekoppelte Geräte, letzte Verbindung
$ coden stop # geordnetes Beenden
Woanders hängengeblieben als hier beschrieben? Schreib an support@coden-app.com.