Zum Hauptinhalt springen
In der Claude Desktop-App ist Claude Code die Registerkarte Code. Die App bietet außerdem Chat und Cowork, das Dispatch und längere agentengestützte Arbeiten übernimmt. Diese Seite ist die Referenz für die Registerkarte Code.

Für macOS herunterladen

Universeller Build für Intel und Apple Silicon

Für Windows herunterladen

Für x64-Prozessoren

Claude für Linux abrufen (Beta)

apt oder .deb für Ubuntu und Debian
Für Windows ARM64 laden Sie das ARM64-Installationsprogramm herunter. Unter Linux installieren Sie mit apt; siehe Claude Desktop unter Linux. Nach der Installation starten Sie Claude, melden sich an und klicken auf die Registerkarte Code. Eine Anleitung für Ihre erste Sitzung finden Sie im Leitfaden „Erste Schritte“. In der Registerkarte Code ist jedes Gespräch eine Sitzung: Es hat seinen eigenen Chat-Verlauf und Projektordner, unabhängig von jeder anderen Sitzung. Die Seitenleiste listet Ihre Sitzungen auf und ermöglicht es Ihnen, mehrere parallel auszuführen. Innerhalb einer Sitzung können Sie: Für geplante wiederkehrende Arbeiten, Tastaturkürzel oder Aufgaben von Ihrem Telefon senden siehe die verlinkten Seiten und Abschnitte. Wenn Sie bereits die Terminal-basierte CLI verwenden, siehe den CLI-Vergleich für das, was übertragen wird.

Eine Sitzung starten

Bevor Sie Ihre erste Nachricht senden, wählen Sie in der Zeile unter dem Prompt-Eingabefeld die Umgebung, den Projektordner, den Berechtigungsmodus und das Modell aus:
  • Umgebung: Verwenden Sie die Umgebungsauswahl, das erste Steuerelement in der Zeile, um auszuwählen, wo Claude ausgeführt wird. Siehe Umgebungskonfiguration.
  • Projektordner: Klicken Sie auf das Steuerelement für den Projektordner neben der Umgebungsauswahl, um den Ordner auszuwählen, in dem Claude arbeitet.
  • Berechtigungsmodus: Verwenden Sie die Modusauswahl, um festzulegen, wie viel Autonomie Claude hat. Sie können den Berechtigungsmodus während der Sitzung ändern.
  • Modell: Wählen Sie ein Modell in der Modellauswahl am rechten Ende der Zeile aus. Sie können das Modell während der Sitzung ändern.
Geben Sie Ihre Aufgabe ein und drücken Sie Enter, um zu starten. Jede Sitzung verfolgt ihren eigenen Kontext und ihre Änderungen unabhängig voneinander.

Mit Code arbeiten

Geben Sie Claude den richtigen Kontext, steuern Sie, wie viel es selbstständig erledigt, und prüfen Sie, was es geändert hat.

Das Eingabefeld verwenden

Geben Sie ein, was Claude tun soll, und drücken Sie Enter, um es zu senden. Claude liest Ihre Projektdateien, nimmt Änderungen vor und führt Befehle entsprechend Ihrem Berechtigungsmodus aus. Sie können Claude jederzeit umlenken: Klicken Sie auf die Stopp-Schaltfläche, um sofort zu unterbrechen, oder geben Sie eine Korrektur ein und drücken Sie Enter, um sie zu senden, ohne die laufende Aktion anzuhalten. Claude liest die Korrektur, sobald die aktuelle Aktion abgeschlossen ist, und passt sich vor dem nächsten Schritt an. Klicken Sie auf die Schaltfläche + neben dem Eingabefeld, um auf Dateianhänge, Skills, Konnektoren und Plugins zuzugreifen.

Einen vorgeschlagenen Prompt übernehmen

Nachdem Claude geantwortet hat, kann der Code-Tab einen vorgeschlagenen nächsten Prompt als grauen Text im leeren Eingabefeld anzeigen. Claude Code erzeugt jeden Vorschlag aus Ihrer Konversation mit einer kurzen Hintergrundanfrage, die auf die Nutzungslimits Ihres Plans oder Ihre API-Kosten angerechnet wird.
  • Vorschlag verwenden: Drücken Sie Tab oder Rechtspfeil, um ihn in das Eingabefeld zu übernehmen, bearbeiten Sie ihn bei Bedarf und drücken Sie dann Enter, um ihn zu senden. Wenn Sie Enter drücken, bevor Sie den Vorschlag übernommen haben, wird er nicht gesendet.
  • Eigenen Prompt schreiben: Beginnen Sie mit der Eingabe. Der Vorschlag wird nur angezeigt, solange das Eingabefeld leer ist und keine angehängten Dateien enthält.
Deaktivieren Sie Prompt suggestions unter Settings > Code oder Settings > Claude Code, um keine Vorschläge mehr zu erhalten. Jede Sitzung zeigt sie ab dem nächsten Start oder der nächsten Fortsetzung nicht mehr an.

Dateien und Kontext zu Prompts hinzufügen

Um Claude eine Datei zu übergeben, erwähnen Sie sie mit @ oder hängen Sie sie im Eingabefeld an:
  • Dateien mit @ erwähnen: Geben Sie @ gefolgt von einem Dateinamen ein, um eine Datei zum Konversationskontext hinzuzufügen.
    • In einer Cloud-Sitzung: @ kann Dateien erst auflisten, nachdem Sie Ihre erste Nachricht gesendet haben. Wenn @ keine Dateien auflistet, senden Sie Ihre erste Nachricht ohne die Datei und erwähnen Sie die Datei dann in Ihrer nächsten Nachricht mit @.
  • Dateien anhängen: Hängen Sie Bilder, PDFs und andere Dateien über die Schaltfläche + neben dem Eingabefeld an Ihren Prompt an, oder ziehen Sie Dateien per Drag-and-Drop direkt in den Prompt. Das ist nützlich, um Screenshots von Fehlern, Design-Mockups oder Referenzdokumente zu teilen.
    • In einer WSL-Sitzung: Wenn das Menü + den Eintrag Add image statt Add files or photos anzeigt, können Sie nur Bilder anhängen. Um Claude eine andere Datei aus dem Ordner der Sitzung zu übergeben, erwähnen Sie sie mit @.

Einen Berechtigungsmodus wählen

Berechtigungsmodi steuern, wie viel Autonomie Claude während einer Sitzung hat: ob es vor dem Bearbeiten von Dateien, vor dem Ausführen von Befehlen oder vor beidem nachfragt. Sie können den Berechtigungsmodus jederzeit über die Modusauswahl in der Zeile unter dem Eingabefeld wechseln. Wenn Sie jede Änderung selbst genehmigen möchten, wechseln Sie zu Manual. Um einen Standardmodus für neue lokale Sitzungen festzulegen, fügen Sie permissions.defaultMode zu Ihrer Einstellungsdatei hinzu. Die Desktop-App liest dieselben Einstellungsdateien wie die CLI. Ein Modus, den Sie in der Auswahl wählen, wird pro Ordner gespeichert und hat für diesen Ordner Vorrang vor defaultMode, mit Ausnahme von Plan, das nur für die aktuelle Sitzung gilt. Frühere Versionen des Code-Tabs bezeichneten diese Modi als Ask permissions, Auto accept edits und Plan mode. Der Berechtigungsmodus dontAsk ist nur in der CLI verfügbar.
Beginnen Sie komplexe Aufgaben in Plan, damit Claude einen Ansatz entwirft, bevor es Änderungen vornimmt. Sobald Sie den Plan freigegeben haben, wechseln Sie zu Accept edits oder Manual, um ihn umzusetzen. Weitere Informationen zu diesem Workflow finden Sie unter Plan-Modus.
Cloud-Sitzungen unterstützen Accept edits, Plan und Auto. Accept edits entspricht dem Modus default: Cloud-Sitzungen genehmigen Dateibearbeitungen vorab, daher zeigt die Auswahl Accept edits statt Manual an. Bypass permissions ist in Cloud-Sitzungen nicht verfügbar, auch nicht in Sitzungen in einer selbst gehosteten Umgebung. Enterprise-Admins können einschränken, welche Berechtigungsmodi verfügbar sind. Details finden Sie unter Enterprise-Konfiguration.

Verfügbarkeit des Auto-Modus

Der Auto-Modus ist für alle Nutzer der Anthropic API verfügbar und erfordert Claude Opus 4.6 oder neuer, Sonnet 4.6 oder neuer, Haiku 5.5 oder ein Fable-Modell. Organisationsadministratoren können den Auto-Modus mit dem Schlüssel disableAutoMode in den verwalteten Einstellungen deaktivieren. In Enterprise-Bereitstellungen, die Desktop über die Agent Platform von Google Cloud leiten, ist der Auto-Modus ebenfalls standardmäßig verfügbar; die unterstützten Modelle finden Sie unter Auto-Modus auf Bedrock, Agent Platform oder Foundry.

Vorschau Ihrer App

Claude kann einen Entwicklungsserver starten und ihn im Browser-Bereich öffnen, um seine Änderungen zu überprüfen. Das funktioniert sowohl für Frontend-Web-Apps als auch für Backend-Server: Claude kann API-Endpunkte testen, Server-Logs ansehen und gefundene Probleme iterativ beheben. In den meisten Fällen startet Claude den Server automatisch, nachdem es Projektdateien bearbeitet hat. Sie können Claude auch jederzeit um eine Vorschau bitten. Standardmäßig überprüft Claude Änderungen automatisch nach jeder Bearbeitung. Klicken Sie in einer lokalen Sitzung auf einen HTML-, PDF- oder Videopfad im Chat, um ihn im Browser-Bereich zu öffnen.
In einer SSH-Sitzung kann Claude Ihre App nicht im Browser-Bereich öffnen, da ihm dort die Tools dieses Bereichs nicht zur Verfügung stehen. Um sich die App selbst anzusehen, leiten Sie ihren Port an Ihren Computer weiter.
Wenn der Browser-Bereich nicht geöffnet ist, nachdem Claude in einer lokalen Sitzung einen Server gestartet hat, klicken Sie auf der Karte des Servers im Chat auf Open. Im Browser-Bereich können Sie:
  • Direkt im Browser-Bereich mit Ihrer laufenden App interagieren
  • Zusehen, wie Claude seine eigenen Änderungen automatisch überprüft: Es erstellt Screenshots, untersucht das DOM, klickt auf Elemente, füllt Formulare aus und behebt gefundene Probleme
  • Server über das Menü Dev servers in der Kopfzeile des Browser-Bereichs starten oder stoppen oder alle auf einmal stoppen
  • Mit Keep cookies im Menü ⋮ des Browser-Bereichs festlegen, ob der Browser Cookies nach dem Beenden der App behält, damit Sie sich während der Entwicklung nicht erneut anmelden müssen
Claude erstellt die anfängliche Serverkonfiguration auf Grundlage Ihres Projekts. Wenn Ihre App einen benutzerdefinierten Entwicklungsbefehl verwendet, bearbeiten Sie .claude/launch.json, damit sie zu Ihrem Setup passt. Die vollständige Referenz finden Sie unter Vorschau-Server konfigurieren. Um die gespeicherten Daten des Browsers zu löschen, wählen Sie Clear browsing data im Menü ⋮ des Browser-Bereichs. Um den Browser vollständig zu deaktivieren, schalten Sie Browser tools unter Settings > Code oder Settings > Claude Code aus.

Externe Websites aufrufen

Der Browser-Bereich ist ein Browser mit Tabs, sodass Sie Dokumentationen, Issue-Tracker oder beliebige andere Websites neben Ihrer laufenden App öffnen können. Um den Browser zu öffnen, drücken Sie Cmd+Shift+B unter macOS oder Ctrl+Shift+B unter Windows, oder klicken Sie in der Titelleiste der Sitzung auf Browser. Sie können sich im Bereich bei Websites anmelden, einschließlich Anmeldeabläufen in Pop-ups wie Google OAuth. Wenn Sie zum ersten Mal auf einen externen Link im Chat klicken, fragt ein Dialog, ob Links im Browser-Bereich oder in Ihrem Standardbrowser geöffnet werden sollen. Um Ihre Wahl später zu ändern, verwenden Sie Open links in built-in browser im Menü ⋮ des Browser-Bereichs. Mit Cmd-Klick unter macOS oder Ctrl-Klick unter Windows öffnen Sie einen Link direkt in Ihrem Standardbrowser. Claude kann externe Seiten mit denselben Tools lesen und mit ihnen interagieren, die es zum Überprüfen Ihrer App verwendet, mit zwei zusätzlichen Sicherheitsprüfungen:
  • Sicherheitsklassifikatoren prüfen die schreibenden Aktionen von Claude auf externen Seiten, etwa Klicken und Tippen, in jedem Berechtigungsmodus. Es handelt sich um dieselben Klassifikatoren, die der Auto-Modus verwendet, und wenn sie eine Aktion kennzeichnen, erhalten Sie unabhängig vom Modus eine Berechtigungsabfrage.
  • In anderen Berechtigungsmodi als Auto und Bypass permissions gilt zusätzlich eine Prüfung gegen eine Domain-Allowlist, bevor Claude zu einer neuen Website navigiert.

Aktionen von Claude auf einer Website genehmigen

Wenn Claude zum ersten Mal auf einer externen Website handelt, erscheint eine Berechtigungskarte, und Claude wartet auf Ihre Wahl: Allow once, Always allow oder Deny. Allow once genehmigt die Aktion, ohne etwas zu speichern. Always allow speichert die Genehmigung für diese Website auf Ihrem Gerät, und Sie können sie in den Einstellungen widerrufen. Jede Website benötigt eine eigene Genehmigung, auch Subdomains. Ihre lokalen Entwicklungsserver und Projektdateien benötigen keine Genehmigung, sodass die automatische Überprüfung ohne Abfragen weiter funktioniert. Selbst auf einer genehmigten Website kauft Claude ohne Ihre Mitwirkung keine Artikel, erstellt keine Konten und umgeht keine CAPTCHAs. Das Surfen im Browser-Bereich verwendet dasselbe Sicherheitsmodell wie die Erweiterung Claude in Chrome. Unter Using Claude in Chrome safely erfahren Sie, wie Claude mit sensiblen Websites und riskanten Aktionen umgeht.

Zwischen dem Browser und der Chrome-Erweiterung wählen

Der Browser-Bereich verwendet ein sauberes Browserprofil, getrennt von Ihrem persönlichen Browser, ohne Ihre gespeicherten Anmeldungen oder Ihren Verlauf. Verwenden Sie ihn zum Entwickeln und Testen Ihrer App und für Websites, die Ihre Identität nicht benötigen. Wenn Claude in Ihren angemeldeten Sitzungen als Sie handeln soll, verwenden Sie stattdessen die Erweiterung Claude in Chrome, die den Anmeldestatus Ihres Browsers teilt.

Externes Surfen für Ihre Organisation einschränken

Der Browser befolgt dieselben Allowlist- und Blocklist-Steuerungen für Websites wie die Erweiterung Claude in Chrome. Wenn Ihre Organisation diese Listen bereits für die Erweiterung konfiguriert hat, berücksichtigt der Browser sie automatisch. Administratoren können außerdem die Tools von Claude auf externen Seiten mit der verwalteten Einstellung browserExternalPageTools deaktivieren. Bei deaktivierten Tools können Nutzer externe Websites weiterhin besuchen; die Tools von Claude können sie jedoch weder lesen noch darauf handeln. Um externes Surfen vollständig zu deaktivieren, setzen Sie die verwaltete Einstellung disableBrowserExternalNavigation auf true. Dadurch wird jede externe Navigation im Browser blockiert, auch zu Websites auf der Allowlist Ihrer Organisation; Entwicklungsserver auf localhost und Dateivorschauen funktionieren weiterhin. Verwenden Sie browserExternalPageTools, damit Nutzer externe Websites weiterhin ohne die Tools von Claude aufrufen können, und disableBrowserExternalNavigation, um externe Websites sowohl für Nutzer als auch für Claude zu blockieren.

Änderungen in der Diff-Ansicht prüfen

Nachdem Claude Änderungen an Ihrem Code vorgenommen hat, können Sie in der Diff-Ansicht die Änderungen Datei für Datei prüfen, bevor Sie einen Pull Request erstellen. Um die Diff-Ansicht zu öffnen, klicken Sie auf die Zeilenzahlen, etwa +12 -1, in der Karte Changes im Bereich mit den Sitzungsdetails. Sie können auch in der Titelleiste der Sitzung auf Changes klicken. Der Diff einer Cloud-Sitzung gegenüber dem Basis-Branch kann Änderungen auslassen, die noch nicht gepusht wurden. Um bestimmte Zeilen zu kommentieren, bewegen Sie den Mauszeiger über eine Zeile und klicken Sie auf das +, das neben der Zeilennummer erscheint, um ein Kommentarfeld zu öffnen. Geben Sie Ihr Feedback ein und drücken Sie Enter, um den Kommentar hinzuzufügen. Nachdem Sie Kommentare zu mehreren Zeilen hinzugefügt haben, senden Sie alle Kommentare auf einmal:
  • macOS: Drücken Sie Cmd+Enter
  • Windows: Drücken Sie Ctrl+Enter
Claude liest Ihre Kommentare und nimmt die angeforderten Änderungen vor, die als neuer Diff erscheinen, den Sie prüfen können.

Ihren Code prüfen

Damit Claude Ihre Änderungen vor dem Committen prüft, geben Sie /code-review in das Eingabefeld ein. Die Ergebnisse erscheinen in der Konversation, sobald das Review abgeschlossen ist. In lokalen, SSH- und WSL-Sitzungen erscheinen die Ergebnisse als Karte Code review, nach Dateien gruppiert. Nutzen Sie die Karte, um darauf zu reagieren:
  • Klicken Sie auf Walk through in diff, um die Diff-Ansicht zu öffnen und die Ergebnisse einzeln durchzugehen. Ein Ergebnis im aktuellen Diff erscheint an seiner Zeile, wo Sie auf Fix this one klicken oder es verwerfen können.
  • Klicken Sie auf Apply fixes, um Claude zu bitten, die noch offenen Ergebnisse zu beheben.
In jeder Sitzung können Sie Claude auch über das Eingabefeld bitten, die im Review gefundenen Probleme zu beheben. Worauf /code-review achtet und welche Argumente es akzeptiert, erfahren Sie unter Lokal prüfen mit /code-review.

Status von Pull Requests überwachen

Damit Claude fehlschlagende Checks behebt oder GitHub den Pull Request mergt, aktivieren Sie Auto-fix oder Merge when ready. Nachdem Sie einen Pull Request geöffnet haben, erscheint er in der Karte Changes im Bereich mit den Sitzungsdetails zusammen mit dem Status seiner CI-Checks. Öffnen Sie das Menü ⋮ neben seinem Titel:
  • Auto-fix: In einer lokalen Sitzung bearbeitet Claude auch neue Review-Kommentare, die jemand anderes als Sie hinterlässt. Der Autor des Kommentars muss der Eigentümer des Repositorys, ein Mitglied der Organisation, ein Collaborator oder eine GitHub App sein.
  • Merge when ready: Aktiviert das automatische Mergen von GitHub für den PR. In einer lokalen Sitzung fordert Desktop einen Squash-Merge an, sofern der Basis-Branch keine Merge-Queue verwendet.
    • In SSH- und WSL-Sitzungen: Merge when ready ist deaktiviert; aktivieren Sie daher das automatische Mergen für den Pull Request auf GitHub
    • Wenn das Repository kein automatisches Mergen erlaubt: Merge when ready lässt sich nicht aktivieren; aktivieren Sie daher zuerst das automatische Mergen in den Einstellungen Ihres GitHub-Repositorys
  • Früheres Layout: Sobald die Sitzung einen Pull Request hat, klicken Sie in ihrer Statusleiste auf CI.
Um die Sitzung automatisch zu archivieren, sobald der PR gemergt oder geschlossen wird, aktivieren Sie die automatische Archivierung unter Settings > Code oder Settings > Claude Code.
Die PR-Überwachung erfordert, dass die GitHub CLI (gh) auf Ihrem Rechner installiert und authentifiziert ist. Wenn gh nicht installiert ist, fordert Desktop Sie beim ersten Versuch, einen PR zu erstellen, zur Installation auf.Richten Sie in einer SSH-Sitzung git und gh auf dem Remote-Rechner ein, bevor Sie auf Create PR klicken, da Claude den Branch dort pusht und gh pr create dort ausführt. Installieren Sie gh dort selbst, da Desktop Sie in einer SSH-Sitzung nicht dazu auffordert. Prüfen Sie dann dort, dass git push funktioniert und dass gh auth status meldet, dass Sie angemeldet sind.

Anordnen Ihres Arbeitsbereichs

Die Code-Registerkarte ist um Panes aufgebaut, die Sie in jedem Layout anordnen können: Chat, Diff, Browser, Terminal, Datei, Plan, Aufgaben und Subagent, zusammen mit dem iOS Simulator auf macOS. Ziehen Sie ein Pane an seiner Kopfzeile, um es zu verschieben, oder ziehen Sie eine Pane-Kante, um es zu vergrößern. Drücken Sie Cmd+\ auf macOS oder Ctrl+\ auf Windows, um das fokussierte Pane zu schließen. Um ein weiteres Pane zu öffnen, klicken Sie auf die zugehörige Symbolschaltfläche in der Titelleiste der Sitzung. Bewegen Sie den Mauszeiger darüber, um den Namen jeder Schaltfläche zu sehen, z. B. Terminal, Änderungen für die Diff-Ansicht, Browser und Dateien. Wenn das gewünschte Pane keine Schaltfläche in der Titelleiste hat, wählen Sie es im Menü ⋮ neben den Schaltflächen aus:
  • Wenn das Fenster schmal ist: Schaltflächen, die nicht hineinpassen, werden in das Menü verschoben
  • Für Panes ohne Schaltfläche: Panes wie Hintergrundaufgaben und Plan werden aufgeführt, sobald die Sitzung etwas hat, das in diesen Panes angezeigt werden kann
Um über mehrere Bildschirme hinweg zu arbeiten, öffnen Sie ein Pane wie den Diff oder das Terminal in einem eigenen Fenster, und docken Sie es wieder an, wenn Sie fertig sind. Claude arbeitet weiterhin im Hauptfenster.
Das Pane-Layout, Terminal, Datei-Editor und Ansichtsmodi in diesem Abschnitt erfordern Claude Desktop v1.2581.0 oder später. Öffnen Sie Claude → Nach Updates suchen auf macOS oder Hilfe → Nach Updates suchen auf Windows, um zu aktualisieren.

Sitzungsdetails anzeigen

Das Sitzungsdetails-Panel ist eine Gruppe von Karten neben dem Chat, die anzeigen, wo die Sitzung läuft, was sie geändert hat, was sie gerade ausführt und wie viel Kontext sie nutzt. Das Panel erscheint, nachdem Sie eine Sitzung gestartet haben, sofern der Chat breit genug dafür ist.

Sitzungsdetails-Panel aus- oder einblenden

Um das Panel aus- oder einzublenden, klicken Sie in der Titelleiste der Sitzung oder im Menü ⋮ der Leiste auf Sitzungsleiste ausblenden oder Sitzungsleiste einblenden. Wenn Sie das Panel weiterhin nicht sehen, prüfen Sie, welches Layout der Code-Registerkarte Sie haben.

Führen Sie Befehle im Terminal aus

Das integrierte Terminal ermöglicht es Ihnen, Befehle neben Ihrer Sitzung auszuführen, ohne zu einer anderen App zu wechseln. Klicken Sie in der Titelleiste der Sitzung auf Terminal oder drücken Sie Ctrl+` auf macOS oder Windows. Das Terminal öffnet sich im Arbeitsverzeichnis Ihrer Sitzung und teilt die gleiche Umgebung wie Claude, sodass Befehle wie npm test oder git status die gleichen Dateien sehen, die Claude bearbeitet. Um eine zweite Terminal-Registerkarte zu öffnen, klicken Sie auf + in der Terminal-Pane-Kopfzeile oder klicken Sie mit der rechten Maustaste auf einen Ordner im Chat, um Im Terminal öffnen zu wählen. Wenn eine WSL-Sitzung kein Terminal hat, lesen Sie Wenn das Terminal oder Konnektoren nicht verfügbar sind. Das Terminal ist in lokalen und SSH-Sitzungen verfügbar, mit einer Einschränkung auf Windows-Remote-Rechnern.

Öffnen und bearbeiten Sie Dateien

Um eine Datei zu öffnen, die Claude erwähnt, klicken Sie im Chat auf ihren Pfad. Um eine Datei selbst zu bearbeiten, verwenden Sie das Datei-Pane:
  • Lokale Sitzungen: Sie können Dateien im Arbeitsverzeichnis der Sitzung bearbeiten, mit Ausnahme einiger schreibgeschützter Dateien wie .mcp.json und .claude/settings.json. Um eine davon zu ändern, öffnen Sie sie in einer anderen App.
  • Cloud-, SSH- und WSL-Sitzungen: Das Datei-Pane ist schreibgeschützt, bitten Sie daher Claude, die Änderungen vorzunehmen.

Bearbeitungen im Datei-Pane speichern

Standardmäßig werden Ihre Bearbeitungen im Datei-Pane automatisch gespeichert, daher zeigt das Pane keine Schaltfläche Speichern an. Um Ihre Bearbeitungen selbst zu speichern, deaktivieren Sie Automatisch speichern im Menü ⋮ des Panes. Wenn Automatisch speichern deaktiviert ist, klicken Sie nach dem Ändern einer Datei auf Speichern, um Ihre Bearbeitungen zu schreiben, oder auf Abbrechen, um sie rückgängig zu machen. Wenn das Pane warnt, dass sich die Datei auf der Festplatte geändert hat, klicken Sie auf Überschreiben, um die Version auf der Festplatte mit Ihren Bearbeitungen zu überschreiben, oder auf Verwerfen, um Ihre Bearbeitungen zu verwerfen.

Öffnen Sie Dateien in anderen Apps

Klicken Sie mit der rechten Maustaste auf einen Dateipfad im Chat, Diff-Viewer oder Datei-Pane, um ein Kontextmenü zu öffnen:
  • Als Kontext anhängen: Fügen Sie die Datei zu Ihrem nächsten Prompt hinzu
  • Öffnen in: Öffnen Sie die Datei in einem installierten Editor wie VS Code, Cursor oder Zed
  • Im Finder anzeigen auf macOS, Im Explorer anzeigen auf Windows: Öffnen Sie den enthaltenden Ordner
  • Kopieren: Ein Untermenü, das den Absoluten Pfad, den Relativen Pfad oder den Dateinamen der Datei kopiert

Wechseln Sie Ansichtsmodi

Ansichtsmodi kontrollieren, wie viel Detail im Chat-Transkript angezeigt wird. Um den Ansichtsmodus zu wechseln, öffnen Sie das Sitzungsmenü über das Caret-Symbol neben dem Sitzungstitel und wählen Sie Transkript-Ansicht, oder drücken Sie Ctrl+O auf macOS oder Windows, um durch die Modi zu zyklisieren. Der Thinking-Modus wird im Menü nur angezeigt, nachdem Claude Thinking in der Sitzung erzeugt hat, die Sie anzeigen. Verwenden Sie Thinking, um Claudes Überlegungen mit noch zusammengefassten Tool-Aufrufen zu folgen. Verwenden Sie Ausführlich beim Debuggen, warum Claude eine bestimmte Aktion unternommen hat. Claude Desktop-Versionen vor 1.46388.1 listen auch einen Summary-Modus auf, und eine Sitzung, die noch auf Summary eingestellt ist, öffnet sich in Normal, sobald Sie aktualisieren.

Tastenkombinationen

Drücken Sie Cmd+/ auf macOS oder Ctrl+/ auf Windows, um alle in der Code-Registerkarte verfügbaren Tastenkombinationen zu sehen. Die Tabelle in diesem Abschnitt zeigt die macOS-Tasten. Ersetzen Sie unter Windows und Linux diese Tasten:
  • Cmd+Option: Drücken Sie Alt
  • Cmd+Ctrl: Drücken Sie Ctrl+Alt
  • Cmd: Drücken Sie Ctrl
Tastenkombinationen, die mit Ctrl beginnen, bleiben auf jeder Plattform gleich. Diese Kürzel gelten für den Code-Tab. In Desktop wechselt Shift+Tab nicht zwischen Berechtigungsmodi, wie es im interaktiven Modus des Terminals der Fall ist.

Überprüfen Sie die Nutzung

Um zu sehen, wie voll das Kontextfenster dieser Sitzung ist, ermitteln Sie das Layout Ihrer Code-Registerkarte:
  • Aktuelles Layout: Die Kopfzeile der Karte Kontext im Sitzungsdetails-Panel zeigt es als Prozentwert an. Öffnen Sie die Karte, um nach Kategorie zu sehen, was das Fenster belegt.
  • Früheres Layout: Klicken Sie auf den Nutzungsring neben dem Modell-Wahlschalter. Sein Popover zeigt Ihre Kontextfenster-Nutzung an.
Geben Sie in beiden Layouts /context in das Eingabefeld ein, um im Chat eine Aufschlüsselung des Kontextfensters dieser Sitzung nach Kategorien auszugeben. Beide Layouts haben den Nutzungsring neben dem Modell-Wahlschalter. Klicken Sie darauf, um Ihre Plan-Nutzung zu sehen, die über alle Ihre Claude-Code-Oberflächen hinweg geteilt wird.

Claude Ihren Computer verwenden lassen

Mit Computer Use kann Claude Ihre Apps öffnen, Ihren Bildschirm steuern und direkt auf Ihrem Rechner arbeiten, so wie Sie es tun würden. Bitten Sie Claude, mit einem Desktop-Tool zu interagieren, das keine CLI hat, oder etwas zu automatisieren, das nur über eine grafische Oberfläche funktioniert. Zum Ausführen und Testen von iOS-Apps öffnet Desktop stattdessen den dedizierten iOS-Simulator-Bereich, anstatt Ihren Bildschirm zu steuern; der Bereich funktioniert, ohne dass Computer Use aktiviert sein muss.
Computer Use ist eine Research Preview unter macOS und Windows, die einen Pro-, Max- oder Ultra-Plan erfordert. Es ist in Team- oder Enterprise-Plänen nicht verfügbar. Die Claude Desktop-App muss ausgeführt werden. Unter macOS erfordert Computer Use macOS 14 oder höher.
Computer Use ist standardmäßig deaktiviert. Aktivieren Sie es in den Einstellungen, bevor Claude Ihren Bildschirm steuern kann. Unter macOS müssen Sie außerdem die Berechtigungen für Bedienungshilfen und Bildschirmaufnahme erteilen. Unter macOS kann Computer Use auch im Hintergrund laufen: Claude arbeitet in den von Ihnen genehmigten Apps, während Sie weiterarbeiten.
Anders als das Bash-Tool in der Sandbox läuft Computer Use auf Ihrem tatsächlichen Desktop mit Zugriff auf alles, was Sie genehmigen. Claude prüft jede Aktion und kennzeichnet mögliche Prompt-Injection durch Bildschirminhalte, aber die Vertrauensgrenze ist eine andere. Best Practices finden Sie im Sicherheitsleitfaden für Computer Use.

Wann Computer Use zum Einsatz kommt

Claude hat mehrere Möglichkeiten, mit einer App oder einem Dienst zu interagieren, und Computer Use ist die umfassendste und langsamste. Claude versucht zuerst das präziseste Tool:
  • Wenn Sie einen Konnektor für einen Dienst haben, verwendet Claude den Konnektor.
  • Wenn die Aufgabe ein Shell-Befehl ist, verwendet Claude Bash.
  • Wenn es sich um Browserarbeit handelt und Sie Claude in Chrome eingerichtet haben, verwendet Claude dieses.
  • Wenn es um das Ausführen oder Testen einer iOS-App geht, verwendet Claude den iOS-Simulator-Bereich, der keine Bildschirmsteuerung nutzt.
  • Wenn nichts davon zutrifft, verwendet Claude Computer Use.
Die Zugriffsstufen pro App verstärken dies: Browser sind auf Nur-Ansicht begrenzt, Terminals und IDEs auf Nur-Klicken, sodass Claude auch bei aktivem Computer Use zum dedizierten Tool gelenkt wird. Die Bildschirmsteuerung ist Dingen vorbehalten, die auf keine andere Weise erreichbar sind, etwa native Apps, Hardware-Bedienfelder oder proprietäre Tools ohne API.

Computer Use aktivieren

Computer Use ist standardmäßig deaktiviert. Wenn Sie Claude um etwas bitten, das Computer Use erfordert, während es deaktiviert ist, teilt Claude Ihnen mit, dass es die Aufgabe erledigen könnte, wenn Sie Computer Use in den Einstellungen aktivieren.
1

Desktop-App aktualisieren

Stellen Sie sicher, dass Sie die neueste Version von Claude Desktop haben. Unter macOS und Windows können Sie unter claude.com/download herunterladen oder aktualisieren; unter Linux aktualisieren Sie über Ihren Paketmanager (Anleitung). Starten Sie die App anschließend neu.
2

Schalter einschalten

Öffnen Sie in der Desktop-App Settings und dann:
  • Wenn das Menü „Settings“ den Eintrag This computer auflistet: Gehen Sie zu This computer > System
  • Andernfalls: Gehen Sie zu Capabilities
Schalten Sie unter Computer use die Option Enable computer use ein:
  • Windows: Der Schalter wird sofort wirksam und die Einrichtung ist abgeschlossen
  • macOS: Fahren Sie mit dem nächsten Schritt fort
Wenn Sie den Schalter nicht sehen, vergewissern Sie sich, dass Sie macOS oder Windows mit einem Pro-, Max- oder Ultra-Plan verwenden, und aktualisieren Sie die App und starten Sie sie neu.
3

macOS-Berechtigungen erteilen

Unter macOS müssen Sie zwei Systemberechtigungen erteilen, bevor der Schalter wirksam wird:
  • Bedienungshilfen (Accessibility): ermöglicht Claude, zu klicken, zu tippen und zu scrollen
  • Bildschirmaufnahme (Screen Recording): ermöglicht Claude, zu sehen, was auf Ihrem Bildschirm ist
Die Einstellungsseite zeigt den aktuellen Status jeder Berechtigung an. Wenn eine davon verweigert wurde, klicken Sie auf das Abzeichen, um den entsprechenden Bereich der Systemeinstellungen zu öffnen.

App-Berechtigungen

Wenn Claude zum ersten Mal eine App verwenden muss, erscheint in Ihrer Sitzung eine Berechtigungsabfrage. Klicken Sie auf Allow for this session oder Deny. Genehmigungen gelten für die aktuelle Sitzung bzw. 30 Minuten in über Dispatch gestarteten Sitzungen. Die Abfrage zeigt auch, welche Steuerungsstufe Claude für diese App erhält. Diese Stufen sind nach App-Kategorie festgelegt und können nicht geändert werden: Apps mit weitreichendem Zugriff, wie Terminals, Finder oder der Datei-Explorer sowie die Systemeinstellungen bzw. Einstellungen, zeigen in der Abfrage eine zusätzliche Warnung an, damit Sie wissen, was Sie mit der Genehmigung gewähren. In den Einstellungen enthält der Abschnitt Computer use, in dem Sie Computer Use eingeschaltet haben, die folgenden Optionen:
  • Denied apps: Fügen Sie hier Apps hinzu, um sie ohne Nachfrage abzulehnen. Claude kann eine abgelehnte App weiterhin indirekt durch Aktionen in einer erlaubten App beeinflussen, aber nicht direkt mit der abgelehnten App interagieren.
  • Unhide apps when Claude finishes: Wenn Computer Use nicht im Hintergrund läuft, blendet Claude während der Arbeit Ihre anderen Fenster aus, sodass es nur mit der genehmigten App interagiert. Wenn Claude fertig ist, werden ausgeblendete Fenster wiederhergestellt, sofern Sie diese Einstellung nicht ausschalten.

Sitzungen verwalten

Jede Sitzung ist eine unabhängige Konversation mit eigenem Kontext und eigenen Änderungen. Sie können mehrere Sitzungen parallel ausführen, Nebenchats abzweigen, Claude Ihre anderen Sitzungen überprüfen und ihnen Nachrichten senden lassen, Arbeit in die Cloud senden oder Dispatch Sitzungen von Ihrem Telefon aus für Sie starten lassen.

Mit Sitzungen parallel arbeiten

Klicken Sie in der Seitenleiste auf + New oder drücken Sie Cmd+N unter macOS bzw. Ctrl+N unter Windows, um parallel an mehreren Aufgaben zu arbeiten. Drücken Sie Ctrl+Tab und Ctrl+Shift+Tab, um zwischen Sitzungen zu wechseln. Sie können außerdem eine zweite Sitzung neben der aktuellen Sitzung oder in einem eigenen Fenster öffnen:
  • Nebeneinander: Halten Sie Option unter macOS bzw. Alt unter Windows gedrückt und klicken Sie auf eine Sitzung in der Seitenleiste, oder klicken Sie mit der rechten Maustaste auf die Sitzung und wählen Sie Open in und dann Split view
  • In einem eigenen Fenster: Halten Sie Cmd unter macOS bzw. Ctrl unter Windows gedrückt und klicken Sie auf eine Sitzung, oder klicken Sie mit der rechten Maustaste auf die Sitzung und wählen Sie Open in und dann New window
In der geteilten Ansicht hat der Bereich, den Sie zuletzt geöffnet oder angeklickt haben, den Fokus, und der andere Bereich ist abgedunkelt. Um zu ändern, welche Sitzung ein Bereich anzeigt, klicken Sie in diesen Bereich, um ihm den Fokus zu geben, und klicken Sie dann auf eine Sitzung in der Seitenleiste. Um die fokussierte Sitzung aus der geteilten Ansicht zu nehmen, drücken Sie Cmd+Ctrl+W unter macOS bzw. Ctrl+Alt+W unter Windows.

Eine Sitzung in einem eigenen Worktree ausführen

Aktivieren Sie in einem Projekt, das ein Git-Repository ist, vor dem Start einer Sitzung Worktree, um sie in einem eigenen Git-Worktree auszuführen, einer isolierten Kopie des Projekts. Standardmäßig ist Worktree ausgeschaltet und Claude arbeitet direkt im Projektordner. Aktivieren Sie im aktuellen Layout die Schaltfläche Worktree in der Zeile unter dem Eingabefeld.
  • Mit einem Drittanbieter: Wenn die Zeile unter dem Eingabefeld das Steuerelement für den Projektordner, aber keine Schaltfläche Worktree anzeigt, klicken Sie auf dieses Steuerelement und aktivieren Sie Worktree
  • Als Standard für eine gespeicherte lokale oder SSH-Umgebung: Legen Sie Worktree fest, wenn Sie die Umgebung erstellen oder bearbeiten
  • Früheres Layout: Aktivieren Sie das Kontrollkästchen worktree neben dem Branch-Namen oberhalb des Eingabefelds
Worktrees werden standardmäßig in <project-root>/.claude/worktrees/ gespeichert. So speichern Sie sie stattdessen in einem benutzerdefinierten Verzeichnis:
  • Lokale Sitzungen: Legen Sie Worktree location unter Settings > Code oder Settings > Claude Code fest
  • SSH-Sitzungen: Legen Sie Worktree folder in der SSH-Verbindung fest
Sie können außerdem unter Settings > Code oder Settings > Claude Code ein Branch prefix festlegen. Desktop stellt es jedem Worktree-Branch-Namen voran, was hilfreich ist, um von Claude erstellte Branches übersichtlich zu halten. Um von Git ignorierte Dateien wie .env in neue Worktrees aufzunehmen, erstellen Sie eine .worktreeinclude-Datei im Stammverzeichnis Ihres Projekts. Unter Was Worktrees mit dem Haupt-Checkout teilen erfahren Sie, woher eine Worktree-Sitzung Projekteinstellungen, Hooks und Skills liest.
Die Sitzungsisolierung erfordert Git. Auf den meisten Macs ist Git standardmäßig installiert. Führen Sie git --version im Terminal aus, um dies zu prüfen; wenn eine Versionsnummer ausgegeben wird, ist Git installiert. Wenn Git-Fehler auftreten, bitten Sie Claude in Cowork, Ihnen bei der Fehlerbehebung Ihrer Einrichtung zu helfen.

Ordner zu einer Sitzung hinzufügen

Fügen Sie Ordner vor dem Start der Sitzung oder während ihrer Ausführung hinzu:

Eine Sitzung archivieren

Bevor Sie eine Sitzung archivieren, deren Worktree nicht committete Änderungen enthält, lesen Sie Nicht committete Änderungen beim Archivieren einer Sitzung behalten. Um eine Sitzung zu archivieren, bewegen Sie den Mauszeiger in der Seitenleiste darüber, öffnen Sie ihr Menü und wählen Sie Archive. Die Sitzung wird in Ihre archivierten Sitzungen verschoben. Damit sich Sitzungen selbst archivieren, wenn ihr Pull Request gemergt oder geschlossen wird, aktivieren Sie Auto-archive after PR merge or close unter Settings > Code oder Settings > Claude Code. Cloud-Sitzungen und Sitzungen, die noch laufen, archivieren sich nicht selbst.

Nicht committete Änderungen beim Archivieren einer Sitzung behalten

Nicht committete Änderungen im Worktree einer Sitzung können beim Archivieren der Sitzung verloren gehen. Committen Sie daher zuerst, was Sie behalten möchten:
  • Wenn Desktop nach den Änderungen fragt: Wählen Sie Archive anyway, um sie zu verwerfen, oder brechen Sie ab und committen Sie sie
  • Wenn die einzigen Änderungen nicht nachverfolgte Dateien sind: Committen Sie diejenigen, die Sie behalten möchten, bevor ein Pull Request gemergt wird, den Claude in der Sitzung geöffnet hat, da Desktop sie dann ohne Nachfrage löschen kann
  • In allen anderen Fällen: Der Worktree bleibt mit seinen Änderungen auf dem Datenträger erhalten. Bei einer lokalen Sitzung entfernt Desktop beides etwa 30 Tage, nachdem die Sitzung archiviert wurde oder Sie sie zuletzt geöffnet haben, je nachdem, was später eintritt. Um die Änderungen zu behalten, öffnen Sie die Sitzung über den Tab Archived und wählen Sie Unarchive

Sitzungen organisieren und finden

Sie gruppieren, sortieren und finden Sitzungen über ein Symbol in der Sitzungsliste der Seitenleiste:
  • Aktuelles Layout: Bewegen Sie den Mauszeiger über eine Überschrift in der Sitzungsliste, um das Symbol Group and sort anzuzeigen, und klicken Sie darauf. Um archivierte Sitzungen zu finden, wählen Sie View all, die letzte Zeile des Menüs, und öffnen Sie dann den Tab Archived.
  • Früheres Layout: Das Symbol Filter wird ohne Mauszeigerbewegung angezeigt. Klicken Sie darauf, um die Liste mit Group by oder Sort by anzuordnen. Um archivierte Sitzungen anzuzeigen, wählen Sie Status und dann Archived.
Um eine Sitzung umzubenennen, öffnen Sie sie und klicken Sie in der Titelleiste auf den Sitzungstitel.

Kontext prüfen und freigeben

Informationen zur Prüfung der Kontextnutzung finden Sie unter Nutzung prüfen. Wenn sich der Kontext füllt, fasst Claude die Konversation automatisch zusammen und arbeitet weiter. Sie können auch /compact eingeben, um die Zusammenfassung früher auszulösen und Kontextplatz freizugeben. Unter Das Kontextfenster finden Sie Details zur Funktionsweise der Komprimierung.

Benachrichtigung erhalten, wenn eine Sitzung abgeschlossen ist

Die Desktop-App sendet eine Betriebssystembenachrichtigung, wenn eine Code-Sitzung eine Aufgabe abschließt und Sie diese Sitzung gerade nicht ansehen. Für Sitzungen, die zu einem Projekt gehören, erhalten Sie stattdessen die Benachrichtigungen des Projekts.

Eine Nebenfrage stellen, ohne die Sitzung zu stören

Mit einem Nebenchat können Sie Claude eine Frage stellen, die den Kontext Ihrer Sitzung nutzt, aber nichts zur Hauptkonversation hinzufügt. Verwenden Sie ihn, wenn Sie ein Stück Code verstehen, eine Annahme prüfen oder eine Idee erkunden möchten, ohne die Sitzung vom Kurs abzubringen. Drücken Sie Cmd+; unter macOS bzw. Ctrl+; unter Windows, um einen Nebenchat zu öffnen, oder geben Sie /btw in das Eingabefeld ein. Der Nebenchat kann alles im Hauptthread bis zu diesem Zeitpunkt lesen. Wenn Sie fertig sind, schließen Sie den Nebenchat und setzen Sie die Hauptsitzung dort fort, wo Sie aufgehört haben. Nebenchats sind in lokalen, SSH- und WSL-Sitzungen verfügbar. Die Desktop-App speichert Nebenchats nicht auf dem Datenträger, sodass Sie nach dem Schließen der App nicht zu einem zurückkehren können.

Hintergrundaufgaben beobachten

Der Aufgabenbereich zeigt die Hintergrundarbeit, die innerhalb der aktuellen Sitzung läuft: Subagenten, Shell-Befehle im Hintergrund und dynamische Workflows. Sobald die Sitzung Hintergrundarbeit hat, öffnen Sie den Bereich über Background tasks im Menü ⋮ der Titelleiste. Klicken Sie auf einen beliebigen Eintrag, um seine Ausgabe im Subagenten-Bereich zu sehen oder ihn zu stoppen. Um zu sehen, was andere Sitzungen tun, verwenden Sie die Seitenleiste oder bitten Sie Claude, sie für Sie zu überprüfen.

Sitzungsübergreifend arbeiten

Claude kann Ihre anderen Sitzungen im Code-Tab auflisten, lesen, woran jede gearbeitet hat, und Nachrichten zwischen ihnen senden. Fragen Sie in natürlicher Sprache: „Welche Sitzung hat das Auth-Refactoring angefasst?“, „Zu welchem Ergebnis ist die API-Sitzung gekommen?“ oder „Sag der Payments-Sitzung, dass sich das Schema geändert hat“. Sie können Claude auch bitten, eine Sitzung umzubenennen oder zu archivieren. Bitten Sie es beispielsweise, die Sitzungen zu archivieren, deren PRs gemergt wurden. Über diese Oberfläche sieht Claude nur die Sitzungen, die die Desktop-App selbst ausführt: lokale, SSH- und WSL-Sitzungen im Code-Tab. Claude sieht keine Cloud-Sitzungen oder Sitzungen, die Sie über die Terminal-CLI oder die VS Code-Erweiterung gestartet haben, auch nicht in Worktrees desselben Projekts. Wenn also neun Terminal-Worktrees und zwei Desktop-Sitzungen geöffnet sind, meldet Claude in einer davon die eine andere Desktop-Sitzung. Claude listet nie die Sitzung auf, aus der Sie fragen. Standardmäßig sieht es die 20 zuletzt aktiven Sitzungen und überspringt archivierte Sitzungen, sofern Sie nicht danach fragen. Mit sitzungsübergreifendem Messaging kann Claude separat Ihren anderen Claude Code-Sitzungen Nachrichten senden, einschließlich Terminal-Sitzungen. Wenn Claude über diese Oberfläche einer anderen Sitzung eine Nachricht sendet, zeigt Claude Code sie dort als Karte an, die mit dem Titel der sendenden Sitzung und einem Rücklink beschriftet ist, sodass Sie immer erkennen können, woher eine Nachricht stammt. Wenn die empfangende Sitzung gerade mitten in einer Aufgabe ist, hält Claude Code die Nachricht zurück und Claude liest sie, sobald die aktuelle Arbeit abgeschlossen ist. Das empfangende Claude kann antworten, und Claude Code stellt die Antwort über diese Oberfläche zurück zu. Claude kann keine Nachrichten an eine archivierte Sitzung zustellen und teilt Ihnen mit, wenn eine Nachricht nicht ankommt. Claude Code wendet sitzungsübergreifend drei Sicherheitsmechanismen an:
  • Sie erhalten eine Genehmigungskarte, bevor Claude eine Sitzung archiviert, außer im Auto-Modus und im Bypass-permissions-Modus, in denen Claude eine Sitzung ohne Genehmigungskarte archivieren kann. Um gefragt zu werden, wechseln Sie zu Manual.
  • Claude Code prüft jede Nachricht von dieser Oberfläche anhand der Steuerung eingehender Nachrichten der empfangenden Sitzung, auch wenn die empfangende Sitzung selbst kein sitzungsübergreifendes Messaging hat. Wenn Sie crossSessionInbound in der empfangenden Sitzung auf refuse setzen, verwirft Claude Code Nachrichten von dieser Oberfläche. Claude Code meldet diese Ablehnung an die Claude Desktop-App. Vor v2.1.234 verwarf Claude Code jede Nachricht von dieser Oberfläche an eine empfangende Sitzung ohne sitzungsübergreifendes Messaging.
  • Claude Code zitiert jede eingehende Nachricht und ordnet sie der Sitzung zu, die sie gesendet hat, und Claude befolgt beim Handeln auf eine Nachricht weiterhin die eigenen Berechtigungseinstellungen der empfangenden Sitzung.

Eine von Claude vorgeschlagene Aufgabe starten

Wenn Claude außerhalb Ihrer aktuellen Aufgabe etwas bemerkt, das es wert ist, behoben zu werden, schlägt es diese Arbeit als Aufgabe vor. In lokalen und SSH-Sitzungen mit dem aktuellen Layout ist der Vorschlag eine Karte im Chat, und ihre Schaltflächen starten die Aufgabe entweder oder behalten sie in dieser Sitzung:
  • Start: Startet die Aufgabe in einer anderen Sitzung. Standardmäßig läuft die Aufgabe in der Umgebung der aktuellen Sitzung. Die Karte zeigt dann den Status der gestarteten Sitzung, und die Seitenleiste listet die gestartete Sitzung unter der aktuellen Sitzung auf.
  • Do it here: Sendet die Aufgabe als Nachricht an die aktuelle Sitzung
  • Options: Prüfen oder ändern Sie Einstellungen wie Umgebung, Modell, Worktree und Berechtigungen, bevor Sie auf Start klicken
  • Start all: Wenn die Karte mehrere Aufgaben auflistet, wird jede Aufgabe in einer eigenen Sitzung gestartet, ohne zu warten, bis eine Aufgabe abgeschlossen ist, bevor die nächste startet
In Cloud-Sitzungen sowie in lokalen und SSH-Sitzungen mit dem früheren Layout ist der Vorschlag eine Karte Suggested task. Um die Aufgabe so zu starten, wie es die Hauptschaltfläche der Karte angibt, etwa Send to cloud oder Start with worktree, klicken Sie auf diese Schaltfläche. Klicken Sie auf das Caret-Symbol neben der Hauptschaltfläche, um weitere Möglichkeiten zum Starten der Aufgabe zu sehen, einschließlich Do it here.

Lang laufende Aufgaben in der Cloud ausführen

Für große Refactorings, Test-Suites, Migrationen oder andere lang laufende Aufgaben wählen Sie beim Start einer Sitzung im Umgebungsselektor eine Umgebung unter Cloud. Cloud-Sitzungen laufen standardmäßig auf von Anthropic verwalteter Infrastruktur und werden fortgesetzt, auch wenn Sie die App schließen oder Ihren Computer herunterfahren. Schauen Sie jederzeit wieder vorbei, um den Fortschritt zu sehen oder Claude in eine andere Richtung zu lenken. Sie können Cloud-Sitzungen auch über claude.ai/code oder die Claude-Mobil-App überwachen. Cloud-Sitzungen unterstützen außerdem mehrere Repositorys. Wählen Sie die Repositorys aus:
  • Aktuelles Layout: in der Zeile unter dem Eingabefeld, sobald Sie eine Cloud-Umgebung ausgewählt haben.
  • Früheres Layout: oberhalb des Eingabefelds. Um ein weiteres Repository hinzuzufügen, klicken Sie auf + neben dem ausgewählten.
Unter Claude Code in der Cloud verwenden erfahren Sie mehr über die Funktionsweise von Cloud-Sitzungen. Wenn ein Arbeitspaket viele Cloud-Sitzungen benötigt, verwenden Sie ein Projekt: Claude startet die Sitzungen für Sie aus einer einzigen Konversation heraus und verfolgt sie nach. Die Schritte finden Sie unter Ein Projekt erstellen.
Eine Aufgabe in einer SSH-Sitzung kann ebenfalls weiterlaufen, während Desktop getrennt ist, mit einem Claude-Konto kann sie jedoch stoppen, wenn ihre Anmeldung abläuft.

Auf einer anderen Oberfläche fortfahren

Um eine Sitzung an anderer Stelle fortzusetzen, öffnen Sie das Sitzungsmenü über das Caret-Symbol neben dem Sitzungstitel oder über die Zeile der Sitzung in der Seitenleiste und wählen Sie dann Open in:
  • Wählen Sie Cloud, um die Sitzung als Cloud-Sitzung fortzusetzen, wobei Ihre Konversation als Zusammenfassung übernommen wird. Bevor Sie bestätigen, gibt der Dialog an, ob Ihre Dateien ebenfalls verschoben werden und ob diese Sitzung archiviert wird, sobald die Cloud-Sitzung bereit ist. Eine Sitzung, die über SSH oder in WSL läuft, können Sie auf diese Weise nicht verschieben.
  • Wählen Sie einen installierten Editor oder Ihren Dateimanager, um den Ordner der Sitzung auf dem Datenträger dort zu öffnen.

Steuern, welche Sitzungen auf Ihren anderen Geräten angezeigt werden

Eine lokale Sitzung wird auf Ihren anderen Geräten angezeigt, sobald Remote Control sie verbindet. Eine verbundene Sitzung erscheint in der Sitzungsliste unter claude.ai/code und in den Claude-Apps auf Geräten, die bei Ihrem claude.ai-Konto angemeldet sind. Eine lokale Sitzung wird verbunden, wenn Sie Remote Control für sie einschalten oder wenn sie sich beim Start automatisch verbindet:
  • Sie schalten es für diese Sitzung ein: mit dem Schalter Remote Control der Sitzung oder durch Eingabe von /remote-control in ihr Eingabefeld.
  • Sie verbindet sich beim Start: Neue Sitzungen verbinden sich automatisch, solange Connect new sessions to Remote Control unter Settings > Code oder Settings > Claude Code eingeschaltet ist. Wenn Sie diese Einstellung nie geändert haben, folgt Desktop remoteControlAtStartup in Ihren Benutzer- oder verwalteten Einstellungen und danach der Standardeinstellung Ihrer Organisation.
Um zu sehen, ob eine Sitzung verbunden ist, prüfen Sie den Schalter Remote Control in der Karte Environment des Sitzungsdetailbereichs. Um Sitzungen von Ihren anderen Geräten fernzuhalten, schalten Sie Remote Control auf der gewünschten Ebene aus:
  • Eine Sitzung: Schalten Sie ihren Schalter Remote Control aus. In einer Sitzung, die sich beim Start verbunden hat, lässt die Eingabe von /remote-control Remote Control eingeschaltet und zeigt Remote Control is already on. This session connected automatically when it started. an. Klicken Sie in dieser Zeile auf Turn off, um die Verbindung zu trennen.
  • Neue Desktop-Sitzungen auf diesem Computer: Schalten Sie Connect new sessions to Remote Control unter Settings > Code oder Settings > Claude Code aus. Wenn die Einstellung bereits als ausgeschaltet angezeigt wird, schalten Sie sie ein und wieder aus, damit Desktop Ihre Auswahl speichert. Nach dem Speichern hat sie Vorrang vor remoteControlAtStartup und den Standardwerten.
  • Jede Sitzung auf diesem Computer, einschließlich der CLI: Setzen Sie disableRemoteControl in ~/.claude/settings.json auf true, um zu verhindern, dass sich Sitzungen verbinden. Eine Sitzung, die beim Speichern der Datei bereits verbunden war, bleibt verbunden, bis Sie Remote Control für sie ausschalten.
Um eine Sitzung auszublenden, die bereits auf Ihren anderen Geräten angezeigt wird, archivieren Sie sie in Desktop. Desktop archiviert auch die Remote-Control-Kopie der Sitzung, sodass sie aus der Standard-Sitzungsliste auf diesen Geräten verschwindet. Informationen zum Anzeigen oder Löschen dort finden Sie unter Sitzungen archivieren.

Sitzungen aus Dispatch

Dispatch ist eine dauerhafte Konversation mit Claude, die in Cowork angesiedelt ist. Sie senden Dispatch eine Aufgabe, und Dispatch entscheidet, wie sie bearbeitet wird. Eine Aufgabe kann auf zwei Arten zu einer Code-Sitzung werden: Sie fordern direkt eine an, etwa „Öffne eine Claude Code-Sitzung und behebe den Login-Bug“, oder Dispatch entscheidet, dass es sich bei der Aufgabe um Entwicklungsarbeit handelt, und startet selbstständig eine. Aufgaben, die typischerweise an Code weitergeleitet werden, sind das Beheben von Bugs, das Aktualisieren von Abhängigkeiten, das Ausführen von Tests oder das Öffnen von Pull Requests. Recherche, Dokumentbearbeitung und Tabellenkalkulationsarbeit bleiben in Cowork.

Eine von Dispatch gestartete Sitzung verfolgen

Die von Dispatch gestartete Sitzung erscheint zusammen mit Ihren anderen Sitzungen in der Seitenleiste des Code-Tabs. Bei der Standardgruppierung und -sortierung der Seitenleiste finden Sie sie als neueste Sitzung in der Gruppe des Ordners, in dem sie läuft. Sie erhalten eine Push-Benachrichtigung auf Ihrem Telefon, wenn sie abgeschlossen ist oder Ihre Genehmigung benötigt. Wenn Sie die Computernutzung aktiviert haben, können auch von Dispatch gestartete Code-Sitzungen sie verwenden. App-Genehmigungen in diesen Sitzungen laufen nach 30 Minuten ab und werden erneut abgefragt, anstatt wie bei regulären Code-Sitzungen für die gesamte Sitzung zu gelten.

Dispatch einrichten

  • Pläne: Dispatch erfordert einen Pro-, Max- oder Ultra-Plan und ist in Team- oder Enterprise-Plänen nicht verfügbar
  • Einrichtung, Kopplung und Dispatch-Einstellungen: siehe den Dispatch-Hilfeartikel
Dispatch ist eine von mehreren Möglichkeiten, mit Claude zu arbeiten, wenn Sie nicht an Ihrem Terminal sind. Einen Vergleich mit den anderen Optionen finden Sie unter Plattformen und Integrationen.

Claude Code erweitern

Verbinden Sie externe Dienste, fügen Sie wiederverwendbare Workflows hinzu, passen Sie Claudes Verhalten an und konfigurieren Sie Vorschauserver. Um Konnektoren, Skills und Plugins an einem Ort zu verwalten, klicken Sie auf Anpassen in der Seitenleiste. Cowork in der Desktop-App bezieht seine Skills, Plugins und Konnektoren aus dieser Anpassungskonfiguration, die über Ihr claude.ai-Konto synchronisiert wird, nicht aus dem CLI-Verzeichnis ~/.claude. Claude Code lädt auch die Skills und Plugins, die für Ihr claude.ai-Konto aktiviert sind, in Terminalsitzungen, in denen Sie sich mit demselben Konto anmelden. Siehe Skills synchronisiert von claude.ai und Plugins synchronisiert von claude.ai.

Externe Tools verbinden

Konnektoren sind MCP-Server mit einem grafischen Setup-Ablauf. Klicken Sie vor oder während der Sitzung auf + neben dem Eingabefeld, um Konnektoren in einer lokalen oder SSH-Sitzung mit einem Claude-Konto hinzuzufügen. Wählen Sie Konnektoren hinzufügen aus, um das Konnektorverzeichnis zu öffnen. Wenn das Menü stattdessen Konnektoren anzeigt, w��hlen Sie diesen Eintrag und dann Konnektoren durchsuchen aus.
Diese Fälle werden auf anderen Seiten behandelt:
Nach der Verbindung kann Claude Ihren Kalender lesen, Nachrichten senden, Issues erstellen und direkt mit Ihren Tools interagieren. Sie können Claude fragen, welche Konnektoren in Ihrer Sitzung konfiguriert sind. Um Konnektoren zu verwalten oder zu trennen, klicken Sie in der Seitenleiste auf Anpassen und öffnen Sie Konnektoren. Für Integrationen, die nicht in Konnektoren aufgelistet sind, fügen Sie MCP-Server manuell über Einstellungsdateien hinzu. Sie können auch benutzerdefinierte Konnektoren erstellen.

Skills verwenden

Skills erweitern, was Claude tun kann. Claude lädt sie automatisch, wenn sie relevant sind, oder Sie können eine direkt aufrufen: Geben Sie / im Eingabefeld ein oder klicken Sie auf die Schaltfläche + und wählen Sie Slash-Befehle aus, um zu sehen, was verfügbar ist. Dies umfasst integrierte Befehle, Ihre benutzerdefinierten Skills, Projekt-Skills aus Ihrer Codebasis und Skills aus allen installierten Plugins. Wählen Sie einen aus und er wird im Eingabefeld hervorgehoben angezeigt. Geben Sie Ihre Aufgabe danach ein und senden Sie wie gewohnt. Sie können einen Befehl senden, während Claude arbeitet, genauso wie jede andere Nachricht, und die Sitzung kehrt in den Leerlauf zurück, sobald der Turn beendet ist. Lokale Sitzungen laden Ihre persönlichen Skills aus ~/.claude/skills/. Eine SSH-Sitzung liest ~/.claude/skills/ aus dem Home-Verzeichnis des Remote-Hosts, nicht von Ihrem Computer. Lokale und Cloud-Sitzungen laden auch die Skills, die für Ihr claude.ai-Konto aktiviert sind, außer lokale Sitzungen, wenn Ihre Organisation disableSideloadFlags setzt. Cloud-Sitzungen laden sie statt aus ~/.claude/skills/, wie Skills in Cowork- und Cloud-Sitzungen beschreibt.

Plugins installieren

Plugins sind wiederverwendbare Pakete, die Skills, Agents, Hooks, MCP-Server und LSP-Konfigurationen zu Claude Code hinzufügen. Sie können Plugins aus der Desktop-App installieren, ohne das Terminal zu verwenden. Klicken Sie in einer lokalen Sitzung oder einer SSH-Sitzung auf + neben dem Eingabefeld und wählen Sie Plugins hinzufügen aus, um den Plugin-Browser zu öffnen. Wenn das Menü stattdessen Plugins anzeigt, wählen Sie diesen Eintrag und dann Plugins durchsuchen aus, oder Plugins verwalten, um Plugins zu aktivieren, zu deaktivieren oder zu deinstallieren. Sie können Plugins auf Ihr Benutzerkonto, ein bestimmtes Projekt oder nur lokal beschränken. Wenn Ihre Organisation Plugins zentral verwaltet, sind diese Plugins in Desktop-Sitzungen auf die gleiche Weise verfügbar wie in der CLI, außer den Plugins, die die Desktop-App unter disableSideloadFlags zurückhält. Der Plugin-Browser ist in Cloud-Sitzungen nicht verfügbar, und Plugins, die Sie aus der Desktop-App installieren, sind nicht für Cloud-Sitzungen verfügbar. Eine Cloud-Sitzung installiert auch keine Plugins, die das Repository unter .claude/settings.json deklariert, wie Was wird aus Ihrer Einrichtung übernommen erklärt. Plugins sind in WSL-Sitzungen nicht verfügbar. Für die vollständige Plugin-Referenz einschließlich der Erstellung eigener Plugins siehe Plugins.

Vorschauserver konfigurieren

Claude erkennt automatisch Ihre Dev-Server-Einrichtung und speichert die Konfiguration in .claude/launch.json im Stammverzeichnis des Ordners, den Sie beim Starten der Sitzung ausgewählt haben. Die Vorschau verwendet diesen Ordner als Arbeitsverzeichnis. Wenn Sie also einen übergeordneten Ordner ausgewählt haben, werden Unterordner mit ihren eigenen Dev-Servern nicht automatisch erkannt. Um mit dem Server eines Unterordners zu arbeiten, starten Sie entweder eine Sitzung direkt in diesem Ordner oder fügen Sie eine Konfiguration manuell hinzu. Um anzupassen, wie Ihr Server startet, z. B. um yarn dev statt npm run dev zu verwenden oder den Port zu ändern, bearbeiten Sie .claude/launch.json. Die Datei unterstützt JSON mit Kommentaren.
Sie können mehrere Konfigurationen definieren, um verschiedene Server aus demselben Projekt auszuführen, z. B. ein Frontend und eine API. Siehe die Beispiele unten.

Änderungen automatisch überprüfen

Wenn autoVerify aktiviert ist, überprüft Claude automatisch Code-Änderungen nach dem Bearbeiten von Dateien. Es macht Screenshots, prüft auf Fehler und bestätigt, dass Änderungen funktionieren, bevor es seine Antwort abschließt. Auto-Verify ist standardmäßig aktiviert. Deaktivieren Sie es pro Projekt, indem Sie "autoVerify": false zu .claude/launch.json hinzufügen, oder schalten Sie Änderungen automatisch überprüfen im ⋮-Menü des Browser-Bereichs aus.
Wenn deaktiviert, sind Vorschau-Tools weiterhin verfügbar und Sie können Claude jederzeit bitten, zu überprüfen. Auto-Verify macht es automatisch nach jeder Bearbeitung.

Konfigurationsfelder

Jeder Eintrag im Array configurations akzeptiert die folgenden Felder: Verwenden Sie runtimeExecutable mit runtimeArgs, um einen Dev-Server über einen Package-Manager zu starten. Zum Beispiel führt "runtimeExecutable": "npm" mit "runtimeArgs": ["run", "dev"] npm run dev aus. Verwenden Sie program, wenn Sie ein eigenständiges Skript haben, das Sie direkt mit node ausführen möchten. Zum Beispiel führt "program": "server.js" node server.js aus. Übergeben Sie zusätzliche Flags mit args. Standardmäßig öffnet die Vorschau http://localhost:<port>. Legen Sie url fest, wenn Ihr Server eine andere Adresse benötigt. Häufige Fälle sind Server, die lokales HTTPS erfordern, Apps, die *.localhost-Subdomänen verwenden, und Apps, die Sie durch eine Umleitung anmelden.
Localhost-Adressen öffnen sich direkt, genau wie die Standard-Port-Adresse. Dies umfasst localhost, jede *.localhost-Subdomain, 127.0.0.1 und ::1. Aus Sicherheitsgründen muss eine Localhost-url nur der Ursprung Ihres Servers sein, ohne Pfad oder Abfrage. Sein Port muss dem Port des Eintrags entsprechen. Um eine bestimmte Seite anzuzeigen, bitten Sie Claude, dorthin zu navigieren, nachdem die Vorschau geöffnet wird. Eine Localhost-url mit einem Pfad, einer Abfrage oder einem nicht übereinstimmenden Port wird als Konfigurationsfehler gemeldet, der die URL benennt und die Korrektur anzeigt. Für jede andere Adresse fragt Desktop beim ersten Öffnen der Vorschau um Ihre Berechtigung, genauso wie wenn Sie in der Vorschau zu einer neuen Website navigieren. Externe Adressen können Pfade enthalten. Wählen Sie Immer zulassen, um die Eingabeaufforderung für diese Website in Zukunft zu überspringen. Organisationsrichtlinien, die externe Websites in der Vorschau einschränken, gelten weiterhin. Um eine Vorschau eines Servers anzuzeigen, den Sie bereits selbst ausführen, legen Sie url ohne einen Befehl fest. Claude verbindet die Vorschau mit Ihrem laufenden Server, anstatt einen zu starten:
Die url muss http oder https sein und darf keinen Benutzernamen oder Passwort enthalten.

Port-Konflikte

Das Feld autoPort steuert, was passiert, wenn Ihr bevorzugter Port bereits verwendet wird:
  • true: Claude findet und verwendet automatisch einen freien Port. Geeignet für die meisten Dev-Server.
  • false: Claude schlägt mit einem Fehler fehl. Verwenden Sie dies, wenn Ihr Server einen bestimmten Port verwenden muss, z. B. für OAuth-Callbacks oder CORS-Allowlists.
  • Nicht gesetzt (Standard): Ihr Server erhält den nächsten freien Port, wie bei true, außer in dem unten beschriebenen Fall. Vor Claude Desktop v2.37337.0 fragt Claude stattdessen, ob der Server genau diesen Port benötigt, und speichert Ihre Antwort dann in launch.json.
Wenn Ihr bevorzugter Port belegt ist und autoPort nicht gesetzt ist, bleibt Ihr Server gestoppt, wenn alle folgenden Bedingungen zutreffen:
  • Sie starten den Server über ein npm-, yarn-, pnpm- oder bun-Skript.
  • Ihr bevorzugter Port ist in diesem Skript fest codiert, oder Claude kann das Skript nicht untersuchen.
  • Sie übergeben den Port nicht in runtimeArgs.
Geben Sie in diesem Fall den Port frei, entfernen Sie den fest codierten Wert oder ändern Sie port so, dass er dem Skript entspricht. Das Setzen von "autoPort": true funktioniert stattdessen nur bei einem Skript, das PORT liest. Lassen Sie Ihren Server seinen Port aus der Umgebungsvariable PORT lesen, die den zugewiesenen Port enthält. Wenn Claude Ihren Server auf einen anderen Port verlegt, schreibt es außerdem einen --port- oder -p-Wert in runtimeArgs entsprechend um.

Beispiele

Diese Konfigurationen zeigen häufige Setups für verschiedene Projekttypen:
Diese Konfiguration führt eine Next.js-App mit Yarn auf Port 3000 aus:

Umgebungskonfiguration

Die Umgebung, die Sie beim Starten einer Sitzung wählen, bestimmt, wo Claude ausgeführt wird und wie Sie sich verbinden:
  • Lokal: läuft auf Ihrem Computer mit direktem Zugriff auf Ihre Dateien
  • Cloud: läuft standardmäßig auf Anthropic-verwalteter Infrastruktur. Sitzungen werden fortgesetzt, auch wenn Sie die App schließen.
  • SSH: läuft auf einem Remote-Computer, mit dem Sie sich über SSH verbinden, z. B. Ihre eigenen Server, Cloud-VMs oder Dev-Container. Eine laufende Aufgabe kann weiterlaufen, während Desktop nicht verbunden ist, mit einem Claude-Konto kann sie jedoch stoppen, wenn ihre Anmeldung abläuft.
  • WSL (Windows): läuft in einer WSL 2-Distribution auf Ihrem Computer und verwendet deren Linux-Toolchain und native Pfade

Eine gespeicherte Umgebung erstellen

Eine gespeicherte Umgebung ist ein Eintrag in der Umgebungsauswahl, der festhält, wo Claude ausgeführt wird, sodass Sie spätere Sitzungen dort starten können. Eine lokale oder SSH-Umgebung enthält außerdem die Ordner, in denen Claude arbeitet. Gespeicherte lokale und SSH-Umgebungen sind Teil des aktuellen Layouts. Wenn Sie sie nicht sehen, prüfen Sie daher, welches Layout Sie haben und wie Sie das aktuelle erhalten.
1

Dialog New environment öffnen

Öffnen Sie die Umgebungsauswahl unter dem Eingabefeld und wählen Sie unten in ihrem Menü New environment aus.
2

Festlegen, wo Claude läuft

Wählen Sie den Tab Local, SSH oder Cloud aus und füllen Sie das Formular auf diesem Tab aus. Wählen Sie auf dem Tab SSH eine Verbindung und einen Ordner auf dem Remote-Rechner aus.
3

Umgebung speichern

Wählen Sie Create environment aus, auf dem Tab Cloud Add environment.

Umgebungen, die Desktop für Sie erstellt

Wenn die Umgebungsauswahl lokale oder SSH-Umgebungen auflistet, die Sie nicht erstellt haben, hat Desktop sie für Sie erstellt. Wenn Sie den Code-Tab im aktuellen Layout zum ersten Mal öffnen, erstellt Desktop bis zu acht Umgebungen. Die Umgebungen stammen aus den lokalen und SSH-Ordnern, die Sie im letzten Monat am häufigsten verwendet haben. Sie können sie bearbeiten oder löschen.

Eine gespeicherte Umgebung verwenden, bearbeiten oder entfernen

Suchen Sie den Eintrag der Umgebung in der Umgebungsauswahl:
  • Eine Sitzung starten: Wählen Sie den Eintrag aus.
  • Bearbeiten oder löschen: Bewegen Sie den Mauszeiger über den Eintrag und klicken Sie auf das Zahnradsymbol. Um eine lokale oder SSH-Umgebung zu löschen, klicken Sie in Edit environment auf Delete environment.
  • Cloud-Umgebungen archivieren: siehe Eine Umgebung archivieren.

Umgebungsvariablen in lokalen Sitzungen

Um eine Umgebungsvariable für eine lokale Sitzung zu setzen, fügen Sie sie einer gespeicherten lokalen Umgebung hinzu und starten Sie dann eine neue Sitzung aus dieser Umgebung. Für Variablen wie PATH und CLAUDE_CONFIG_DIR gelten eigene Anweisungen: Wenn unter macOS oder Linux eine Variable, die Sie mit export setzen, in einem Befehl, den Claude ausführt, fehlt oder falsch ist, siehe Exportierte Variable fehlt oder ist falsch in Befehlen, die Claude ausführt.

Umgebungsvariablen für lokale Sitzungen setzen

Fügen Sie die Variablen einer gespeicherten lokalen Umgebung hinzu und starten Sie Ihre Sitzungen von dort. Desktop setzt einige Variablen selbst, etwa API_TIMEOUT_MS, und Ihre Sitzungen erhalten für diese den Wert von Desktop statt Ihres eigenen.
Wenn eine neue Sitzung unter dem Eingabefeld keine Umgebung anzeigt, haben Sie das frühere Layout, in dem es keine gespeicherten lokalen Umgebungen gibt. Verwenden Sie stattdessen den Editor für die lokale Umgebung.
1

Das Formular einer lokalen Umgebung öffnen

  • Um eine gespeicherte lokale Umgebung zu erstellen: Wählen Sie unten im Menü der Umgebungsauswahl New environment und dann den Tab Local
  • Um eine vorhandene zu ändern: Bewegen Sie in der Umgebungsauswahl den Mauszeiger über eine gespeicherte Umgebung unter Local und klicken Sie auf das Zahnradsymbol, um Edit environment zu öffnen
2

Die Variablen eingeben

Wählen Sie Environment variables, geben Sie pro Zeile ein KEY=value ein und wählen Sie Done.
3

Die Umgebung speichern

Wählen Sie Create environment oder Save.
Nur Sitzungen, die Sie aus dieser Umgebung starten, erhalten die Variablen. Um eine Variable für jede lokale Sitzung zu setzen, fügen Sie sie dem Schlüssel env in Ihrer Datei ~/.claude/settings.json hinzu. Claude Code ignoriert den Wert, wenn diese Variable bereits in der Umgebung vorhanden ist, mit der Desktop die Sitzung startet. Die vollständige Liste der unterstützten Variablen finden Sie unter Umgebungsvariablen.

Umgebungsvariablen für Dev-Server setzen

Um einem Dev-Server ein Secret zu übergeben, ohne es in launch.json zu committen, setzen Sie es an einer dieser Stellen und starten Sie Desktop anschließend neu:
  • macOS und Linux: Exportieren Sie es in Ihrem Shell-Profil
  • Windows: Fügen Sie es Ihren Benutzer- oder Systemumgebungsvariablen hinzu
  • Jede Plattform: Speichern Sie es im Editor für die lokale Umgebung, sofern Sie ihn öffnen können
Dev-Server erhalten nicht die Variablen, die Sie einer gespeicherten Umgebung oder ~/.claude/settings.json hinzufügen.

Den Editor für die lokale Umgebung verwenden

Um den Editor für die lokale Umgebung zu öffnen, klicken Sie auf das Zahnradsymbol am Eintrag für Ihren eigenen Computer, nicht auf das an einer gespeicherten Umgebung:
  • Auswahl unter dem Eingabefeld: Bewegen Sie den Mauszeiger über den Eintrag für Ihren Computer, den ersten unter Local. Wenn ein Zahnradsymbol erscheint, klicken Sie darauf. Falls nicht, ist der Editor nicht verfügbar. Setzen Sie die Variable dann auf anderem Weg für lokale Sitzungen oder Dev-Server.
  • Auswahl über dem Eingabefeld: Bewegen Sie den Mauszeiger über Local und klicken Sie auf das Zahnradsymbol
Geben Sie pro Zeile ein KEY=value ein und wählen Sie Save changes aus. Variablen, die Sie hier speichern, werden verschlüsselt auf Ihrem Rechner abgelegt. Lokale Sitzungen erhalten sie, mit Ausnahme jeder Variable, die Desktop selbst setzt, etwa API_TIMEOUT_MS. Starten Sie Desktop neu, um Ihre Variablen an Dev-Server zu übergeben.

Exportierte Variable fehlt oder ist falsch in Befehlen, die Claude ausführt

Wenn ein Befehl, den Claude unter macOS oder Linux ausführt, eine Variable nicht erhält, die Sie mit export in ~/.zshrc oder ~/.bashrc gesetzt haben, oder den falschen Wert erhält, versuchen Sie Folgendes in dieser Reihenfolge:
1

Eine neue Sitzung starten

Bitten Sie Claude, den Befehl erneut auszuführen.
2

Desktop beenden und erneut öffnen

Starten Sie dann eine neue Sitzung.
3

Ihre gespeicherten Variablen prüfen

Wenn ein Befehl den falschen Wert erhält, prüfen Sie, ob Sie die Variable auch in einer gespeicherten Umgebung oder im Editor für die lokale Umgebung gesetzt haben. Falls ja, ändern Sie den Wert dort und starten Sie eine neue Sitzung.
4

Eine gespeicherte Umgebung verwenden

Fügen Sie die Variable einer gespeicherten lokalen Umgebung hinzu und starten Sie dann eine neue Sitzung aus dieser Umgebung. Für eine Variable wie PATH, CLAUDE_CONFIG_DIR oder API_TIMEOUT_MS folgen Sie stattdessen der jeweiligen Anleitung.
Vor v2.1.304 übergibt Claude Code exportierte Variablen nicht an Befehle. Prüfen Sie daher, welche Version die Sitzung ausführt.

Umgebungsvariablen, die Desktop selbst setzt

Wenn Sie API_TIMEOUT_MS oder ANTHROPIC_BASE_URL setzen und sich in Ihren lokalen Sitzungen nichts ändert, liegt das daran, dass Desktop diese Variablen, neben anderen, selbst setzt. Eine lokale Sitzung erhält den Wert von Desktop, unabhängig davon, ob Sie Ihren Wert in Ihrem Shell-Profil, Ihren Windows-Benutzer- oder Systemvariablen, im Editor für die lokale Umgebung oder in einer gespeicherten Umgebung setzen. Ihren Wert in eine Einstellungsdatei zu verschieben, hilft nicht, weil Claude Code diesen Wert in einer lokalen Sitzung ignoriert.

Extended Thinking ausschalten

Extended Thinking ist standardmäßig aktiviert. Das verbessert die Leistung bei komplexen Denkaufgaben, verbraucht aber zusätzliche Token. Um es auszuschalten, setzen Sie MAX_THINKING_TOKENS in einer gespeicherten lokalen Umgebung oder im Editor für die lokale Umgebung auf 0. Thinking wird dann über die Anthropic API ausgeschaltet, außer bei Opus 5.5, Sonnet 5.5, Haiku 5.5 und den Fable-Modellen, die immer Extended Thinking verwenden. Wählen Sie bei Opus 5 außerdem den Aufwand high oder niedriger aus, bevor Sie die Sitzung starten. Öffnen Sie im aktuellen Layout die Modellauswahl und wählen Sie unter Effort eine Stufe aus. Wenn Sie die Sitzung mit einer höheren Stufe gestartet haben, starten Sie eine neue mit high oder niedriger.

Feste Thinking-Budgets

Bei Modellen mit adaptiver Argumentation ignoriert Claude Code die Zahl selbst in einem positiven MAX_THINKING_TOKENS-Wert, da stattdessen die adaptive Argumentation die Denktiefe steuert. Bei Opus 4.6 und Sonnet 4.6 setzen Sie CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING auf 1, um ein festes Thinking-Budget zu verwenden; Fable-Modelle, Sonnet 5 und später, Haiku 5.5 sowie Opus 4.7 und später verwenden immer adaptive Argumentation und haben keinen Modus mit festem Budget.

Lokale Sitzungen auf verwalteten Geräten

Wenn der Eintrag für Ihren Computer in der Umgebungsauswahl ausgegraut ist und den Tooltip Disabled by your organization zeigt, hat Ihr Administrator lokale Sitzungen ausgeschaltet. Unter Windows ist der Eintrag WSL, dessen Verfügbarkeit auf verwalteten Geräten separat geregelt wird, auf die gleiche Weise ausgegraut. Neue Sitzungen verwenden standardmäßig die erste SSH-Verbindung, sofern eine konfiguriert ist. Wenn Sie versuchen, eine bestehende lokale Sitzung fortzusetzen, zeigt Desktop eine Meldung an, dass lokale Sitzungen auf diesem Gerät nicht verfügbar sind. Gespeicherte lokale Umgebungen zeigen diesen Fehler, wenn Sie eine davon auswählen: Couldn’t switch environments: the Local environment isn’t available anymore. Wählen Sie stattdessen eine SSH- oder Cloud-Umgebung aus oder wenden Sie sich an Ihr IT-Team.

Cloud-Sitzungen

Cloud-Sitzungen werden im Hintergrund fortgesetzt, auch wenn Sie die App schließen. Die Nutzung wird auf Ihre Abonnementplanlimits angerechnet, ohne separate Compute-Gebühren. Um eine Cloud-Umgebung hinzuzufügen, zu bearbeiten oder zu archivieren, öffnen Sie die Umgebungsauswahl:
  • Eine Umgebung hinzufügen: Wählen Sie unten im Menü der Auswahl New environment aus, dann den Tab Cloud des Dialogs New environment
  • Eine Ihrer eigenen Umgebungen bearbeiten oder archivieren: fahren Sie mit der Maus darüber und klicken Sie auf das Zahnrad-Symbol
Siehe Cloud-Umgebungen konfigurieren für Details zur Konfiguration von Netzwerkzugriff und Umgebungsvariablen.

SSH-Sitzungen

SSH-Sitzungen ermöglichen es Ihnen, Claude Code auf einem Remote-Computer auszuführen, während Sie die Desktop-App als Ihre Schnittstelle verwenden. Dies ist nützlich für die Arbeit mit Codebases, die auf Cloud-VMs, Dev-Containern oder Servern mit spezifischer Hardware oder Abhängigkeiten vorhanden sind.
Wenn Sie Desktop mit einem Drittanbieter verwenden, benötigen SSH-Sitzungen eine eigene Einrichtung. Siehe SSH remote sessions in Claude Desktop on 3P.
Fügen Sie im Dialog New environment eine SSH-Verbindung hinzu und starten Sie dann eine Sitzung über diese Verbindung. Wenn eine neue Sitzung unter dem Eingabefeld keine Umgebung anzeigt, haben Sie das frühere Layout. Siehe Prüfen, welches Layout Sie haben.
1

Dialog New environment öffnen

Bevor Sie eine Sitzung starten, öffnen Sie die Umgebungsauswahl unter dem Eingabefeld und wählen Sie unten in ihrem Menü New environment aus.
2

Verbindung hinzufügen

Öffnen Sie auf dem Tab SSH des Dialogs New environment die Liste Host, wählen Sie Add SSH connection… aus und füllen Sie die Verbindungsdetails aus:
  • Name: eine aussagekräftige Bezeichnung für diese Verbindung.
  • SSH host: user@hostname oder ein in ~/.ssh/config definierter Host.
  • SSH port: standardmäßig 22, wenn das Feld leer bleibt, oder der Port aus Ihrer SSH-Konfiguration.
  • SSH key (optional): Pfad zu Ihrem privaten Schlüssel, etwa ~/.ssh/id_ed25519. Lassen Sie das Feld leer, um Ihre SSH-Konfiguration oder Ihren SSH-Agent zu verwenden.
  • Worktree folder: ein Ordner auf dem Remote-Rechner, etwa ~/worktrees, in dem neue Sitzungen ihre Worktrees erstellen. Lassen Sie das Feld leer, um den Standard des Remote-Rechners zu verwenden.
Wählen Sie dann Add SSH connection aus.
3

Sitzung auf der Verbindung starten

Wählen Sie einen Ordner auf dem Remote-Rechner aus und klicken Sie auf Create environment. Rechner und Ordner bleiben als gespeicherte Umgebung für spätere Sitzungen zusammen erhalten. Desktop wählt sie für die neue Sitzung aus. Geben Sie also Ihre Aufgabe ein und drücken Sie Enter.
Auf dem Remote-Computer kann Linux, macOS oder Windows laufen. Desktop installiert Claude Code auf dem Remote-Computer automatisch beim ersten Verbindungsaufbau. Nach der Verbindung unterstützen SSH-Sitzungen Berechtigungsmodi, Konnektoren, Plugins und MCP-Server.

Anforderungen an den Remote-Computer für SSH-Sitzungen

Ein Linux- oder macOS-Remote-Computer benötigt einen unterstützten Prozessor, einen SSH-Server mit SFTP, einen Installationsordner, der nicht mit noexec eingehängt ist, eine funktionierende Shell und Netzwerkzugriff. Prüfen Sie jede Anforderung, bevor Sie sich verbinden oder wenn eine Verbindung nach der Anmeldung fehlschlägt:
  • System: ein x86_64- oder arm64-Prozessor. Der Computer muss außerdem die Systemanforderungen von Claude Code erfüllen. Unter Linux benötigt Claude Code glibc 2.17 oder höher oder musl. Um festzustellen, welches davon der Computer hat, führen Sie dort ldd --version aus. Installieren Sie auf einer musl-basierten Distribution wie Alpine Linux außerdem die Pakete, die Claude Code benötigt.
  • SFTP: Der SSH-Server muss das SFTP-Subsystem anbieten, das durch eine Zeile Subsystem sftp in seiner sshd_config aktiviert wird. Verbinden Sie sich zur Überprüfung in einem Terminal auf Ihrem Computer mit sftp mit demselben Host und Port. Ein funktionierender Server zeigt die Eingabeaufforderung sftp> an.
  • MaxSessions 1 auf dem Server: Um sich mit einem Server zu verbinden, dessen sshd_config MaxSessions 1 setzt, tun Sie eines der Folgenden:
    • Ihr Computer läuft unter macOS oder Linux: Aktualisieren Sie auf Claude Desktop v3.1623.0 oder neuer
    • Ihr Computer läuft unter Windows: Stellen Sie sicher, dass Desktop sich über den OpenSSH-Client verbindet, da sich der integrierte SSH-Client von Desktop nicht mit diesem Server verbinden kann
    • Sie können den Server ändern: Erhöhen Sie MaxSessions, zum Beispiel auf den OpenSSH-Standardwert 10
  • Anmeldungen mit MaxSessions 1: Verwenden Sie eine Anmeldung, die ohne Abfrage funktioniert, etwa einen Schlüssel, den Ihr SSH-Agent hält. Desktop meldet sich bei jedem Verbinden oder erneuten Verbinden mindestens zweimal an. Rechnen Sie mit mindestens einer weiteren Anmeldung für jeden Terminal-Tab und für jede Desktop-Sitzung, in der Sie Befehle ausführen, die mit ! beginnen. Für Befehle, die Claude ausführt, fällt keine an.
  • Einmalcodes mit MaxSessions 1: Wenn jede Anmeldung Sie abfragt, wie bei Einmalcodes, schlagen !-Befehle fehl. Führen Sie diese Befehle stattdessen in einem Terminal-Tab aus, der in seinem eigenen Bereich abfragt.
  • Installationsordner: Desktop installiert ein Hilfsprogramm und Claude Code unter ~/.claude/remote/ in Ihrem Home-Verzeichnis. Es führt sie von dort aus, daher darf dieser Ordner nicht auf einem mit noexec eingehängten Dateisystem liegen. Planen Sie etwa 1 GB Speicherplatz im Home-Verzeichnis jedes Benutzers ein, der sich verbindet. Was dieser Ordner enthält, erfahren Sie unter Dateien und Prozesse auf dem Remote-Computer.
  • Shell: Die für Ihr Konto auf dem Remote-Computer festgelegte Shell muss über SSH gesendete Befehle ausführen, wie es Bash, Zsh und sh tun
  • Netzwerk: Claude Code läuft auf dem Remote-Computer und stellt seine Netzwerkanfragen von dort aus, daher benötigt der Computer den Netzwerkzugriff, den Claude Code erfordert. Wenn der Computer Claude Code nicht herunterladen kann, lädt Desktop es auf Ihren Computer herunter und überträgt es hoch. Die übrigen Anfragen von Claude Code gehen weiterhin vom Remote-Computer aus. Wenn diese Anfragen auf einem Linux-Remote-Computer einen Proxy benötigen, legen Sie ihn für SSH-Sitzungen fest.

Den Host-Schlüssel eines Remote-Rechners prüfen

Ein Host-Schlüssel ist der Schlüssel, den ein Remote-Rechner vorlegt, um nachzuweisen, welcher Rechner er ist, und ein Fingerabdruck ist eine Kurzform dieses Schlüssels. Wenn Sie einem Schlüssel vertrauen, speichert Ihr Computer ihn und verbindet sich mit allem, was ihn vorlegt, ohne erneut zu fragen. Prüfen Sie einen Schlüssel, bevor Sie ihm vertrauen, denn möglicherweise fängt etwas die Verbindung ab. Stellen Sie zunächst anhand der Stelle, an der Sie den Fingerabdruck sehen, fest, zu welchem Rechner der Schlüssel gehört:
  • Desktop fragt Connect to <host> for the first time?, oder Sie haben Review new key gewählt: der Rechner, den Desktop nennt, <host>
  • Desktop fragt Connect through <jump host> for the first time?: der Jump-Host, also der Rechner, über den Ihre Verbindung läuft, nicht der Rechner, den Sie erreichen möchten
  • ssh fragt oder warnt in einem Terminal: der Rechner, den die Meldung nennt, der möglicherweise nicht der ist, den Sie eingegeben haben
Besorgen Sie sich den eigenen Fingerabdruck dieses Rechners vom Rechner selbst, nicht über die Verbindung, die Sie prüfen:
  • Jemand anderes verwaltet den Rechner: Fragen Sie diese Person nach dem Fingerabdruck seines Host-Schlüssels
  • Sie verwalten ihn, und er läuft unter Linux oder macOS: Führen Sie ssh-keygen -lf /etc/ssh/ssh_host_<type>_key.pub darauf aus, an seiner Konsole oder über eine Verbindung, der Sie bereits vertrauen. Verwenden Sie für <type> den Schlüsseltyp, den Desktop oder ssh neben dem Fingerabdruck anzeigt, in Kleinbuchstaben: ed25519 für ED25519 oder ssh-ed25519.
Vergleichen Sie dann den eigenen Fingerabdruck des Rechners mit dem, der Ihnen angezeigt wurde:
  • Sie stimmen überein: Vertrauen Sie dem Schlüssel. Wählen Sie in Desktop Trust and connect oder Trust new key, oder antworten Sie im Terminal mit yes.
  • Sie unterscheiden sich, oder Sie können nicht prüfen: Verbinden Sie sich nicht. Wählen Sie in Desktop Cancel, oder antworten Sie im Terminal mit no. Wenn jemand anderes den Rechner verwaltet, teilen Sie dieser Person mit, welcher Fingerabdruck Ihnen angezeigt wurde.
Wenn ein Schritt zur Fehlerbehebung Sie hierher geführt hat, kehren Sie nach beiden Ergebnissen zu diesem Schritt zurück.

Einen Proxy oder ein CA-Zertifikat für SSH-Sitzungen festlegen

Wenn ein Linux-Remote-Computer das Internet über einen Proxy erreicht oder ein CA-Zertifikat benötigt, fügen Sie die Proxy- und CA-Variablen dort unter env in ~/.claude/settings.json hinzu. Fügen Sie sie auch dann hinzu, wenn Sie sie auf diesem Computer bereits in ~/.profile, ~/.bash_profile, ~/.zprofile oder ~/.zshrc exportieren. In einer SSH-Sitzung erhält Claude Code die Variablen aus diesen Dateien nicht, auch wenn claude in einem Terminal auf diesem Rechner sie erhält. Die Sitzung kann dann hängen oder The connection from … to the API failed oder Authentication failed anzeigen, und eine erneute Anmeldung hilft nicht.
1

Variablen hinzufügen

Verwenden Sie für die CA-Datei NODE_EXTRA_CA_CERTS, da Claude Code einer CA aus SSL_CERT_FILE in ~/.claude/settings.json nicht vertraut. Dieses Beispiel legt einen Proxy und eine CA-Datei fest:
~/.claude/settings.json
2

Nachricht erneut senden

Senden Sie Ihre Nachricht erneut, da eine Variable, die Sie in dieser Datei hinzufügen oder ändern, innerhalb von Sekunden wirksam wird. Starten Sie eine neue Sitzung, wenn es weiterhin fehlschlägt.
Prüfen Sie, ob der Linux-Remote-Computer die Proxy- oder CA-Variable an anderer Stelle setzt, da Sitzungen diesen Wert verwenden und den Wert in jeder Einstellungsdatei ignorieren:
1

Die Variablen auflisten, die der Remote-Computer setzt

Führen Sie in einem Terminal auf Ihrem Computer ssh devbox env mit Ihrem eigenen Host aus.
2

Die Variable dort ändern, wo sie gesetzt wird

Wenn die Liste die Variable enthält, ändern Sie sie in der Datei, die sie setzt, z. B. ~/.zshenv, /etc/environment oder ~/.bashrc auf dem Remote-Computer.
3

Sitzungen den neuen Wert übergeben

Starten Sie den Remote-Computer neu, oder beenden Sie Desktop und die Prozesse des Hilfsprogramms, wie in den ersten beiden Schritten zum Entfernen des Hilfsprogramms. Tun Sie dies, wenn keine Aufgabe läuft, da beides die Arbeit von Claude unterbricht.

Ihre SSH-Konfiguration verwenden

Sie können Ihre SSH-Konfiguration unter macOS, Linux und Windows verwenden, wenn Desktop sich über den OpenSSH-Client auf Ihrem Computer verbindet:
  • macOS und Linux: Desktop verbindet sich, indem es den OpenSSH-Client auf Ihrem Computer ausführt, und verwendet daher Ihre ~/.ssh/config. Das Verbinden über den OpenSSH-Client erfordert Claude Desktop v1.37937.0 oder neuer.
  • Windows: Wenn Desktop sich über den OpenSSH-Client verbindet, verwendet es Ihre %USERPROFILE%\.ssh\config. Wenn Sie ein Claude-Konto statt eines Drittanbieters verwenden, erfordert das Verbinden über den OpenSSH-Client alles Folgende:
    • Claude Desktop v2.2553.0 oder neuer. Um Ihre Version zu ermitteln, siehe Ihre Version prüfen.
    • OpenSSH 9.4 oder neuer von Microsoft
    • Desktop, installiert über die Download-Schaltflächen oben auf dieser Seite, da Desktop aus dem Microsoft Store sich nicht über den OpenSSH-Client verbindet
    Wenn Sie diese Anforderungen nicht erfüllen können oder einen Drittanbieter verwenden, siehe Unter Windows ohne den OpenSSH-Client verbinden.
Geben Sie mit dem OpenSSH-Client einen Host-Namen aus Ihrer Konfigurationsdatei in das Feld SSH host ein. Desktop verwendet dann Einstellungen aus diesem Host-Eintrag, etwa HostName, User, IdentityFile, CertificateFile, ProxyJump und ProxyCommand. Bevor Sie die Verbindung hinzufügen, prüfen Sie den Client und den Eintrag in einem Terminal auf Ihrem Computer:
  • Client-Version unter macOS und Linux: Führen Sie ssh -V aus. Der Client muss OpenSSH 7.6 oder neuer sein.
  • Client-Version unter Windows: Desktop versucht zuerst das ssh in Ihrem PATH, führen Sie also ssh -V aus. Der Client besteht die Prüfung, wenn die Ausgabe OpenSSH_for_Windows_ und 9.4 oder neuer zeigt. Wenn nicht, prüfen Sie die beiden Ordner, die Desktop als Nächstes versucht: Führen Sie .\ssh.exe -V in C:\Windows\System32\OpenSSH und dann in C:\Program Files\OpenSSH aus.
  • Kein Client besteht unter Windows: Fügen Sie in Windows das optionale Feature OpenSSH Client hinzu und installieren Sie ausstehende Windows-Updates oder installieren Sie Microsofts neueren Build. Beenden Sie Desktop dann und öffnen Sie es erneut. Um zu sehen, ob Desktop einen verwendbaren OpenSSH-Client gefunden hat, suchen Sie in ssh.log nach Windows OpenSSH client: und einer Version oder nach no usable Windows OpenSSH client.
  • Eintrag: Verwenden Sie unter Windows den Client, der die Versionsprüfung bestanden hat. Führen Sie ssh mit dem Host-Namen aus, etwa ssh devbox. Wenn das fehlschlägt, korrigieren Sie zuerst den Eintrag.
Sie können die Felder SSH port und SSH key (optional) leer lassen. Wenn Sie eines ausfüllen, verwendet Desktop es zusammen mit dem Eintrag:
  • SSH port: Ein Wert hier überschreibt den Port des Eintrags
  • SSH key (optional): Mit dem OpenSSH-Client bietet Desktop die Schlüsseldatei, die Sie auswählen, zusätzlich zur IdentityFile des Eintrags und den Schlüsseln in Ihrem SSH-Agent an. Wählen Sie unter Windows einen Schlüssel im OpenSSH-Format, da ssh keine PuTTY-.ppk-Datei liest.
Unter Windows verbinden Sie sich über den integrierten SSH-Client von Desktop, wenn Ihr Computer die Anforderungen für den OpenSSH-Client nicht erfüllt. Mit einem Drittanbieter verbinden Sie sich standardmäßig über den integrierten Client, und Ihr Administrator kann das ändern. Zur Einstellung siehe SSH remote sessions in Claude Desktop on 3P. Mit dem integrierten Client können Sie weiterhin einen Host-Namen aus Ihrer SSH-Konfiguration in das Feld SSH host eingeben, wenn Ihr PATH einen ssh-Befehl enthält, mit diesen Einschränkungen:
  • Einstellungen aus dem Eintrag: Desktop übernimmt HostName, User, Port und IdentityFile. Es übernimmt auch ProxyCommand, wenn eine sh-Shell in Ihrem PATH liegt.
  • SSH key (optional): Lassen Sie dieses Feld leer, um die IdentityFile des Eintrags beizubehalten, da eine Schlüsseldatei, die Sie hier auswählen, die IdentityFile ersetzt
  • CertificateFile und ProxyJump: Desktop ignoriert CertificateFile, und die Verbindung schlägt fehl, wenn der Eintrag ProxyJump setzt. Um eine dieser Einstellungen zu verwenden, verbinden Sie sich über den OpenSSH-Client.
Um einen Computer hinter einem Jump-Host, auch Bastion genannt, zu erreichen, setzen Sie ProxyJump oder ProxyCommand im Eintrag. Der folgende Eintrag erreicht devbox.internal.example.com über bastion.example.com:
~/.ssh/config
Geben Sie devbox im Feld SSH host ein. Wenn Ihr Administrator SSH-Hosts einschränkt, muss auch der Jump-Host auf der Liste stehen. Führen Sie ssh -G bastion.example.com in einem Terminal auf Ihrem Computer aus und bitten Sie ihn, den ausgegebenen hostname zuzulassen. Um eine Sitzung in einem Container auszuführen, der keinen SSH-Port veröffentlicht, erreichen Sie ihn mit einem ProxyCommand, da Desktop den RemoteCommand des Eintrags, mit dem Sie sich verbinden, nicht ausführt. Wenn Ihr Eintrag RemoteCommand verwendet, um in den Container zu wechseln, läuft die Sitzung auf dem Computer, bei dem sich der Eintrag anmeldet, nicht im Container.
1

Eintrag hinzufügen

Fügen Sie den folgenden Eintrag am Ende Ihrer ~/.ssh/config hinzu oder direkt über Ihrem ersten Host *-Eintrag, falls Sie einen haben. Ersetzen Sie den Docker-Container devbox, seinen Benutzer dev und den Computer build.example.com durch Ihre eigenen. Der Befehl des Eintrags startet für jede Verbindung einen SSH-Server im Container:
~/.ssh/config
2

Container vorbereiten

  • Installieren Sie den OpenSSH-Server mit einem Host-Schlüssel, der gleich bleibt, wenn Sie das Image neu bauen oder den Container neu erstellen
  • Geben Sie dem in User genannten Konto eine Möglichkeit zur Anmeldung, z. B. eine authorized_keys-Datei
  • Prüfen Sie, ob der Container die Anforderungen an den Remote-Computer erfüllt
3

Allowlist prüfen

Wenn Ihr Administrator SSH-Hosts einschränkt, führen Sie ssh -G devbox-container in einem Terminal auf Ihrem Computer aus. Bitten Sie ihn, den ausgegebenen hostname, hier devbox-container, in sshHostAllowlist zu erlauben. Wenn er diesen Namen erlaubt, erlaubt er alles, womit sich der ProxyCommand Ihres Eintrags verbindet.
4

Eintrag testen, dann verbinden

Führen Sie ssh devbox-container in einem Terminal auf Ihrem Computer aus. Beheben Sie, was gemeldet wird, und führen Sie den Befehl erneut aus, bis er eine Shell im Container öffnet, ohne Sie nach etwas zu fragen:
  • Wenn ssh nach einem Passwort, einer Passphrase oder einem Code fragt: Wechseln Sie zu einer Anmeldung, die ohne Abfrage funktioniert, z. B. einem Schlüssel, den Ihr SSH-Agent hält
  • Wenn ssh Cannot execute command-line and remote command. oder Bad packet length meldet: Entfernen Sie RemoteCommand und RequestTTY aus Ihrem Eintrag für build.example.com. Danach öffnet ssh build.example.com in einem Terminal auf Ihrem Computer eine Shell auf diesem Computer, nicht im Container.
  • Wenn ssh Connection closed by UNKNOWN port 65535 meldet: Führen Sie ssh build.example.com docker exec devbox /usr/sbin/sshd -t im selben Terminal aus.
    • Wenn es Missing privilege separation directory: /run/sshd ausgibt, erstellen Sie diesen Ordner im Container.
    • Wenn es no hostkeys available ausgibt und der Container Host-Schlüssel hat, fügen Sie -u root nach exec in diesem Befehl und im Eintrag hinzu.
Geben Sie dann devbox-container im Feld SSH host ein.
Um unter macOS und Linux eine eigene Umgebungsvariable in einem ProxyCommand- oder Match exec-Befehl zu verwenden, exportieren Sie sie in einer Shell-Startdatei wie ~/.zshrc. Beenden Sie Desktop dann und öffnen Sie es erneut. Beim Start liest Desktop, was Ihre Login-Shell exportiert, und behält diese Werte, bis Sie es beenden. Dies erfordert Claude Desktop v2.37337.0 oder höher sowie einen env-Befehl, der -0 akzeptiert. Das können Sie prüfen, indem Sie env -0 in einem Terminal auf Ihrem Computer ausführen.
Wenn Ihre Shell temporäre AWS-Anmeldedaten setzt, geben Sie der AWS CLI ein Profil, anstatt AWS_*-Variablen zu exportieren.
Wenn Sie temporäre AWS-Anmeldedaten in einer Shell-Startdatei setzen, kann ein ProxyCommand, der die AWS CLI ausführt, in einem Terminal eine Verbindung herstellen und in Desktop fehlschlagen. Wenn Ihre Shell AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN oder AWS_CREDENTIAL_EXPIRATION exportiert, erhalten ssh und Ihr ProxyCommand in Desktop weder die AWS-Anmeldedaten der Shell noch AWS_REGION oder AWS_PROFILE. Wenn die AWS CLI keine andere Quelle für eine Region oder Anmeldedaten hat, schlägt sie mit You must specify a region oder Unable to locate credentials fehl. Um sich von Desktop aus zu verbinden, geben Sie der AWS CLI ein Profil, das sie aus ~/.aws/config liest:
1

Ein Profil mit einer Region und einer Quelle für Anmeldedaten hinzufügen

Dieses Beispiel fügt ein Profil namens corp hinzu, das seine Anmeldedaten von einem Hilfsprogramm bezieht:
~/.aws/config
  • region: Geben Sie die AWS-Region der Computer an, mit denen Sie sich verbinden
  • credential_process: Geben Sie den vollständigen Pfad eines Programms an, das Anmeldedaten in der von AWS dokumentierten JSON-Form ausgibt. Wählen Sie ein Programm, das keine Eingabe von Ihnen benötigt, da die AWS CLI es bei jeder Verbindung ausführt, auch bei erneuten Verbindungen während Ihrer Abwesenheit.
  • IAM Identity Center: Fügen Sie anstelle von credential_process die IAM Identity Center-Einstellungen des Profils hinzu. Führen Sie aws sso login --profile corp in einem Terminal aus, bevor Sie sich verbinden, und erneut, wenn diese Anmeldung abläuft.
2

Das Profil im ProxyCommand angeben

Dieses Beispiel fügt --profile zum von AWS für Session Manager dokumentierten Befehl hinzu:
~/.ssh/config
3

Erneut verbinden

Führen Sie ssh mit dem Host in einem Terminal aus, um zu bestätigen, dass der Eintrag dort weiterhin eine Verbindung herstellt, und verbinden Sie sich dann von Desktop aus.
Wenn Ihre SSH-Konfiguration keinen ConnectTimeout für den Host festlegt, gibt Desktop ssh 30 Sekunden für den Verbindungsaufbau. Bei einem Jump-Host oder einem ProxyCommand umfasst diese Zeit die Zeit, die die Route für den Verbindungsaufbau benötigt. Wenn Ihre Route länger braucht, fügen Sie dem Eintrag einen höheren Wert hinzu:
~/.ssh/config
ssh verwendet den ersten Wert, den es für einen Host findet, daher platzieren Sie den Eintrag oberhalb jedes Host *-Eintrags, der ConnectTimeout festlegt. Führen Sie zur Bestätigung ssh -G devbox in einem Terminal auf Ihrem Computer aus. Die Ausgabe enthält connecttimeout 120. Nachdem Sie den Wert geändert haben, beenden Sie Desktop und öffnen Sie es erneut. Wenn der Remote-Computer selbst auf eine Genehmigung auf Ihrem Telefon wartet, genehmigen Sie innerhalb von 45 Sekunden, unabhängig davon, welchen ConnectTimeout Sie festlegen. Sie können diese Grenze nicht erhöhen, da Desktop ServerAliveInterval und ServerAliveCountMax selbst setzt und ssh dann eine Anmeldung schließt, bei der der Remote-Computer so lange nichts sendet. Wenn stattdessen ein Jump-Host oder ein ProxyCommand auf Sie wartet, erhöhen Sie ConnectTimeout im Eintrag des Remote-Computers, um diese Zeit abzudecken. Wenn Desktop eine Einstellung verwendet, die ssh devbox in einem Terminal nicht verwendet, suchen Sie nach einem Match host-Block oberhalb der HostName-Zeile des Eintrags. In einem Terminal liest ssh einen Block an dieser Stelle vor der HostName-Zeile und vergleicht den Block daher mit devbox. Desktop übergibt ssh den HostName-Wert in der Befehlszeile, sodass ssh den Block mit diesem Wert vergleicht. Führen Sie zur Überprüfung ssh -G in einem Terminal auf Ihrem Computer mit den Werten HostName und User des Eintrags in der Befehlszeile aus, wie Desktop es tut:
Vergleichen Sie die Ausgabe mit der von ssh -G devbox. Wenn die Einstellungen des Blocks, z. B. proxycommand, nur in der ersten Ausgabe erscheinen, wirkt der Block nur in Desktop. Damit Desktop ihn ebenfalls überspringt, fügen Sie seiner Match-Zeile !originalhost devbox hinzu:
~/.ssh/config
Führen Sie zur Bestätigung den ersten Befehl erneut aus. Die Einstellungen des Blocks erscheinen nicht mehr in seiner Ausgabe. Bei seiner Verbindung zum Remote-Computer lässt Desktop ForwardAgent, ForwardX11, LocalForward, RemoteForward, DynamicForward und Tunnel ausgeschaltet, auch wenn Ihre SSH-Konfiguration sie einschaltet. Im Terminal oder bei einem !-Befehl sollten Sie damit rechnen, dass Ihre Weiterleitungseinstellungen nur manchmal gelten, da Desktop dort ein separates ssh starten kann, das sie befolgt.
  • Um einen Port auf dem Remote-Computer zu erreichen: Leiten Sie ihn selbst weiter
  • Um Ihre eigenen Schlüssel vom Remote-Computer aus zu verwenden: Richten Sie Anmeldedaten auf dem Remote-Computer selbst ein, z. B. für git push
Um zu verhindern, dass Desktop Ihren SSH-Agenten oder einen Port weiterleitet, führen Sie ssh -G devbox in einem Terminal auf Ihrem Computer aus. Führen Sie es dann erneut so aus, wie Desktop es ausführen kann, mit den ausgegebenen Werten für hostname und user, etwa ssh -G -o HostName=devbox.internal.example.com -l alice devbox. Die zweite Ausgabe kann Einstellungen aus einem Match-Block zeigen, die die erste überspringt. Suchen Sie in beiden Ausgaben nach einer forwardagent-Zeile mit einem anderen Wert als no und nach Zeilen, die mit localforward, remoteforward oder dynamicforward beginnen. Wenn Sie eine finden, entfernen Sie diese Einstellung aus Ihrer SSH-Konfiguration. Gehen Sie bei einem Host, den Ihr ProxyCommand mit ssh erreicht, genauso vor.

Einen Port auf dem Remote-Computer erreichen

Um einen Server zu öffnen, der auf dem Remote-Computer läuft, z. B. einen Dev-Server auf Port 3000, leiten Sie den Port selbst weiter. Führen Sie in einem Terminal auf Ihrem Computer ssh mit -L und dem Host aus, mit dem Sie sich verbinden, z. B. devbox:
Wenn Sie bei der Verbindung SSH port oder SSH key (optional) ausgefüllt haben, fügen Sie -p bzw. -i mit demselben Wert hinzu. Lassen Sie diesen Befehl laufen und öffnen Sie http://localhost:3000 in einem Browser auf Ihrem Computer, um Port 3000 des Remote-Computers zu erreichen. Wenn ssh die Meldung open failed: administratively prohibited ausgibt, bitten Sie den Administrator des Computers, TCP-Weiterleitung zu erlauben, die über AllowTcpForwarding in der sshd_config des SSH-Servers gesteuert wird.

Windows-Remote-Computer

Ein Windows-Remote-Computer erfordert Claude Desktop v2.31226.0 oder höher. Verwenden Sie den OpenSSH Server von Microsoft. Der Computer kann x64 oder ARM64 sein. Die Shell, die der SSH-Server startet, kann cmd.exe, Windows PowerShell 5.1 oder Git Bash sein. Windows-Remote-Computer werden weniger getestet als Linux-Computer. Probieren Sie Ihre eigene Arbeit dort aus, bevor Sie sich darauf verlassen. Rechnen Sie auf einem Windows-Remote-Computer unter anderem mit diesen Einschränkungen:
  • Terminal: Das Terminal öffnet sich nicht in einer Sitzung, deren Ordner ein Windows-Pfad ist, z. B. C:/projects/app
  • Sandbox: Claude Code läuft dort unter nativem Windows, wo es Befehle ohne Sandbox ausführt. Siehe wo die Sandbox läuft.
  • Plugins: Desktop kopiert kein Plugin, das einen Datei- oder Ordnernamen enthält, den Windows nicht speichern kann, z. B. einen Namen mit :. Die Sitzung listet die Plugins auf, die Desktop ausgelassen hat.
  • MCP-Server: Auf einigen Windows-Remote-Computern laufen die Aufrufe von Claude an MCP-Server aus claude_desktop_config.json über Desktop, sodass Claude deren Tools nicht aufrufen kann, während Desktop nicht verbunden ist. Vor Claude Desktop v2.37337.0 gilt dies für jeden Windows-Remote-Computer.
  • Worktrees: Worktrees werden in <project-root>/.claude/worktrees/ abgelegt. Wenn Sie einen anderen Ordner wählen, ignoriert Desktop ihn.
  • Frühere Nachrichten: Wenn die Shell des SSH-Servers cmd.exe oder Windows PowerShell ist, müssen Sie sich möglicherweise verbinden, bevor Sie die früheren Nachrichten einer Sitzung sehen
  • Forks: Wenn die Shell des SSH-Servers cmd.exe oder Windows PowerShell ist, können Sie eine Sitzung nur bei ihrer ersten Nachricht forken
  • Ausführung ohne Verbindung: Eine Aufgabe läuft nur dann weiter, während Desktop nicht verbunden ist, wenn der SSH-Server einem Programm erlaubt, die Verbindung zu überdauern, die es gestartet hat. Um das herauszufinden, testen Sie den Remote-Computer.
  • Verbliebene Prozesse: Prüfen Sie nach dem Ende einer Sitzung den Computer auf Programme, die Claude Code gestartet hat, da sie weiterlaufen können. Das Hintergrund-Hilfsprogramm, das Desktop installiert, beendet sich dort nicht von selbst.

Eine Aufgabe weiterlaufen lassen, während Desktop nicht verbunden ist

Wenn Ihr Computer in den Ruhezustand wechselt, Sie die Netzwerkverbindung verlieren oder Sie Desktop beenden, läuft die Aufgabe weiter, bis sie abgeschlossen ist, Sie benötigt oder eine der Grenzen erreicht. Das Schließen des Deckels zählt als Ruhezustand. Ein Neustart von Desktop oder Ihres Computers, auch für ein Update, zählt als Beenden. Claude Code läuft als Prozess auf dem Remote-Computer unter einem Hintergrund-Hilfsprogramm, das Desktop dort installiert, und benötigt daher Ihre SSH-Verbindung nicht, um weiterzulaufen. Das Verhalten in diesem Abschnitt erfordert Claude Desktop v2.31226.0 oder höher.
Wenn Sie sich mit einem Claude-Konto bei Desktop anmelden, verlassen Sie sich nicht darauf, dass eine Aufgabe über Nacht läuft. Desktop erneuert diese Anmeldung für die Aufgabe nur, solange Desktop läuft und verbunden ist. Daher kann die Anmeldung der Aufgabe ablaufen, nachdem Sie die Verbindung getrennt haben, und die Aufgabe stoppt dann. Wie viel Zeit beim Trennen noch verbleibt, variiert, und es können nur wenige Minuten sein.Die bisher erledigte Arbeit bleibt auf dem Remote-Computer, und Sie können nach Ihrer Rückkehr mit einer Nachricht fortfahren.Wenn die Aufgabe die Nacht hindurch laufen muss:
  • Halten Sie Ihren Computer wach und online, mit geöffnetem Deckel und laufendem Desktop
  • Verwenden Sie für den Remote-Computer und für jeden Jump-Host auf dem Weg eine Anmeldung, die ohne Abfrage funktioniert, z. B. einen Schlüssel, den Ihr SSH-Agent hält. Desktop kann sich dann nach einem Verbindungsabbruch selbstständig wieder verbinden.
Für eine Aufgabe, die laufen muss, während Ihr Computer im Ruhezustand oder ausgeschaltet ist, starten Sie stattdessen eine Cloud-Sitzung.
  • Nach Ruhezustand oder Netzwerkverlust: Sie erhalten die laufende Aufgabe zurück, wenn der Prozess noch läuft und Desktop sich ohne Abfrage anmelden kann. Wenn nicht, senden Sie eine Nachricht.
  • Nach dem Beenden: Die Aufgabe läuft weiter, aber Sie verlieren sie, wenn die Sitzung erneut geöffnet wird, es sei denn, Desktop kann sich wieder mit ihrem Prozess verbinden. Prüfen Sie vor dem Beenden, wann Desktop sich wieder verbinden kann. Wenn Sie die Aufgabe verloren haben, senden Sie eine Nachricht, um fortzufahren.
Wenn Sie zurückkommen und die Aufgabe nicht erledigt ist, prüfen Sie, ob gemeldet wird, dass Desktop sich nicht wieder verbinden kann, ob ein Authentifizierungsfehler vorliegt oder ob eine Anfrage wartet:
  • Zuerst aktualisieren: Aktualisieren Sie Desktop, bevor Sie eine lange Aufgabe starten. Unter macOS und Windows kann Desktop von selbst neu starten, um ein heruntergeladenes Update zu installieren. Dieser Neustart wartet, während Claude an einer SSH-Aufgabe arbeitet. Standardmäßig kann der Neustart während der Aufgabe erfolgen, sobald das Update 72 Stunden gewartet hat, wenn Desktop sich danach wieder mit der Aufgabe verbinden kann.
  • Vor dem Beenden prüfen: Sie erhalten die laufende Aufgabe nach einem Beenden oder Neustart nicht immer zurück, zum Beispiel nach manchen Desktop-Updates. Die Fälle finden Sie unter Eine Sitzung nach dem Beenden von Desktop erneut öffnen.
  • Bei einer älteren Version Desktop offen lassen: Unter Windows mit Claude Desktop vor v3.1623.0 erhalten Sie die laufende Aufgabe nicht zurück, nachdem Desktop beendet oder neu gestartet wurde. Dasselbe gilt mit einem Drittanbieter unter macOS oder Linux vor v2.42304.0. Lassen Sie Desktop in beiden Fällen während der Aufgabe geöffnet. Um Ihre Version zu ermitteln, siehe Ihre Version prüfen.
  • Anfragen reduzieren: Wählen Sie einen Berechtigungsmodus, Regeln oder Hooks, die die Aufgabe seltener auf Sie warten lassen
  • Jump-Host prüfen: Wenn Ihr Jump-Host eine Anmeldung verlangt, z. B. über eine Push-Benachrichtigung auf ein Telefon, wechseln Sie zu einer Anmeldung, die ohne Abfrage funktioniert. Andernfalls kann Desktop bei jedem Versuch, sich wieder zu verbinden, eine weitere Push-Benachrichtigung auslösen.
  • Remote-Computer testen: Starten Sie eine kurze Aufgabe, beenden Sie Desktop, während die Aufgabe noch läuft, und öffnen Sie die Sitzung erst deutlich nach dem Zeitpunkt erneut, zu dem die Aufgabe fertig sein sollte. Wenn die Aufgabe nicht abgeschlossen ist und die Sitzung keinen Authentifizierungsfehler zeigt, prüfen Sie den Remote-Computer darauf, was eine Aufgabe beenden kann.
  • Befehle aus dem Terminal von Desktop heraushalten: Wenn der Remote-Computer inaktive Terminals abmeldet, führen Sie Ihre eigenen Befehle über eine SSH-Anmeldung außerhalb von Desktop aus
Eine Aufgabe, die Sie laufen lassen, kann enden, wenn ihre Anmeldung abläuft, wenn der Remote-Computer sie beendet oder wenn das Hilfsprogramm stoppt oder ersetzt wird:
  • Anmelde-Token oder Anmeldedaten: Mit einem Claude-Konto stoppt die Aufgabe mit einem Authentifizierungsfehler, wenn das Token abläuft. Mit einem Drittanbieter gilt dasselbe für Anmeldedaten, die ablaufen, z. B. solche aus Single Sign-On oder einem Credential Helper. Siehe SSH remote sessions in Claude Desktop on 3P. Mit einem Claude-Konto lassen Sie Desktop laufen und verbunden, damit es die Anmeldung erneuern kann.
  • Der Remote-Computer: Wenn der Remote-Computer neu startet oder Ihre Prozesse beendet, sobald Ihre SSH-Verbindung geschlossen wird, endet die laufende Aufgabe. Nichts startet sie erneut, während Desktop nicht verbunden ist. Linux-Computer, auf denen KillUserProcesses von systemd-logind auf yes steht und für Ihren Benutzer gilt, beenden Ihre Prozesse auf diese Weise. Um dort eine Aufgabe weiterlaufen zu lassen, bitten Sie den Administrator, Ihren Benutzer auszunehmen, z. B. mit KillExcludeUsers.
  • Inaktive Terminals: Einige Linux-Remote-Computer melden ein Terminal ab, in dem für eine festgelegte Zeit niemand tippt (StopIdleSessionSec von systemd-logind). Mit Desktop unter macOS oder Linux teilen sich das Terminal einer Sitzung und !-Befehle standardmäßig die SSH-Verbindung von Desktop. Diese Abmeldung beendet dann die Verbindung, während Desktop verbunden ist, und die laufende Aufgabe kann damit enden. Das Schließen des Terminalbereichs verhindert das nicht, daher halten Sie Befehle aus diesem Terminal heraus.
  • Desktop-Updates: Wenn ein Update ein neues Hilfsprogramm mitbringt, ersetzt Desktop das Hilfsprogramm auf dem Remote-Computer bei einer späteren Verbindung, was eine noch laufende Aufgabe beenden kann
  • Lange Abwesenheiten: Wenn Desktop sich 30 Tage lang nicht mit einem Linux- oder macOS-Remote-Computer verbindet, stoppt das Hilfsprogramm dort und beendet jeden Claude Code-Prozess, der darunter läuft. Verbinden Sie sich vorher.
Dateibearbeitungen und einige Tools können fehlschlagen, während Desktop nicht verbunden ist. Wenn die Aufgabe sie benötigt, halten Sie Desktop verbunden:
  • Worktrees: In einer Sitzung, die einen Worktree verwendet, prüft Desktop jede Dateibearbeitung, bevor Claude sie vornimmt. Während Desktop getrennt ist, wartet jede Bearbeitung etwa 30 Sekunden und schlägt dann fehl. Shell-Befehle laufen weiterhin. Auf einem Linux- oder macOS-Remote-Rechner können Bearbeitungen weiter funktionieren. Wenn Sie unsicher sind, starten Sie die Sitzung ohne Worktree.
  • Ordnerbeschränkungen: Wenn Ihre Organisation einschränkt, welche Ordner Sitzungen verwenden dürfen, prüft Desktop jedes Lesen, jede Suche und jede Bearbeitung von Dateien, mit oder ohne Worktree. Während Desktop nicht verbunden ist, wartet jeder dieser Vorgänge bis zu 10 Minuten und schlägt dann fehl.
  • Konnektoren: Konnektoren und andere Tools, die Desktop bereitstellt, laufen über Desktop, daher schlägt jeder Aufruf nach etwa 30 Sekunden fehl, während es nicht verbunden ist
  • Workflows: Desktop prüft jeden neuen Workflow, bevor er startet, daher wartet ein neuer Workflow, während Desktop nicht verbunden ist, bis zu 10 Minuten und schlägt dann fehl
  • MCP-Server: MCP-Server, die Claude Code auf dem Remote-Computer startet, laufen nicht über Desktop, sodass Claude ihre Tools weiterhin aufrufen kann. Server aus claude_desktop_config.json gehören nur dann dazu, wenn Desktop nicht seinen integrierten SSH-Client verwendet. Andernfalls, und auf einigen Windows-Remote-Computern, kann Claude ihre Tools nicht aufrufen, während Desktop nicht verbunden ist.
Auf einem Linux- oder macOS-Remote-Computer läuft die Prüfung nicht über Desktop, sodass Bearbeitungen innerhalb des Worktrees weiterhin funktionieren, während Desktop nicht verbunden ist. Vor Claude Desktop v2.37337.0 gilt dies nur für einen Linux-Remote-Computer.Bearbeitungen schlagen in einigen Fällen dennoch fehl, darunter diese:
  • Integrierter SSH-Client: Desktop verwendet ihn, z. B. bei einer Installation aus dem Microsoft Store, auf einem Windows-Computer ohne Microsofts OpenSSH 9.4 oder höher oder standardmäßig unter Windows mit einem Drittanbieter
  • Speicherort des Repositorys: Das Repository ist Ihr Home-Verzeichnis, ein darüberliegender Ordner oder ~/.claude
  • macOS-Pfade: Auf einem macOS-Remote-Computer liegt das Repository unter /Volumes, oder ein Ordnername im Pfad des Repositorys oder des Worktrees enthält ein ~ oder ein Nicht-ASCII-Zeichen
  • Ordnerbeschränkungen: Ihre Organisation schränkt ein, welche Ordner Sitzungen verwenden dürfen
  • Unternehmens-Launcher: Vor Claude Desktop v2.37337.0: Sie melden sich mit einem Claude-Konto an, und Ihre Organisation startet Claude Code auf dem Remote-Computer über einen Unternehmens-Launcher
Eine Sitzung ohne Worktree hat keine solche Prüfung, es sei denn, Ihre Organisation schränkt ein, welche Ordner Sitzungen verwenden dürfen.
Wenn Claude Ihre Genehmigung benötigt oder Ihnen eine Frage stellt, während Desktop nicht verbunden ist, wartet Claude auf dem Remote-Computer. Das Warten hat keine eigene Zeitbegrenzung. Wenn Desktop sich wieder mit dem Prozess verbindet, zeigt es Ihnen die Anfrage. Wenn Desktop stattdessen einen neuen Prozess startet, verlieren Sie die Anfrage. Wenn eine Anfrage, die auf Sie gewartet hat, bei Ihrer Rückkehr verschwunden ist, kann eine Ursache sein, dass Desktop von selbst neu gestartet ist, etwa um ein Update zu installieren. Sie behalten eine Anfrage über einen Neustart hinweg nur, wenn Desktop sich wieder mit dem Prozess verbinden kann. Prüfen Sie daher, wann Desktop sich wieder verbinden kann, bevor Sie eine Aufgabe laufen lassen. Wenn Sie eine Anfrage verlieren, senden Sie eine Nachricht, um fortzufahren. Um zu reduzieren, wie oft eine Aufgabe anhält, um auf Sie zu warten, und um während Ihrer Abwesenheit von ihr zu hören, richten Sie vorher eine der folgenden Möglichkeiten ein: Wenn Ihre Organisation nur verwaltete Hooks ausführt, bitten Sie Ihren Administrator, den Hook den verwalteten Einstellungen hinzuzufügen, die den Remote-Computer erreichen. Claude Code genehmigt einige Aktionen in keinem Berechtigungsmodus automatisch, auch nicht in Bypass permissions. Je nach Berechtigungsmodus lehnt Claude Code eine solche Aktion ab oder fragt Sie, und die Aufgabe wartet dann auf Ihre Antwort. Wenn Desktop sich bei Ihrer Rückkehr nicht wieder verbunden hat, senden Sie eine Nachricht in der Sitzung. Desktop verbindet sich nur dann selbstständig wieder, wenn es sich ohne Abfrage anmelden kann, z. B. mit einem Schlüssel, den Ihr SSH-Agent hält.
  • Gespeichertes Passwort: Ein Passwort, das Sie von Desktop speichern lassen, funktioniert ebenfalls ohne Abfrage, für eine lange Abwesenheit ist jedoch ein Schlüssel in Ihrem SSH-Agenten vorzuziehen. Wenn Anmeldungen mit diesem Passwort abbrechen oder hängen bleiben, kann Desktop aufhören, sich wieder zu verbinden, und auf Sie warten.
  • Jede andere Abfrage: Wenn der Remote-Computer etwas anderes abfragt, z. B. einen Einmalcode, können Sie eine Benachrichtigung auf Ihrem Computer erhalten. Klicken Sie auf die Benachrichtigung oder senden Sie eine Nachricht in der Sitzung, und Desktop zeigt die Abfrage an.
  • Jump-Host, Push-Benachrichtigungen hören während Ihrer Abwesenheit auf: Das kann mit Desktop unter macOS oder Linux passieren, wenn niemand auf die Anmeldung eines Jump-Hosts antwortet, z. B. eine Push-Benachrichtigung auf ein Telefon. Desktop hört dann auf, sich wieder zu verbinden, solange niemand an Ihrem Computer ist. Wenn Sie den Computer entsperren oder verwenden, können Sie eine weitere Push-Benachrichtigung erhalten, da Desktop es erneut versuchen kann. Nach drei unbeantworteten Versuchen wartet es, bis Sie es erneut versuchen oder eine Nachricht senden.
  • Jump-Host, Push-Benachrichtigungen kommen weiterhin: Wo Desktop nicht erkennen kann, dass niemand antwortet, wie bei Desktop unter Windows, versucht es weiter, solange es einen Prozess hat, mit dem es sich wieder verbinden kann, unabhängig davon, ob dieser Prozess noch läuft. Sie können bei jedem Versuch eine weitere Push-Benachrichtigung erhalten. Um die Versuche zu beenden, beenden Sie Desktop, was Sie die laufende Aufgabe kosten kann.
  • Langer Ausfall: Desktop verlangsamt auf etwa einen Versuch alle fünf Minuten. Um sich früher wieder zu verbinden, versuchen Sie es in der Sitzung erneut oder senden Sie eine Nachricht, die Desktop zustellt, sobald es verbunden ist.
  • Fehlende Ausgabe: Während Desktop nicht verbunden ist, behält das Hilfsprogramm die neueste Claude Code-Ausgabe jeder Sitzung in einem 16-MiB-Puffer und verwirft ältere Ausgabe. Nachdem Desktop sich wieder verbunden hat, kann die Sitzung Loading recent output from <host>… anzeigen. Wenn Desktop nicht die gesamte Ausgabe laden kann, sehen Sie die Zeile Some output produced while you were disconnected may be missing here. Die Zeile bedeutet nicht, dass die Aufgabe gestoppt wurde.
  • Prozess verschwunden: Der Prozess endete, während Desktop getrennt war, etwa weil der Remote-Rechner neu gestartet ist. Desktop kann dann aus dem gespeicherten Verlauf der Konversation einen neuen starten und Claude anweisen, die Aufgabe fortzusetzen. Wenn die Aufgabe angehalten bleibt, senden Sie eine Nachricht. Aktualisieren Sie mit einem Drittanbieter auf Claude Desktop v2.42304.0 oder neuer, da frühere Versionen die Aufgabe nie selbstständig fortsetzen.
Nachdem Sie Desktop beendet haben, läuft die Aufgabe auf dem Remote-Rechner weiter, hält aber an, wenn die Sitzung erneut geöffnet wird, es sei denn, Desktop kann sich wieder mit ihrem Prozess verbinden. Während Desktop geschlossen ist, läuft die Aufgabe, bis sie fertig ist, Sie benötigt oder eines der Limits erreicht.
  • Desktop unter Windows, Aufgabe in einer Version vor v3.1623.0 gestartet: Sie erhalten die Aufgabe nicht zurück, auch wenn Desktop seitdem aktualisiert wurde. Starten Sie Desktop erst wieder, wenn Sie erwarten, dass die Aufgabe fertig ist, da sich die Sitzung beim Start von Desktop öffnen kann und die Aufgabe anhält, wenn sich die Sitzung öffnet. Wenn Sie nicht wissen, in welcher Version Sie die Aufgabe gestartet haben, warten Sie ebenfalls, bis Sie erwarten, dass sie fertig ist.
  • Drittanbieter unter macOS oder Linux, Aufgabe in einer Version vor v2.42304.0 gestartet: Sie erhalten die Aufgabe nicht zurück. Starten Sie Desktop erst wieder, wenn Sie erwarten, dass die Aufgabe fertig ist.
  • Jede andere Aufgabe: Starten Sie Desktop und öffnen Sie die Sitzung, und die Aufgabe läuft weiter, wenn Desktop sich wieder verbindet. Es kann sich nicht immer wieder verbinden, zum Beispiel nach manchen Desktop-Updates, daher sollten Sie vor einer langen Aufgabe aktualisieren.
Wenn die Aufgabe anhält, kann die Sitzung Restarting Claude Code on <host>… anzeigen, während Desktop einen neuen Prozess startet. Sie verlieren außerdem jede Genehmigung oder Frage, die auf Sie gewartet hat. Wenn Claude nicht von selbst fortfährt, senden Sie eine Nachricht, und Claude fährt ab dem gespeicherten Verlauf der Konversation fort. Für Bereitstellungen mit Drittanbietern siehe SSH remote sessions in Claude Desktop on 3P.
Solange der Claude Code-Prozess einer Konversation noch läuft, führen Sie claude --resume dafür nicht auf dem Remote-Computer aus. Claude Code hält Sie nicht davon ab, und beide Prozesse schreiben dann in dieselbe Konversation. Wenn Sie unsicher sind, fügen Sie --fork-session hinzu, womit in einer Kopie der Konversation fortgefahren wird; beide Prozesse arbeiten jedoch weiterhin an denselben Dateien.

Festlegen, wo Worktrees von SSH-Sitzungen abgelegt werden

Sofern Ihre Organisation nicht einschränkt, welche Ordner Sitzungen verwenden dürfen, erstellen neue SSH-Sitzungen ihre Worktrees am ersten dieser Orte, der gesetzt ist:
  1. Worktree folder in der SSH-Verbindung
  2. worktree.location in ~/.claude/settings.json auf dem Remote-Computer
  3. <project-root>/.claude/worktrees/, der Standard
Jedes Projekt erhält einen eigenen Unterordner in dem von Ihnen festgelegten Ordner, sodass der Pfad eines Worktrees bei ~/worktrees ~/worktrees/<project>-<id>/<worktree-name> lautet. Wenn der festgelegte Ordner innerhalb des Projekts liegt, ignoriert Desktop ihn für dieses Projekt und verwendet den Standard. Auf einem Windows-Remote-Computer verwendet Desktop immer den Standard. Setzen Sie Worktree folder in den Einstellungen einer Verbindung, die Sie früher hinzugefügt haben oder die Ihre Organisation verwaltet. Das Feld erfordert Claude Desktop v1.44121.0 oder höher. Wenn Ihre Organisation einschränkt, welche Ordner Sitzungen verwenden dürfen, blendet Desktop das Feld aus und behält Worktrees innerhalb des Projekts.
1

Verbindung finden

Öffnen Sie die Umgebungsauswahl und suchen Sie die Verbindung unter SSH.
2

Einstellungen der Verbindung öffnen

Bewegen Sie den Mauszeiger über die Verbindung und klicken Sie auf das Zahnradsymbol. Wenn der geöffnete Dialog neben Host Edit connection… zeigt, wählen Sie Edit connection… aus.
3

Ordner festlegen

Geben Sie in Worktree folder einen Ordner auf dem Remote-Rechner ein, etwa ~/worktrees, und wählen Sie Save changes aus.

Dateien und Prozesse auf dem Remote-Computer

Desktop installiert ein Hilfsprogramm und Claude Code unter ~/.claude/remote/ im Home-Verzeichnis jedes Benutzers, der sich mit einem Linux- oder macOS-Remote-Computer verbindet. Das Hilfsprogramm lauscht an keinem Netzwerkport, Claude Code und die Programme, die es startet, wie MCP-Server und Entwicklungsserver, können das jedoch. Um die Prozesse eines Benutzers aufzulisten, führen Sie pgrep -fl "$HOME/.claude/remote/" auf dem Remote-Computer als dieser Benutzer aus oder mit dem Home-Verzeichnis des Benutzers anstelle von $HOME:
  • Hilfsprogramm: ein oder mehrere server-Prozesse für jeden Computer, der sich verbindet
  • Claude Code: die Prozesse, die das Hilfsprogramm für die Sitzungen des Benutzers startet, jeweils aus einer nach ihrer Version benannten Datei, z. B. 2.1.295-…
Desktop erreicht das Hilfsprogramm über die SSH-Verbindung des Benutzers, über den Unix-Socket rpc.sock im Ordner des Hilfsprogramms unter ~/.claude/remote/run/. Außer root können sich andere Benutzer auf dem Computer nicht mit diesem Socket verbinden, da er den Modus 600 und sein Ordner den Modus 700 hat. Wann das Hilfsprogramm von selbst stoppt, erfahren Sie unter Grenzen, während Desktop nicht verbunden ist. Um das Hilfsprogramm und Claude Code für einen Benutzer zu entfernen:
1

Desktop beenden

Beenden Sie Desktop auf jedem Computer, von dem aus sich der Benutzer verbindet. Desktop installiert beide Programme bei der nächsten Verbindung erneut und kann sich selbstständig wieder verbinden.
2

Prozesse beenden

Führen Sie, als dieser Benutzer auf dem Remote-Computer angemeldet, kill mit der ID jedes Claude Code-Prozesses aus, den pgrep auflistet. Sobald diese aus der Liste verschwunden sind, führen Sie kill mit der ID jedes server-Prozesses aus. Wenn Sie zuerst einen server-Prozess beenden, kann ein Befehl, den Claude Code gerade ausführt, weiterlaufen.Listen Sie dann die verbleibenden Prozesse des Benutzers auf, z. B. mit ps -u "$(id -un)" -f, und beenden Sie alle, die Sie als von Claude Code gestartet erkennen. Programme, die es im Hintergrund zurückgelassen hat, können nach seinem Ende weiterlaufen, ohne in der pgrep-Liste zu erscheinen.
3

Ordner löschen

Löschen Sie ~/.claude/remote/. Um die eigenen Dateien von Claude Code in ~/.claude/ und ~/.claude.json zu entfernen, siehe Konfigurationsdateien entfernen.
Um den Claude-Code-Prozess einer Sitzung zu beenden, archivieren Sie die Sitzung in Desktop, während Desktop mit dem Remote-Rechner verbunden ist. Der Prozess läuft weiter, nachdem seine Aufgabe erledigt ist und nachdem Sie Desktop beendet haben. Bevor Sie eine Sitzung archivieren, deren Worktree nicht committete Änderungen enthält, siehe Nicht committete Änderungen beim Archivieren einer Sitzung behalten. Das Hilfsprogramm und Claude Code laufen als der Benutzer, als der sich Desktop über SSH anmeldet. Für ihre Installation und ihren Start ist kein sudo erforderlich. Um den Benutzer zu prüfen, führen Sie ps -o user= -p auf dem Remote-Computer mit einer Prozess-ID aus, die pgrep auflistet. Programme, die Claude Code startet, z. B. Shell-Befehle und MCP-Server, starten ebenfalls als dieser Benutzer. Überprüfen Sie die Rechte dieses Benutzers auf dem Remote-Computer, einschließlich seiner sudo-Regeln, wie Sie es für eine Person tun würden, die dort Befehle ausführt. Um herauszufinden, wer sich mit einem Remote-Computer verbunden hat, lesen Sie das Log des SSH-Servers auf diesem Computer, in dem eine Anmeldung von Desktop wie eine Anmeldung aus einem Terminal aussieht. Mit Desktop unter macOS oder Linux ist mit einem Eintrag pro Verbindungsaufbau von Desktop zu rechnen, nicht mit einem pro Sitzung. Wenn der Server MaxSessions 1 festlegt, sind bei jeder Verbindung oder erneuten Verbindung von Desktop mindestens zwei Einträge zu erwarten. Rechnen Sie mit mindestens einem weiteren für jeden Terminal-Tab und für jede Desktop-Sitzung, in der Sie Befehle ausführen, die mit ! beginnen. Die SSH-Verbindungen von Desktop finden Sie nicht in den Metriken und Ereignissen von Claude Code. Um daraus zu ermitteln, auf welchem Remote-Rechner eine SSH-Sitzung lief, siehe Telemetrie Desktop-SSH-Sitzungen zuordnen. Für die eigene Aufzeichnung von Desktop über seine Verbindungen siehe Desktop-Logs für ein SSH-Problem abrufen.

Verbindungen, die vor der Anmeldung geschlossen werden

Wenn das Log des SSH-Servers Verbindungen zeigt, die vor jeder Anmeldung geschlossen werden, kann es sich um Tests des SSH-Ports durch Desktop handeln. Desktop testet, ob ein Rechner antwortet, zum Beispiel nachdem eine Verbindung zu ihm fehlgeschlagen ist. Es öffnet eine Verbindung zum Port und schließt sie sofort, ohne etwas zu senden. Rechnen Sie mit einem Test oder mehreren hintereinander, zum Beispiel acht in etwa zwei Minuten. Wenn nichts Adressen für solche Verbindungen sperrt oder ablehnt, müssen Sie wegen der Tests von Desktop nichts unternehmen. Wenn eine Adresse, von der aus Desktop sich verbindet, abgelehnt oder gesperrt wird, prüfen Sie, ob der SSH-Server selbst die Adresse ablehnt und ob fail2ban die Tests von Desktop zählt. Vergleichen Sie die Zeilen in Ihrem Log mit denen, die ein OpenSSH-Server unter Linux für einen Test beim Standard-LogLevel schreibt, in der Zeile für die Version Ihres Servers. Sie sehen möglicherweise stattdessen die Zeilen in der letzten Spalte, wenn die Begrüßung des Servers eintrifft, bevor Desktop die Verbindung schließt: Andere Programme, die den Port öffnen und schließen, können dieselben Zeilen hinterlassen. Wo eine Zeile eine Adresse enthält, prüfen Sie, ob es eine ist, von der aus sich ein Computer mit Desktop verbindet. Die Zeilen von 8.0 bis 8.2 enthalten keine Adresse. Um eine zu erhalten, setzen Sie LogLevel VERBOSE in sshd_config und führen Sie sshd -T | grep -i loglevel als root aus. Wenn es loglevel VERBOSE ausgibt, laden Sie den SSH-Server neu. Suchen Sie dann vor der Zeile des Tests nach einer Zeile mit Connection from 203.0.113.7 port 51234. Wenn Verbindungen von einer Adresse abgelehnt werden, die sich viele Computer mit Desktop teilen, suchen Sie im Log des SSH-Servers nach einer Zeile, die wie diese endet:
Mit dem Standard-LogLevel können OpenSSH 9.8 und höher eine solche Zeile schreiben, wenn sie eine Adresse wegen Verbindungen ablehnen, die ohne Anmeldeversuch geschlossen wurden, wie es bei den Tests von Desktop der Fall ist. Mit den Standardeinstellungen sehen Sie eine solche Zeile nicht nach nur wenigen Tests. Um die Ablehnung zu verhindern, setzen Sie PerSourcePenaltyExemptList in sshd_config auf die Adressen, von denen aus sich Personen verbinden, zum Beispiel PerSourcePenaltyExemptList 203.0.113.7. Der Server wendet dann keine seiner Strafen auf diese Adressen an, auch nicht die für fehlgeschlagene Anmeldungen. Um die Datei zu prüfen, führen Sie sshd -T | grep -i persourcepenalt als root aus. Wenn es Ihre Liste ausgibt, laden Sie den SSH-Server neu. Wenn fail2ban 0.10.5 oder höher eine Adresse gesperrt hat, von der aus sich Desktop verbindet, ermitteln Sie den Modus Ihres Jails in jail.conf, jail.local oder unter jail.d/:
  • Eine filter-Zeile, die einen Modus in Klammern nennt, etwa filter = sshd[mode=aggressive]: verwenden Sie diesen Modus.
  • Nur die Standard-filter-Zeile, mit [mode=%(mode)s]: verwenden Sie die mode-Zeile oder normal, wenn es keine gibt.
Wenn der Modus normal ist, zählt fail2ban die Zeilen der Tests von Desktop nicht, suchen Sie also nach einer anderen Ursache für die Sperre. Bei einem anderen Modus kopieren Sie die Zeilen aus Ihrem eigenen Log in eine Datei auf dem Remote-Rechner. Kopieren Sie jede Zeile vollständig, von ihrem Datum bis zu ihrem Ende, und beide Zeilen, wo ein Test zwei hinterlässt. Führen Sie dort fail2ban-regex mit der Datei und dem Modus Ihres Jails aus, zum Beispiel aggressive:
Für jeden Fehlschlag, den fail2ban zählt, gibt der Befehl die Adresse in einer eigenen Zeile aus, etwa 203.0.113.7. In diesem Fall verhindern Sie eine Sperre. Wenn er nichts ausgibt, zählt fail2ban in diesem Modus keine dieser Zeilen, suchen Sie also nach einer anderen Ursache für die Sperre. Damit fail2ban eine Adresse nicht wegen der Tests von Desktop sperrt, ändern Sie eine von zwei Einstellungen des Jails, jeweils mit einem Nachteil:
  • mode: setzen Sie ihn auf normal, wo immer Ihr Jail ihn setzt, in einer mode-Zeile oder in den Klammern einer Zeile wie filter = sshd[mode=aggressive]. Sie verzichten damit auf jede Zählung, die nur die anderen Modi vornehmen, zum Beispiel von Clients, die sich verbinden und ohne Anmeldeversuch wieder trennen.
  • ignoreip: setzen Sie sie auf die Adressen, von denen aus sich Personen verbinden, zum Beispiel ignoreip = 203.0.113.7. fail2ban zählt dann nichts von diesen Adressen, auch keine fehlgeschlagenen Anmeldungen.

Auf dem Remote-Computer eingerichtete MCP-Server verwenden

Um einen MCP-Server aus ~/.claude.json oder der .mcp.json eines Projekts in einer SSH-Sitzung zu verwenden, richten Sie ihn in diesen Dateien auf dem Remote-Computer ein. Claude Code startet deren stdio-Server dort, installieren Sie daher die Befehle, die diese Server ausführen, auf dem Remote-Computer. Zu Servern aus claude_desktop_config.json siehe Grenzen, während Desktop nicht verbunden ist. Ein claude://code/new-Link öffnet die Seite für neue Sitzungen in Desktop und kann eine SSH-Verbindung angeben. Fügen Sie einen solchen Link in ein Runbook, ein Dashboard oder eine Wiki-Seite ein, um Desktop direkt für den richtigen Computer und Ordner eingerichtet zu öffnen. Für Plattformen, die solche Links entfernen, siehe Der Link wird als reiner Text statt anklickbar dargestellt. SSH-Links erfordern Claude Desktop v2.110.0 oder höher. Der folgende Link gibt den Benutzer dev auf build.example.com, Port 2222, und den Ordner /srv/payments an und füllt einen Prompt aus:
Ein SSH-Link akzeptiert diese Parameter, wobei nur ssh_host erforderlich ist: Ein Alias aus ~/.ssh/config funktioniert als ssh_host nur für Personen, die diesen Eintrag haben. Damit der Link zu einer Verbindung passt, die andere bereits haben, geben Sie im Link denselben Benutzer, Host und Port wie bei dieser Verbindung an. Wenn Sie den Link öffnen, bittet Desktop Sie um Bestätigung, bevor die Verbindung ausgewählt wird:
  • Eine Verbindung, die Sie bereits haben: Wenn Host, Benutzer und Port mit einer Ihrer Verbindungen übereinstimmen, fragt Desktop, ob diese verwendet werden soll, und zeigt Ihnen Name und Host der Verbindung sowie den Ordner an, falls der Link einen angibt.
  • Eine neue Verbindung: Andernfalls öffnet Desktop den Dialog zum Hinzufügen einer SSH-Verbindung. Wenn Sie die Verbindung hinzufügen, fragt Desktop, ob eine Verbindung hergestellt werden soll, bevor etwas gespeichert wird, und zeigt Ihnen den Host aus dem Link sowie Port und Ordner an, falls der Link diese angibt.
Bis Sie bestätigen, speichert Desktop weder Host, Port noch Ordner aus dem Link und wählt keine Verbindung mit diesen Angaben aus oder öffnet sie. Wenn bereits eine SSH-Verbindung ausgewählt ist, kann die Seite für neue Sitzungen weiterhin selbstständig eine Verbindung damit herstellen, wie auch ohne Link, selbst wenn der Link denselben Host angibt. Ein Link kann keine Schlüsseldatei, kein Passwort und keinen Befehl enthalten. Jeder kann einen Link erstellen, prüfen Sie also, was er ausgefüllt hat:
  • Bevor Sie bestätigen: Prüfen Sie Host und Ordner.
  • Bevor Sie senden: Prüfen Sie den Prompt und die ausgewählte Umgebung.
Desktop füllt den Prompt beim Öffnen des Links aus, anstelle von noch nicht gesendetem Text, und sendet ihn niemals für Sie. Der Prompt wird als reiner Text behandelt, sodass ein führendes / oder ! und eine @-Dateierwähnung nicht als Befehl oder Erwähnung wirken. Wenn Sie abbrechen, bleibt der Prompt im Eingabefeld, und die zuvor ausgewählte Umgebung ändert sich nicht. Ein Link umgeht sshHostAllowlist nicht. Desktop prüft die Allowlist beim Verbindungsaufbau. Wenn der Link Desktop ohne einen Dialog zur Verbindung öffnet, prüfen Sie folgende mögliche Ursachen:
  • Sie sind abgemeldet: Melden Sie sich an und öffnen Sie den Link erneut.
  • Ein anderer Dialog ist geöffnet: Schließen Sie ihn und öffnen Sie den Link erneut.
  • Der Link ist ungültig: Desktop zeigt eine Meldung an, die angibt, was zu korrigieren ist, und füllt den Prompt nicht aus.
  • Desktop ist älter als v2.110.0: Frühere Versionen ignorieren die SSH-Parameter und öffnen die Seite für neue Sitzungen nur mit dem Prompt.
  • SSH-Sitzungen sind deaktiviert: Wenn Ihr Administrator die Allowlist auf ein leeres Array setzt, lehnt Desktop SSH-Links ab.

Eine SSH-Verbindung über einen Befehl erstellen

Wenn ein Befehlszeilen-Tool Ihre Remote-Rechner bei Bedarf erstellt, fügen Sie dessen Befehl zu sshHostCommands in ~/.claude/settings.json hinzu. Die Umgebungsauswahl listet dann ein Element, das nach Ihrem Eintrag benannt ist, etwa Create Dev box. Wenn Sie es auswählen, führt Desktop den Befehl auf Ihrem Computer aus, speichert den Host, den der Befehl ausgibt, als SSH-Verbindung und stellt die Verbindung her.
Verbindungen über einen Befehl erfordern Claude Desktop v3.6556.0 oder höher unter macOS oder Linux, angemeldet mit einem Claude-Konto. Administratoren können Befehle an ein Team verteilen.
Desktop führt den Befehl nur aus, wenn Sie die Verbindung erstellen oder einen weiteren Rechner erstellen, nicht bei jeder Verbindung. Jeder Eintrag ist eine Verbindung, die auf den Host zeigt, den Desktop zuletzt aus dem Befehl des Eintrags gespeichert hat.
Desktop stoppt oder löscht keine Rechner. Jeder der folgenden läuft weiter und kann weiterhin Kosten verursachen, bis Sie ihn mit Ihrem Tool löschen:
  • Ein Rechner, auf den ein Eintrag zeigte, bevor Sie einen weiteren erstellt haben
  • Die Rechner eines Eintrags, den Sie aus der Datei entfernt oder dessen id Sie geändert haben
  • Ein Rechner, den Ihr Befehl erstellt hat, ohne dass Desktop seinen Host gespeichert hat, zum Beispiel in diesen Fällen:
    • Der Befehl schlägt fehl oder überschreitet das Zeitlimit
    • Desktop kann den ausgegebenen Host nicht verwenden, eine andere Verbindung verwendet ihn bereits, oder Ihre Organisation erlaubt ihn nicht
    • Während der Befehl läuft, brechen Sie ihn ab, entfernen seinen Eintrag, ändern seinen command oder seine id oder beenden Desktop
Das folgende Beispiel fügt eine Verbindung namens Dev box hinzu. Wenn die Datei nicht existiert, erstellen Sie sie. Wenn sie bereits Einstellungen enthält, fügen Sie den Schlüssel daneben hinzu. Der Befehl acme-dev create steht für Ihr eigenes Tool, und ~/project ist der Ordner, den Desktop auf jedem Rechner auswählt, den Ihr Befehl erstellt:
~/.claude/settings.json
Jeder Eintrag akzeptiert diese Felder, wobei id, name und command erforderlich sind: Um die Verbindung zu ändern oder zu entfernen, bearbeiten Sie ihren Eintrag in der Datei, da sich der SSH-Verbindungsdialog der App für sie nicht öffnet. Sie müssen Desktop nach dem Bearbeiten der Datei nicht neu starten. Wenn der Eintrag nicht angezeigt wird oder Sie ihn nicht auswählen können, lesen Sie Wenn ein Befehl fehlt oder ausgegraut ist. Desktop startet das Programm direkt, ohne Shell und ohne Terminal:
  • Programm: Schreiben Sie seinen Namen oder seinen vollständigen Pfad ab /, ohne Leerzeichen. Desktop sucht einen reinen Namen im PATH, den Ihre Login-Shell exportiert. Relative Pfade wie ./acme-dev, Pfade, die mit ~ beginnen, sowie Shell-Aliase und -Funktionen funktionieren nicht.
  • Argumente: Trennen Sie einfache Argumente durch Leerzeichen. Der Befehl darf nur Leerzeichen, ASCII-Buchstaben, Ziffern und die Zeichen +,-./:=@_~ enthalten, und kein Wort darf mit ~ beginnen.
  • Skripte: Wenn der Befehl etwas anderes benötigt, etwa Anführungszeichen, Pipes, Variablen oder eine URL mit ? oder &, legen Sie ihn in ein Skript. Machen Sie das Skript ausführbar, beginnen Sie es mit einer #!-Zeile und setzen Sie command auf seinen vollständigen Pfad, etwa /Users/you/bin/make-devbox. Legen Sie das Skript unter macOS nicht in die Ordner Dokumente, Schreibtisch und Downloads, wo macOS es blockieren kann.
  • Eingabe: Das Programm erhält keine Eingabe und kein Terminal, es kann Sie dort also nicht zu einer Eingabe auffordern. Wenn Ihr Tool Sie über einen Browser oder eine Abfrage anmeldet, melden Sie sich zuerst in einem Terminal an, und erneut, sobald diese Anmeldung abläuft.
  • Umgebung: Das Programm läuft in Ihrem Home-Verzeichnis mit den Variablen, die Ihre Login-Shell exportiert. Desktop liest sie beim Start, wie bei einem ProxyCommand. Beenden Sie Desktop also und öffnen Sie es erneut, nachdem Sie sie geändert haben.
  • Zeitlimit: Desktop stoppt ein Programm, das nach 10 Minuten noch läuft. Die Fortschrittsmeldung von Desktop zeigt die Ausgabe des Programms nicht an. Um das Programm früher zu stoppen, wählen Sie Cancel neben dieser Meldung.
Das Programm muss mit Code 0 beendet werden und auf der Standardausgabe nur den Host ausgeben, in einer von zwei Formen:
  • Eine Zeile: host oder user@host, geschrieben wie für ssh_host in einem SSH-Link. Um einen Port anzugeben, verwenden Sie die JSON-Form.
  • Ein JSON-Objekt: sshHost und optional ein numerischer sshPort sowie ein startDirectory, das das des Eintrags ersetzt, etwa {"sshHost": "dev@devbox-1234.example.com", "sshPort": 2222}
Um die Ausgabe zu sehen, die Desktop liest, führen Sie den Befehl in einem Terminal ohne Eingabe und mit der Standardausgabe in einer Datei aus:
Die Datei darf nur den Host enthalten. Wenn Sie diesen Test ausführen, erstellt Ihr Tool ebenfalls einen Rechner. Löschen Sie ihn anschließend mit Ihrem Tool. Wenn Ihr Tool vor dem Host weitere Zeilen ausgibt, etwa Fortschrittsmeldungen, umschließen Sie es mit einem Skript, das nur den Host ausgibt. Das folgende Skript gibt die letzte Zeile der Ausgabe Ihres Tools aus. Wenn Ihr Tool fehlschlägt, wird das Skript mit demselben Code beendet, sodass Desktop den Fehler meldet:
Wenn der Befehl fehlschlägt, zeigt View details in der Meldung von Desktop die letzte Zeile, die der Befehl auf die Standardfehlerausgabe geschrieben hat, falls vorhanden. Beantworten Sie zwei Fragen, wenn Sie zum ersten Mal eine Verbindung zu einem neuen Host herstellen:
  • Host-Schlüssel: Prüfen Sie bei der standardmäßigen Host-Schlüsselprüfung von OpenSSH den Fingerabdruck des Schlüssels und wählen Sie dann, ob eine Verbindung hergestellt werden soll. Um die Frage zu überspringen, lassen Sie Ihren Befehl den Schlüssel zu ~/.ssh/known_hosts hinzufügen, bevor er den Host ausgibt, und zwar mit einem Schlüssel, den Ihr Tool beim Erstellen des Rechners erfahren hat. Für einen anderen Port als 22 beginnt diese Zeile mit [host]:port. Wenn Ihr Tool Hostnamen wiederverwendet, entfernen Sie auch die Zeile des alten Schlüssels.
  • Ordner: Wählen Sie, ob Sie dem Ordner vertrauen, den Sie dort öffnen
Lassen Sie die Host-Schlüsselprüfung für diese Hosts eingeschaltet und führen Sie für sie eine known_hosts-Datei. Wenn StrictHostKeyChecking auf no oder accept-new steht und UserKnownHostsFile zusätzlich /dev/null oder none ist, zeichnet nichts den Schlüssel auf. Wenn Ihr Tool dann einen Namen wiederverwendet, können Sie ohne Warnung eine Verbindung zu einem anderen Rechner herstellen. Ein wiederverwendeter Name ist auch dann von Bedeutung, wenn niemand am Computer ist, da Desktop sich von selbst mit diesen Hosts verbindet. Zum Beispiel stellt es eine Nachricht, die Sie gesendet haben, während der Host nicht erreichbar war, zu, sobald der Host antwortet. Selbst bei eingeschalteter Host-Schlüsselprüfung kann die Nachricht in diesen Fällen den neuen Rechner unter diesem Namen erreichen, beenden Sie also die Nutzung eines Rechners, bevor er gelöscht wird:
  • Sie, Ihr Befehl oder ein anderes Programm haben den neuen Schlüssel zu known_hosts hinzugefügt oder die Zeile des alten Schlüssels entfernt, wie es Ihr Befehl tut, wenn er Host-Schlüssel hinzufügt
  • Die Rechner Ihres Tools teilen sich einen Host-Schlüssel
  • Die Rechner Ihres Tools teilen sich eine Zertifizierungsstelle, der known_hosts vertraut
  • Sie oder Ihr Administrator haben KnownHostsCommand oder VerifyHostKeyDNS yes gesetzt, sodass SSH Schlüssel von außerhalb von known_hosts akzeptiert
Ihre Sitzungen auf früheren Rechnern funktionieren weiter, nachdem Sie Create another Dev box ausgewählt haben, und neue Sitzungen verwenden den neuen Rechner. Wählen Sie den Eintrag in der Umgebungsauswahl, um einen neuen Rechner zu erstellen oder einen zu ersetzen, der nicht mehr existiert. Auf der Seite für neue Sitzungen bietet ihn auch die Meldung an, dass Desktop den Host nicht erreichen kann.
  • Sitzungen auf früheren Rechnern: Setzen Sie sie über die Seitenleiste fort, da die Auswahl den aktuellen Rechner von Dev box und nicht die früheren auflistet. Desktop kann sich von selbst mit deren Rechnern verbinden, zum Beispiel beim Start von Desktop, beenden Sie also die Nutzung eines Rechners, wenn Sie damit fertig sind.
  • Ein Host, der vor Claude Desktop v4.4212.0 ersetzt wurde: Diese Versionen zeigen Replace Dev box’s host und verbinden sich nicht mehr mit dem ersetzten Host. Um eine Sitzung auf diesem Host fortzusetzen, öffnen Sie die Sitzung, wählen Sie Add SSH connection und speichern Sie die Verbindung, die Desktop ausfüllt. Aktualisieren Sie Desktop, bevor Sie einen weiteren Host ersetzen.
  • Neue Sitzungen auf zwei Rechnern: Fügen Sie einen zweiten Eintrag zu sshHostCommands hinzu
  • Ein neuer Host, der noch nicht antwortet: Lassen Sie die Seite für neue Sitzungen bis zu 10 Minuten geöffnet, während sie weiter versucht, eine Verbindung herzustellen. Wenn der Host immer noch nicht antwortet, wählen Sie Create another Dev box in der Meldung der Seite.
  • Kurz danach ein weiterer Rechner: Nach mehreren Ausführungen des Befehls innerhalb einer Stunde bestätigen Sie jede weitere Ausführung in dem Dialog, den Desktop öffnet und der den Befehl anzeigt
Um zu verhindern, dass Desktop sich von selbst mit einem Rechner verbindet, den ein Befehl erstellt hat, archivieren Sie jede Sitzung auf dem Rechner:
  1. Suchen Sie die Sitzungen des Rechners in der Seitenleiste. Das Detailfenster einer Sitzung zeigt den Host, auf dem sie läuft.
  2. Archivieren Sie jede Sitzung und lassen Sie sie archiviert.
  3. Wenn Sie seit der Erstellung dieses Rechners keinen weiteren Rechner aus demselben sshHostCommands-Eintrag erstellt haben, erstellen Sie einen oder entfernen Sie den Eintrag ebenfalls. Bis dahin ist der Rechner die gespeicherte Verbindung des Eintrags, und Desktop kann sich mit ihm verbinden, wenn Sie die Seite für neue Sitzungen mit dieser ausgewählten Verbindung öffnen.
  4. Löschen Sie jede andere SSH-Verbindung zu dem Rechner in der App oder entfernen Sie ihren sshConfigs-Eintrag.
  5. Beenden Sie Desktop und öffnen Sie es erneut, wodurch seine Verbindung zu dem Rechner geschlossen wird und seine Versuche, ihn zu erreichen, enden.
  6. Löschen Sie den Rechner mit Ihrem Tool.
Nachdem Sie einen Eintrag aus der Einstellungsdatei entfernt oder seine id geändert haben, bleiben die Sitzungen auf seinen Rechnern bestehen, sodass Desktop sich weiterhin mit diesen Rechnern verbinden kann. Das kann auch geschehen, wenn niemand am Computer ist, zum Beispiel um sich wieder mit dem laufenden Prozess einer Sitzung zu verbinden oder eine Nachricht zuzustellen, die auf das Senden gewartet hat. Um das zu verhindern, archivieren Sie die Sitzungen, wie unter Die Nutzung eines Rechners beenden beschrieben. Wenn Sie Administrator sind und einen verwalteten Eintrag entfernt haben, bleiben auch die Sitzungen Ihrer Benutzer bestehen, und jeder Benutzer muss seine eigenen archivieren. Um die Rechner des Eintrags selbst zu blockieren, setzen Sie eine sshHostAllowlist, die den Hosts entspricht, die Ihre Benutzer noch benötigen, und nicht den Hostnamen der Rechner. Das ist nur möglich, wo ein Muster die beiden unterscheiden kann. Um Ihrem Team eine Verbindung bereitzustellen, setzen Sie sshHostCommands in der Datei für verwaltete Einstellungen von Claude Code oder in der MDM-Richtlinie auf jedem Computer, nicht in der eigenen Geräteverwaltungsrichtlinie der Desktop-App. Benutzer sehen Ihre Einträge neben ihren eigenen, und die App bietet keine Möglichkeit, einen Eintrag zu bearbeiten oder zu entfernen, weder ihren noch Ihren. Die folgende Datei für verwaltete Einstellungen stellt Benutzern eine Verbindung namens Dev box bereit und schaltet ihre eigenen Einträge aus, zusammen mit Claude-Code-Hooks aus Benutzer-, Projekt- und lokalen Einstellungen:
managed-settings.json
Klären Sie vor dem Bereitstellen des Schlüssels jeden dieser Punkte:
  • Wo der Schlüssel hingehört: Wenn Ihre MDM-Richtlinie für Claude Code bereits einen Richtlinienschlüssel setzt, legen Sie ihn dort ab. Andernfalls legen Sie ihn in der Datei für verwaltete Einstellungen ab. Standardmäßig hat eine solche Richtlinie Vorrang vor der Datei, und Desktop ignoriert dann Einträge in der Datei. Setzen Sie ihn auf dem Computer, auch wenn serververwaltete Einstellungen gelten: Desktop ignoriert den Schlüssel dort sowie in Projekt- und lokalen Einstellungen.
  • Die id: Wenn der sshHostCommands-Eintrag eines Benutzers Ihre id hat, funktioniert nur Ihrer. Wenn eine andere SSH-Verbindung sie hat, etwa eine in den sshConfigs eines Benutzers, ist Ihr Eintrag ausgegraut. Wählen Sie eine id, die Benutzer wahrscheinlich nicht wählen.
  • Das Programm: Geben Sie seinen vollständigen Pfad an, da Desktop einen reinen Namen im eigenen PATH jedes Benutzers sucht. Das Programm läuft als der Benutzer, mit den Variablen, die dessen Login-Shell exportiert.
  • Eigene Einträge der Benutzer: Desktop behandelt den Eintrag eines Benutzers wie einen Hook, da beide ein Programm auf dem Computer ausführen. Um nur Ihre Einträge zuzulassen, setzen Sie strictPluginOnlyCustomization auf ["hooks"] oder fügen Sie "hooks" zu dessen Liste hinzu. Damit stoppen Sie auch Claude-Code-Hooks aus Benutzer-, Projekt- und lokalen Einstellungen, ohne Möglichkeit, sie beizubehalten. Wenn Sie stattdessen diesen Schlüssel oder allowManagedHooksOnly auf true setzen, blockieren Sie mehr, wie der Eintrag jedes Schlüssels auflistet.
  • Jeder Eintrag: Um auch Ihre Einträge auszuschalten, setzen Sie disableAllHooks in den verwalteten Einstellungen. Wenn Sie disableDesktopLocalSessions oder eine sshHostAllowlist setzen, die keinen Host zulässt, listet die Auswahl keine Create- oder Create another-Einträge.
  • Wo die Sperren gelten: Für diese Einträge liest Desktop allowManagedHooksOnly, strictPluginOnlyCustomization und disableAllHooks aus den serververwalteten Einstellungen sowie aus der eigenen Datei oder Richtlinie des Computers und wendet das strengere Ergebnis an. Jeder Eintrag bleibt ausgegraut, bis Desktop claude.ai auf serververwaltete Einstellungen geprüft hat, selbst wenn Ihre Organisation keine hat.
  • Zulässige Hosts: Wenn Sie sshHostAllowlist setzen, stellen Sie sicher, dass ein Muster auf jeden Hostnamen passt, den Ihr Tool ausgibt, und lassen Sie user@ im Muster weg. Desktop prüft den ausgegebenen Namen erst, nachdem der Befehl ausgeführt wurde. Ein Rechner, den die Liste ablehnt, existiert also bereits, und der Benutzer muss ihn mit Ihrem Tool löschen. Bei jedem Verbindungsaufbau muss auch der aufgelöste HostName passen.
Starten Sie Desktop nach dem Bereitstellen des Schlüssels auf einem Testcomputer neu. Sehen Sie in der Umgebungsauswahl des Code-Tabs unter SSH oder in der einzelnen SSH-Zeile nach. Ihr Eintrag wird als Create-Element angezeigt oder als ausgegrautes Element, das beim Darüberfahren mit der Maus den Grund angibt. Wenn er fehlt, prüfen Sie, wo Sie den Schlüssel abgelegt haben, und dann die Fälle unter Wenn ein Befehl fehlt oder ausgegraut ist. Die Umgebungsauswahl listet in diesen Fällen keinen Create- oder Create another-Eintrag:
  • Die Datei: ~/.claude/settings.json enthält ungültiges JSON oder einen Wert, den das Schema ablehnt, Sie haben den Schlüssel falsch geschrieben, oder Sie haben ihn in die Einstellungen eines Projekts eingetragen. Korrigieren Sie die Datei.
  • Plattform und Konto: Sie verwenden Windows oder einen Drittanbieter statt eines Claude-Kontos. Fügen Sie jeden Host selbst als SSH-Verbindung hinzu.
  • Die Einstellungen Ihrer Organisation: Ihr Administrator hat lokale Sitzungen oder SSH-Sitzungen ausgeschaltet. Fragen Sie ihn, ob Sie Befehle verwenden können.
  • Kein ssh-Programm: Desktop konnte den OpenSSH-Client auf Ihrem Computer nicht starten. Installieren Sie ihn oder bitten Sie Ihren Administrator, ihn zuzulassen, und starten Sie Desktop dann neu.
Ein Eintrag, den Sie nicht auswählen können, ist ausgegraut. Fahren Sie mit der Maus darüber, um den Grund zu sehen:
  • Ein Fehler im Eintrag: Korrigieren Sie das Feld oder den Befehl, den die Meldung nennt. Wenn die id bereits verwendet wird, geben Sie dem Eintrag eine andere.
  • Eine fehlerhafte Einstellungsdatei: Solange Ihre eigene Einstellungsdatei fehlerhaft ist, können die Einträge Ihres Administrators ausgegraut sein, mit einer Meldung, die die Datei nennt. Korrigieren Sie die Datei.
  • Ein neuer Host: Create another ist eine Minute lang ausgegraut, nachdem Desktop einen Host gespeichert hat. Wählen Sie es nach dieser Minute aus. Vor Claude Desktop v4.4212.0 ist Replace Dev box’s host 10 Minuten lang ausgegraut.
  • Hooks sind ausgeschaltet oder eingeschränkt: Ihre eigenen Einträge funktionieren nur dort, wo Ihre eigenen Hooks ausgeführt werden können. Entfernen Sie disableAllHooks aus Ihren Einstellungen oder fragen Sie Ihren Administrator.
  • Einstellungen werden noch geladen: Jeder Eintrag ist ausgegraut, bis Desktop die serververwalteten Einstellungen Ihrer Organisation geladen hat, normalerweise wenige Sekunden nach dem Start. Wenn die Einträge ausgegraut bleiben, prüfen Sie Ihre Verbindung zu claude.ai.

SSH-Verbindungen für Ihr Team vorkonfigurieren

Administratoren können SSH-Verbindungen an Teammitglieder verteilen, indem sie sshConfigs in den verwalteten Einstellungen festlegen.
  • Was Benutzer sehen: Auf diese Weise definierte Verbindungen erscheinen automatisch in der Umgebungsauswahl jedes Benutzers.
  • Was Benutzer ändern können: Benutzer können eine verwaltete Verbindung auswählen und ihren eigenen Worktree folder dafür festlegen. Die übrigen Felder können sie in der App nicht bearbeiten, und sie können die Verbindung nicht löschen.
Das folgende Beispiel konfiguriert eine einzelne Verbindung vor:
Jeder Eintrag erfordert id, name und sshHost. Die Felder sshPort und sshIdentityFile sind optional. Benutzer können auch sshConfigs zu ihrer eigenen ~/.claude/settings.json hinzufügen. Wenn Sie user@ in sshHost weglassen, verbindet sich Desktop als der User, den die ~/.ssh/config des jeweiligen Entwicklers für den Host festlegt, oder andernfalls mit dessen Benutzernamen auf seinem eigenen Computer.

SSH-Hosts einschränken, mit denen Benutzer sich verbinden können

Administratoren können Desktop-SSH-Sitzungen auf einen genehmigten Satz von Hosts beschränken, indem sie sshHostAllowlist in den verwalteten Einstellungen setzen. Wenn diese festgelegt ist, können Benutzer sich nur mit Hosts verbinden, deren aufgelöster Hostname einem der Muster entspricht. Setzen Sie es auf ein leeres Array, um SSH-Sitzungen zu deaktivieren. Der Referenzeintrag zu sshHostAllowlist beschreibt, wie ein leeres Array mit Listen aus anderen verwalteten Quellen kombiniert wird. Das folgende Beispiel erlaubt Verbindungen zu jedem Host unter devboxes.example.com und zu einem einzelnen benannten Bastion-Host:
Wenn Ihre Organisation serververwaltete Einstellungen bereitstellt, setzen Sie sshHostAllowlist dort. Standardmäßig liest Desktop den Schlüssel nur aus der ranghöchsten verwalteten Quelle, die einen Richtlinienschlüssel bereitstellt. Wenn diese Quelle den Schlüssel nicht setzt, ignoriert Desktop eine Liste in einer niedriger eingestuften MDM-Richtlinie oder verwalteten Einstellungsdatei und behandelt den Schlüssel als nicht gesetzt. Desktop zeigt keine Warnung an.Hinterlegen Sie dieselbe Liste außerdem auf dem Computer jedes Benutzers, in der dort ranghöchsten MDM-Richtlinie oder verwalteten Einstellungsdatei. Desktop ruft serververwaltete Einstellungen beim Start ab und behält keine zwischengespeicherte Kopie, daher gilt bis zu einem erfolgreichen Abruf die Liste auf dem Computer.
Bei Mustern wird die Groß-/Kleinschreibung nicht beachtet. * passt auf jeden Host, und *.example.com passt auf example.com und jede Subdomain. Alles andere ist eine exakte Übereinstimmung. Die Prüfung erfolgt anhand des Hostnamens nach der Auflösung von ~/.ssh/config über ssh -G, sodass ein Host-Alias zulässig ist, solange sein aufgelöster HostName übereinstimmt. Auch die Jump-Hosts einer Sitzung müssen übereinstimmen. sshHostAllowlist wird nur aus verwalteten Einstellungen gelesen; Werte in Benutzer- oder Projekteinstellungen werden ignoriert. Nur die Claude Desktop-App berücksichtigt diese Einstellung; die Claude Code CLI und IDE-Erweiterungen lesen sie nicht, und sie beschränkt keine ssh-Befehle, die über das Bash-Tool ausgeführt werden. Sie regelt, mit welchen Hosts sich die Desktop-App verbindet, nicht den Netzwerk-Egress, daher kombinieren Sie sie mit den Netzwerk- oder Zero-Trust-Kontrollen Ihrer Organisation, wenn Sie eine harte Grenze benötigen. Fügen Sie jeden Jump-Host, den Desktop prüft, mit seinem eigenen aufgelösten HostName zu sshHostAllowlist hinzu. Fügen Sie die Jump-Hosts hinzu, bevor Benutzer auf Claude Desktop v3.1623.0 oder höher aktualisieren, sonst können sie sich nicht über diese verbinden.
Die Liste kennt nur eine Art von Eintrag, daher können Benutzer auch auf jedem Host, den Sie auflisten, eine Sitzung starten. Listen Sie nur Jump-Hosts auf, auf denen Sie Benutzern auch das Ausführen von Sitzungen erlauben würden.
Desktop prüft Jump-Hosts im ProxyJump, den die ~/.ssh/config des Benutzers für den Host der Sitzung festlegt, oder in einem ProxyCommand, der als ssh -W %h:%p <host> geschrieben ist. Wenn ein geprüfter Jump-Host nicht auf der Liste steht, während Desktop eine Sitzung verbindet oder erneut verbindet, schlägt die Verbindung fehl. Wenn ein Benutzer eine Sitzung startet oder eine Nachricht sendet, enthalten die Details des Fehlers den HostName dieses Jump-Hosts, also den Namen, den Sie hinzufügen müssen:
Wenn die Meldung managed settings on this computer lautet, fügen Sie den Namen zur Liste auf dem Computer des Benutzers hinzu. Wenn mehr als ein Jump-Host fehlt, nennt der Fehler jeweils einen nach dem anderen. Um alle Namen zu finden, bevor Benutzer aktualisieren, verwenden Sie ein Terminal auf dem Computer eines Benutzers:
1

Die Route ermitteln

Führen Sie ssh -G mit einem Host aus, mit dem sich Benutzer verbinden, etwa ssh -G devbox. Suchen Sie nach einer proxyjump-Zeile oder einer proxycommand-Zeile, die als ssh -W %h:%p <host> geschrieben ist. Der Befehl zählt auch mit einer der Optionen -l, -p, -J, -q, -v, -N, -T, -x oder -a, und die Hosts nach -J sind ebenfalls Jump-Hosts. Wenn eine proxycommand-Zeile ein anderes Programm als ssh ausführt, fügen Sie dafür nichts hinzu.
2

Jeden Jump-Host nachschlagen

Führen Sie ssh -G mit jedem Jump-Host aus dieser Zeile aus, ohne :port, und notieren Sie den hostname, den der Befehl ausgibt. Wenn die Ausgabe für den ersten Jump-Host in dieser Zeile eine Zeile einer der beiden Arten enthält, wiederholen Sie diesen Schritt damit. Ignorieren Sie eine solche Zeile in der Ausgabe eines späteren Jump-Hosts.
3

Die Namen hinzufügen

Fügen Sie jeden Hostnamen oder einen Platzhalter, der ihn abdeckt, zu sshHostAllowlist in jeder verwalteten Quelle hinzu, in der Sie eine Liste festlegen. Lassen Sie die Benutzer Desktop anschließend beenden und erneut öffnen, da es serververwaltete Einstellungen beim Start abruft.

Lokale Sitzungen ausschalten und SSH-Verbindungen verteilen

Um lokale Sitzungen auszuschalten und SSH-Sitzungen auf von Ihnen gewählte Hosts zu beschränken, stellen Sie disableDesktopLocalSessions, sshConfigs und sshHostAllowlist gemeinsam bereit.
Diese Konfiguration gilt für Benutzer, die sich mit einem Claude-Konto anmelden. Bei einem Drittanbieter sind SSH-Sitzungen standardmäßig ausgeschaltet, und das Setzen von sshHostAllowlist kann sie einschalten. Lesen Sie SSH remote sessions in Claude Desktop on 3P, bevor Sie diese Schlüssel bereitstellen.
Das folgende Beispiel schaltet lokale Sitzungen aus, fügt eine Verbindung hinzu und beschränkt SSH-Sitzungen auf den Host dieser Verbindung:
managed-settings.json
Die Schlüssel gelten für die Desktop-App. Andere Möglichkeiten, Claude Code auszuführen, bleiben davon unberührt, etwa die CLI, Cowork und Cloud-Sitzungen:
  • Die CLI: Keiner der Schlüssel hindert einen Entwickler daran, die Claude Code CLI auf seinem eigenen Computer auszuführen
  • Cowork: Keiner der Schlüssel gilt für Cowork-Sitzungen oder geplante Aufgaben in Cowork
  • Cloud-Sitzungen: Keiner der Schlüssel ändert, ob Cloud-Sitzungen verfügbar sind. Um sie auszuschalten, verwenden Sie die Einstellung Cloud sessions unter Admin console controls.
Wenn Sie das Beispiel anpassen, prüfen Sie die Hostnamen, die Desktop-Version und die Dateiberechtigungen:
  • Hostnamen: Stellen Sie sicher, dass ein Muster in sshHostAllowlist dem Hostnamen jedes sshConfigs-Eintrags ohne user@ entspricht, sonst können sich Entwickler nicht damit verbinden. Fügen Sie außerdem ein Muster hinzu, das jedem Jump-Host entspricht, den Desktop auf dem Weg dorthin prüft. Wie Desktop einen Hostnamen abgleicht, erfahren Sie unter Einschränken, mit welchen SSH-Hosts sich Benutzer verbinden können.
  • Version: disableDesktopLocalSessions erfordert Claude Desktop v1.37937.0 oder höher
  • Dateiberechtigungen: Stellen Sie sicher, dass das Konto jedes Entwicklers auf dem Computer die verwaltete Einstellungsdatei lesen kann. Desktop wendet die Schlüssel in einer Datei, die das Konto nicht lesen kann, nicht an, und Claude Code startet ebenfalls ohne sie.
Legen Sie die drei Schlüssel in einer einzigen verwalteten Quelle ab, und zwar in der ranghöchsten, die Sie bereitstellen. Wenn Sie serververwaltete Einstellungen bereitstellen, hinterlegen Sie außerdem eine Kopie der drei Schlüssel in der ranghöchsten MDM-Richtlinie oder verwalteten Einstellungsdatei auf jedem Computer. Desktop ruft serververwaltete Einstellungen beim Start ab, und bis zu einem erfolgreichen Abruf gilt die Kopie auf dem Computer. Um zu bestätigen, dass die Einstellungen greifen, prüfen Sie den Computer eines Entwicklers:
1

Die Umgebungsauswahl prüfen

Beenden Sie Desktop, öffnen Sie es erneut und öffnen Sie dann die Umgebungsauswahl. Die Einstellungen gelten, wenn dort Folgendes angezeigt wird:
  • Der Eintrag für diesen Computer, ausgegraut
  • Shared Dev VM unter SSH. Wenn der Eintrag dort nicht aufgeführt ist, klicken Sie auf die einzelne Zeile SSH oder auf More am Ende der Gruppe.
Wenn der Eintrag für den Computer weiterhin verfügbar ist, prüfen Sie diese Ursachen:
  • Desktop-Version: Aktualisieren Sie Desktop, wenn die Version älter als v1.37937.0 ist.
  • Datei mit verwalteten Einstellungen: Stellen Sie sicher, dass die Datei gültiges JSON enthält.
  • Verwaltete Quelle: Stellen Sie sicher, dass der Computer die verwaltete Quelle liest, die die Schlüssel enthält.
2

Einen Host hinzufügen, der nicht auf der Allowlist steht

Fügen Sie eine SSH-Verbindung hinzu mit einem Hostnamen, der nicht auf der Allowlist steht, etwa other.example.com. Desktop speichert die Verbindung, verweigert aber den Verbindungsaufbau und meldet, dass die Einstellungen Ihrer Organisation die Verbindung nicht zulassen.

Unternehmenskonfiguration

Organisationen in Team- oder Enterprise-Plänen können das Verhalten der Desktop-App durch Admin-Konsolen-Steuerelemente, verwaltete Einstellungsdateien und Geräteverwaltungsrichtlinien verwalten.

Admin-Konsolen-Steuerelemente

Diese Einstellungen werden über die Admin-Einstellungskonsole konfiguriert:
  • Desktop: Kontrollieren Sie, ob Benutzer in Ihrer Organisation auf Claude Code in der Desktop-App zugreifen können
  • Cloud-Sitzungen: Aktivieren oder deaktivieren Sie Cloud-Sitzungen für Ihre Organisation
  • Remote Control: Aktivieren oder deaktivieren Sie Remote Control für Ihre Organisation
In Enterprise-Organisationen mit aktiviertem HIPAA ist der Schalter Desktop standardmäßig ausgeschaltet, und ein Owner kann ihn einschalten. Das Anwenden der HIPAA-Konfiguration schaltet ihn aus, auch wenn er eingeschaltet war, sodass ein Owner ihn danach wieder einschalten muss. Cloud-Sitzungen und Remote Control sind ebenfalls standardmäßig ausgeschaltet, und ein Owner kann sie nicht einschalten, sobald die HIPAA-Konfiguration auf die Organisation angewendet wurde.
Das OpenTelemetry-Formular für Cowork unter Überwachung in den Daten- und Datenschutzeinstellungen der Admin-Konsole gilt nur für Cowork-Sitzungen. In einer Cowork-Sitzung auf diesem Computer übergibt die Desktop-App diesen Collector an Claude Code als OTEL_*-Umgebungsvariablen, sodass das Formular wirksam wird, obwohl Claude Code in dieser Sitzung niemals Admin-Konsolen-Einstellungen abruft.Um Telemetrie aus Code-Tab-Sitzungen zu exportieren, setzen Sie CLAUDE_CODE_ENABLE_TELEMETRY und die OTEL_*-Variablen im env-Block Ihrer verwalteten Claude-Code-Einstellungen, wie in Administrator-Konfiguration für Überwachung gezeigt. Lokale, Cloud- und SSH-Sitzungen lesen verwaltete Einstellungen aus verschiedenen Quellen. Für die Hosts, die eine Cloud-Sitzung erreichen kann, siehe Netzwerkzugriff. Für den service.name, den Code-Tab-Sitzungen melden, siehe Service-Informationen.Um herauszufinden, auf welchem Remote-Computer eine SSH-Sitzung ausgeführt wurde, siehe Telemetrie Desktop-SSH-Sitzungen zuordnen.

Verwaltete Einstellungen

Verwaltete Einstellungen überschreiben Projekt- und Benutzereinstellungen und gelten für Claude-Code-Sitzungen in Desktop. Sie können diese Schlüssel in der verwalteten Einstellungsdatei Ihrer Organisation oder remote über die Admin-Konsole festlegen, sofern in der Zeile eines Schlüssels nichts anderes angegeben ist. Welche verwalteten Einstellungen eine Desktop-Sitzung erreichen, hängt davon ab, wo diese Sitzung ausgeführt wird. Modellbeschränkungen wie availableModels werden in Desktop-Claude-Code-Sitzungen auf die gleiche Weise durchgesetzt wie in der Terminal-CLI; siehe Oberflächenabdeckung.
  • Lokale Sitzungen auf diesem Computer: Eine verwaltete Einstellungsdatei, die auf der Festplatte bereitgestellt wird, gilt. Verwaltete Einstellungen, die remote über die Admin-Konsole hochgeladen werden, erreichen diese Sitzungen auch auf Anthropics API, wenn sich die Sitzung mit einer berechtigten Anmeldung authentifiziert, und folgen dabei der gleichen Rangfolge der Einstellungen wie die Terminal-CLI.
  • Cloud-Sitzungen: erhalten Server-verwaltete Einstellungen; Gerätedateien erreichen diese nicht, da sie auf von Anthropic verwalteten VMs ausgeführt werden. Sitzungen, die zu einer selbstgehosteten Umgebung weitergeleitet werden, lesen auch die verwaltete Einstellungsdatei im Runner-Image. Wie Claude Code verwaltete Quellen kombiniert gibt an, wann diese Datei gilt.
  • SSH-Sitzungen: Die Sitzung liest die verwaltete Einstellungsdatei vom Remote-Host. Desktop selbst liest sshConfigs, sshHostAllowlist, disableSshSavedPasswords und disableDesktopLocalSessions auf dem lokalen Computer. Wenn Sie mehr als eine verwaltete Quelle bereitstellen, liest Desktop sie standardmäßig aus einer.
  • Cowork-Sitzungen: In einer Cowork-Sitzung auf diesem Computer ruft Claude Code niemals Admin-Konsolen-Einstellungen ab, auch wenn sich der Benutzer mit einem Team- oder Enterprise-Konto anmeldet, und liest Richtlinien, die auf dem Computer bereitgestellt werden, es sei denn, Ihre Claude-Desktop-Konfiguration setzt requireCoworkFullVmSandbox. Remote-Cowork-Sitzungen erhalten keine. Siehe wo und wann eine Richtlinie gilt, um zu erfahren, welche Gerätedateien Cowork erreichen, und MCP-Berechtigungsregeln, um zu erfahren, wie Bash- und WebFetch-Regeln auf Coworks Tools angewendet werden.
In lokalen und SSH-Sitzungen stellt die Desktop-App die verbundenen claude.ai-Konnektoren jedes Benutzers direkt an Claude Code. Keine MCP-Einstellung oder managed-mcp.json erreicht diese Konnektoren, unabhängig davon, welche Einstellungsquelle oder Dateispeicherort Sie verwenden. Um die Tools eines Konnektors in diesen Sitzungen zu blockieren, verwenden Sie die Konnektoren-Tool-Steuerelemente Ihrer Organisation. Wie Konnektoren Claude Code erreichen zeigt, welche Einstellungen Konnektoren in jeder Art von Sitzung steuern. permissions.disableBypassPermissionsMode und disableAutoMode funktionieren auch in Benutzer- und Projekteinstellungen, aber das Platzieren in verwalteten Einstellungen verhindert, dass Benutzer sie überschreiben. Für die Berechtigungs-, Plugin- und Bereitstellungsschlüssel, die nur eine verwaltete Quelle setzen kann, siehe Schlüssel, die nur verwaltete Einstellungen setzen können.

Geräteverwaltungsrichtlinien

IT-Teams können die Desktop-App über MDM auf macOS, Gruppenrichtlinie unter Windows oder eine Richtliniendatei unter Linux verwalten. Verfügbare Richtlinien umfassen das Aktivieren oder Deaktivieren der Claude-Code-Funktion, das Steuern von Auto-Updates unter macOS und Windows und das Festlegen einer benutzerdefinierten Bereitstellungs-URL.
  • macOS: Konfigurieren Sie über die Präferenzdomäne com.anthropic.claudefordesktop mit Tools wie Jamf oder Kandji
  • Windows: Konfigurieren Sie über die Registrierung unter SOFTWARE\Policies\Claude
  • Linux: Konfigurieren Sie über eine Datei im Besitz von root unter /etc/claude-desktop/managed-settings.json, die die Richtlinienschlüssel als JSON-Objekt enthält. Desktop lehnt die Datei ab, wenn außer root jemand in die Datei oder ihren Ordner schreiben kann. Es handelt sich um eine andere Datei als die verwaltete Einstellungsdatei von Claude Code.

Anmeldung auf Ihre Organisation beschränken

Um einzuschränken, welche claude.ai-Organisationen sich bei Claude Desktop anmelden können, setzen Sie forceLoginOrgUUID in der Claude-Desktop-Richtlinie. Der Schlüssel erfordert Claude Desktop v1.2581.0 oder später. Unter Linux sieht eine Richtliniendatei, die nur diesen Schlüssel setzt, so aus:
/etc/claude-desktop/managed-settings.json
Ersetzen Sie den Platzhalter durch Ihre claude.ai-Organisations-ID, die in den claude.ai-Admin-Einstellungen angezeigt wird. Es ist dieselbe ID, die die Einstellung forceLoginOrgUUID von Claude Code erwartet. Beispiele für macOS und Windows, die diesen Schlüssel setzen, finden Sie unter Claude-Desktop-Richtlinie bereitstellen im Cowork-Leitfaden für HIPAA-fähige Organisationen.
Prüfen Sie den Wert von forceLoginOrgUUID, bevor Sie ihn bereitstellen. Wenn die ID nicht die Ihrer Organisation ist, können Personen in Ihrer Organisation Claude Desktop nicht verwenden, es sei denn, sie gehören auch einer Organisation mit dieser ID an. Stellen Sie zur Behebung die korrekte ID bereit und lassen Sie die Betroffenen Claude Desktop neu starten.
Wenn Sie forceLoginMethod und forceLoginOrgUUID in den verwalteten Einstellungen von Claude Code setzen, ändert dies den Anmeldebildschirm von Claude Desktop nicht.

Netzwerkzugriffsanforderungen

Desktop lädt seinen Anwendungscode und Benutzerinhalte von Anthropic-CDN-Hosts.
Der Datenverkehr erfolgt über HTTPS auf Port 443, es sei denn, Sie konfigurieren einen benutzerdefinierten Port für OTLP, ein LLM-Gateway oder einen MCP-Server. Für Proxy-Server, benutzerdefinierte Zertifizierungsstellen, mTLS und die Domänen, die die eigenständige CLI benötigt, siehe Netzwerkkonfiguration. Um die Anzahl der Firewall-Wildcards zu reduzieren, erlauben Sie stattdessen diese Anthropic-Hosts. Bestimmte Subdomänen werden dynamisch generiert und müssen Wildcards bleiben.
Wenn Ihre Organisation IP-Allowlisting für Claude aktiviert hat, leiten Sie bridge.claudeusercontent.com durch denselben Proxy-Ausgang wie claude.ai und api.anthropic.com. Wenn Sie dies nicht auf diese Weise leiten können, fügen Sie die Ausgangsadresse, die Ihr Proxy für diesen Host verwendet, zur IP-Allowlist Ihrer Organisation hinzu, aber nur, wenn diese Adresse Ihrer Organisation gewidmet ist: Ein gemeinsamer Proxy-Ausgangsbereich lässt auch andere Kunden des Proxy-Anbieters zu. Anthropic überprüft Verbindungen zu diesem Host anhand der IP-Allowlist Ihrer Organisation unter Verwendung der Adresse, von der sie ankommen. Wenn Ihr Proxy Datenverkehr dafür über eine Adresse sendet, die nicht auf dieser Allowlist steht, funktionieren Claude in Chrome und andere Funktionen, die sich über die Bridge verbinden, nicht mehr, während der Rest der App weiterhin funktioniert. Ein Artefakt, das eine Schriftart von Google Fonts lädt, fordert auch fonts.googleapis.com und fonts.gstatic.com an. Beide Hosts sind optional. Wenn Sie diese blockieren, werden Artefakte in Fallback-Schriftarten gerendert. Blockieren Sie mit einer schnellen Ablehnung statt eines stillen Verwerfens, damit die Schriftartanfrage sofort fehlschlägt, anstatt das erste Rendering der Seite zu verzögern. Artefakte können auch JavaScript-Bibliotheken wie React oder ein Charting-Paket von cdnjs.cloudflare.com, cdn.jsdelivr.net, cdn.tailwindcss.com, code.jquery.com und unpkg.com laden und von keinem anderen externen Host. Wenn Sie diese Hosts blockieren, funktionieren die Teile eines Artefakts, die von einer Bibliothek abhängen, nicht, und im Gegensatz zu einer blockierten Schriftart hat eine blockierte Bibliothek keinen Fallback. Blockieren Sie auch hier mit einer schnellen Ablehnung, damit eine blockierte Bibliotheksanfrage sofort fehlschlägt, anstatt zu hängen, bis sie abläuft.

Authentifizierung und SSO

Team- und Enterprise-Organisationen können SSO für alle Benutzer verlangen. Siehe Authentifizierung für Plan-Level-Details und Einrichten von SSO für SAML-Konfiguration; OIDC-Setup wird im Claude Enterprise Administrator Guide behandelt.

Datenbehandlung

Claude Code verarbeitet Ihren Code lokal in lokalen Sitzungen oder in Cloud-Sitzungen auf von Anthropic verwalteter Infrastruktur, es sei denn, Ihre Organisation leitet diese zu einer selbstgehosteten Umgebung weiter. Cloud-Sitzungen, einschließlich in einer selbstgehosteten Umgebung, senden Konversationen und Code-Kontext an Anthropics API zur Verarbeitung; lokale und SSH-Sitzungen senden diese an den Modell-Provider, den Ihre Bereitstellung konfiguriert, standardmäßig Anthropics API. Siehe Datenbehandlung für Details zu Datenspeicherung, Datenschutz und Compliance.

Bereitstellung

Desktop kann über Enterprise-Bereitstellungstools verteilt werden:
  • macOS: Verteilen Sie über MDM wie Jamf oder Kandji mit dem .dmg-Installer
  • Windows: Stellen Sie über das MSIX-Paket bereit. Siehe Claude Desktop für Windows bereitstellen für Enterprise-Bereitstellungsoptionen einschließlich stiller Installation
Für die Domänen, die Sie in Ihrer Firewall auf die Allowlist setzen müssen, siehe Netzwerkzugriffsanforderungen oben. Für Proxy-Einstellungen, benutzerdefinierte Zertifizierungsstellen und LLM-Gateways siehe Netzwerkkonfiguration. Für die vollständige Enterprise-Konfigurationsreferenz siehe das Enterprise-Konfigurationshandbuch.

Kommen Sie von der CLI?

Wenn Sie bereits die Claude Code CLI verwenden, führt Desktop dieselbe zugrunde liegende Engine mit einer grafischen Benutzeroberfläche aus. Sie können beide gleichzeitig auf demselben Computer ausführen, sogar auf demselben Projekt. Jede behält ihre eigene Sitzungsliste, und Sie können eine CLI-Sitzung in Desktop bringen. Sie teilen Konfiguration und Projektgedächtnis über CLAUDE.md-Dateien. Um eine CLI-Sitzung in Desktop zu verschieben, führen Sie /desktop im Terminal aus. Claude speichert Ihre Sitzung und öffnet sie in der Desktop-App, dann beendet die CLI. Dieser Befehl ist auf macOS und x64 Windows verfügbar, wenn Sie mit einem Claude-Abonnement angemeldet sind. Er ist nicht mit API-Schlüssel-Authentifizierung oder auf Amazon Bedrock, Google Cloud’s Agent Platform oder Microsoft Foundry verfügbar. Aus Ihrer Shell öffnet claude --desktop Desktop direkt, ohne eine Terminal-Sitzung zu starten. Es erfordert Claude Code v2.1.285 oder später und hat die gleichen Plattform- und Anmeldeanforderungen wie /desktop. Ohne weitere Argumente öffnet es Desktop im aktuellen Verzeichnis. Um eine vorhandene CLI-Sitzung in Desktop zu öffnen, fügen Sie --continue für die neueste Konversation in diesem Verzeichnis hinzu, oder --resume mit der Sitzungs-ID, die /status anzeigt:
Claude Code gibt Opening session <session-id> in Claude Desktop aus, die Sitzung öffnet sich in der App, und der Befehl wird beendet. Ein Sitzungsname funktioniert nicht anstelle der ID. Claude Code verschiebt keine Sitzung, die in einem anderen Terminal offen ist oder noch im Hintergrund läuft. Wenn Claude Desktop nicht installiert ist, gibt der Befehl einen Download-Link aus und wird beendet. Sie können auch eine CLI-Sitzung von innen in Desktop aufgreifen mit /resume. Der Befehl ist in lokalen Sitzungen verfügbar, nicht in SSH-, WSL- oder Cloud-Sitzungen. Um eine Terminal-Sitzung in Desktop fortzusetzen:
  1. Schließen Sie die Sitzung im Terminal.
  2. Geben Sie im Desktop-Eingabefeld /resume ein. Desktop listet die Sitzungen auf, die Sie von der CLI auf diesem Computer gestartet haben. Suchen Sie nach Titel, Ordner oder Branch und sehen Sie eine Vorschau, wo jede endete.
  3. Wählen Sie die Sitzung aus. Sie wird in der App mit ihrer vollständigen Konversation und ihrem Kontext fortgesetzt.
Desktop setzt dieselbe Sitzung fort, nicht eine Kopie, daher findet claude --resume im Terminal sie danach immer noch.
Wann Desktop vs CLI verwendet werden: Verwenden Sie Desktop, wenn Sie parallele Sitzungen in einem Fenster verwalten, Panes nebeneinander anordnen oder Änderungen visuell überprüfen möchten. Verwenden Sie die CLI, wenn Sie Scripting, Automatisierung oder einen Terminal-Workflow bevorzugen.

CLI-Flag-Äquivalente

Diese Tabelle zeigt das Desktop-App-Äquivalent für häufige CLI-Flags. Flags, die nicht aufgelistet sind, haben kein Desktop-Äquivalent, da sie für Scripting oder Automatisierung konzipiert sind.

Gemeinsame Konfiguration

Desktop und CLI lesen dieselben Konfigurationsdateien, daher wird Ihr Setup übertragen:
  • CLAUDE.md und CLAUDE.local.md-Dateien in Ihrem Projekt werden von beiden verwendet
  • MCP-Server, die in ~/.claude.json oder .mcp.json konfiguriert sind, funktionieren in beiden
  • Hooks und Skills, die in Einstellungen definiert sind, gelten für beide
  • Einstellungen in ~/.claude.json und ~/.claude/settings.json werden geteilt. Berechtigungsregeln, erlaubte Tools und andere Einstellungen in settings.json gelten für Desktop-Sitzungen.
  • Modelle: die gleichen Modelle sind in beiden verfügbar. In Desktop wählen Sie das Modell über die Modellauswahl in der Zeile unter dem Eingabefeld. Sie können das Modell während der Sitzung über dieselbe Auswahl ändern.

MCP-Server aus der Claude Desktop Chat-App

Die Desktop-App lädt MCP-Server aus claude_desktop_config.json in lokale Code-Tab-Sitzungen, zusammen mit Servern aus ~/.claude.json und .mcp.json. Ein Server, der in claude_desktop_config.json definiert ist, ist sowohl auf der Desktop-Chat-Oberfläche als auch auf lokalen Code-Tab-Sitzungen verfügbar. Wenn Sie denselben Servernamen in claude_desktop_config.json und in ~/.claude.json oder .mcp.json definieren, verbindet sich die Code-Registerkarte in lokalen Sitzungen einmal und verwendet die claude_desktop_config.json-Definition. Die App liefert auch stdio-Server aus ~/.claude.json an die eingebettete CLI in lokalen Sitzungen erneut. Wenn die oberste Ebene von ~/.claude.json (Benutzerbereich) und .mcp.json denselben stdio-Servernamen definieren, verwendet die Code-Registerkarte die ~/.claude.json-Definition und weicht von der CLI Bereichshierarchie ab.
Die eigenständige CLI liest claude_desktop_config.json nicht. Führen Sie auf macOS und WSL claude mcp add-from-claude-desktop aus, um diese Server in ~/.claude.json zu kopieren. Siehe MCP-Server aus Claude Desktop importieren für den Importablauf und Bereichsoptionen.

Funktionsvergleich

Diese Tabelle vergleicht Kernfunktionen zwischen CLI und Desktop. Für eine vollständige Liste der CLI-Flags siehe die CLI-Referenz.

Was ist nicht in Desktop verfügbar

Die folgenden Funktionen sind nicht in Desktop verfügbar, außer wo anders angegeben:
  • Drittanbieter-Provider: Desktop verbindet sich mit Anthropic’s API standardmäßig. Um Desktop durch ein Gateway zu leiten oder die Code-Registerkarte auf Amazon Bedrock, Google Cloud’s Agent Platform, Microsoft Foundry oder einem selbstgehosteten LLM-Gateway auszuführen, folgen Sie den Links in der Drittanbieter-Provider-Zeile.
  • Linux (Beta): Computernutzung ist noch nicht in der Linux-Desktop-App verfügbar. Siehe Claude Desktop auf Linux.
  • Inline-Code-Vorschläge: Desktop bietet keine Codevervollständigungen im Stil einer Autovervollständigung. Es funktioniert über Prompts in der Konversation und explizite Code-Änderungen und kann Ihren nächsten Prompt vorschlagen, nachdem Claude geantwortet hat.
  • Agent-Teams: Koordinierte Teams, bei denen Claude als Teamleiter Aufgaben an Teamkollegen aus einer gemeinsamen Aufgabenliste zuweist, sind in der CLI verfügbar, nicht in Desktop. Für Multi-Agent-Arbeit innerhalb einer Sitzung verwenden Sie dynamische Workflows, die in Desktop ausgeführt werden; Claude kann auch Nachrichten senden und Ihre anderen Sitzungen verwalten direkt.
  • Terminal-Dialog-Befehle: Integrierte Befehle, die ein interaktives Panel im Terminal öffnen, verhalten sich in der Code-Registerkarte anders. Bearbeiten Sie Einstellungsdateien direkt, um Berechtigungsregeln und Konfiguration zu verwalten, oder führen Sie die Befehle aus der eigenständigen CLI aus.
    • Befehle ohne Argumentform, wie /permissions, antworten mit isn't available in this environment.
    • /config öffnet Einstellungen > Code oder Einstellungen > Claude Code.

Fehlerbehebung

Die folgenden Abschnitte behandeln Probleme, die speziell die Desktop-App betreffen. Informationen zu API-Fehlern zur Laufzeit, die im Chat erscheinen, wie API Error: 500, 529 Overloaded, 429 oder Prompt is too long, finden Sie in der Fehlerreferenz.

Ihre Version prüfen

So sehen Sie, welche Version der Desktop-App Sie verwenden:
  • macOS: Klicken Sie in der Menüleiste auf Claude und dann auf About Claude
  • Windows: Klicken Sie auf Help und dann auf About Claude
Klicken Sie auf die Versionsnummer, um sie in Ihre Zwischenablage zu kopieren.

Claude Code-Version im Code-Tab

Um zu sehen, welche Version von Claude Code eine Sitzung ausführt, geben Sie in einer lokalen Sitzung im Code-Tab /status ein und lesen Sie die Zeile Claude Code, die eine Version wie 2.1.286 anzeigt. Um eine neuere Version für lokale Sitzungen zu erhalten, öffnen Sie unter macOS Claude > Check for Updates… oder unter Windows Help > Check for Updates… und starten Sie dann eine neue Sitzung. In einer lokalen Sitzung führt der Code-Tab eine eigene Kopie von Claude Code aus, die eine eigene Versionsnummer hat. Die Desktop-App lädt diese Kopie herunter und aktualisiert sie, daher kann sie sich vom Befehl claude in Ihrem Terminal unterscheiden, und das Aktualisieren der einen aktualisiert nicht die andere.

Prüfen, welches Layout Sie haben

Wenn eine neue Sitzung die Umgebung oberhalb des Eingabefelds statt darunter anzeigt, haben Sie das frühere Layout:
  • Desktop älter als v2.37337.0: Aktualisieren Sie, um das aktuelle Layout zu erhalten. Wählen Sie unter macOS Claude > Check for Updates… oder unter Windows Help > Check for Updates….
  • Drittanbieter mit Sitzungen auf Ihrem Computer: Das aktuelle Layout erfordert Claude Desktop v3.1623.0 oder höher, prüfen Sie also Ihre Version. Zum Aktualisieren wählen Sie unter macOS Claude > Check for Updates… oder unter Windows Help > Check for Updates…. Wenn Ihre Organisation automatische Updates deaktiviert, ist Check for Updates… ausgeblendet; bitten Sie in diesem Fall Ihren Administrator um v3.1623.0 oder höher.
  • Drittanbieter mit Sitzungen auf der Infrastruktur Ihrer Organisation: Das aktuelle Layout erfordert Claude Desktop v4.29.0 oder höher, prüfen Sie also Ihre Version. Wenn Sie eine ältere Version verwenden, bitten Sie Ihren Administrator um v4.29.0 oder höher. Wenn Sie nicht wissen, wo Ihre Sitzungen laufen, fragen Sie Ihren Administrator.
Im früheren Layout wählen Sie die Umgebung und einen Projektordner oder ein Repository oberhalb des Eingabefelds und den Berechtigungsmodus und das Modell in der Zeile darunter. Dem früheren Layout fehlen das Sitzungsdetails-Panel und gespeicherte lokale und SSH-Umgebungen.

403- oder Authentifizierungsfehler im Code-Tab

Wenn Sie bei der Verwendung des Code-Tabs Error 403: Forbidden oder andere Authentifizierungsfehler sehen:
  1. Melden Sie sich über das App-Menü ab und wieder an. Dies ist die häufigste Lösung.
  2. Überprüfen Sie, ob Sie ein aktives kostenpflichtiges Abonnement haben: Pro, Max, Ultra, Team oder Enterprise.
  3. Wenn die CLI funktioniert, Desktop aber nicht, beenden Sie die Desktop-App vollständig, anstatt nur das Fenster zu schließen, öffnen Sie sie dann erneut und melden Sie sich wieder an.
  4. Überprüfen Sie Ihre Internetverbindung und Ihre Proxy-Einstellungen.

Leerer oder hängender Bildschirm beim Start

Wenn die App sich öffnet, aber einen leeren oder nicht reagierenden Bildschirm anzeigt:
  1. Starten Sie die App neu.
  2. Prüfen Sie auf ausstehende Updates. Unter macOS und Windows aktualisiert sich die App beim Start automatisch; unter Linux aktualisieren Sie über apt, wie in Claude Desktop unter Linux beschrieben.
  3. Bestätigen Sie in einem verwalteten Netzwerk, dass Ihre Firewall die CDN-Hosts aus den Anforderungen an den Netzwerkzugriff zulässt.
  4. Prüfen Sie unter Windows in der Ereignisanzeige unter Windows-Protokolle → Anwendung auf Absturz-Logs.

“Failed to load session”

Wenn Sie Failed to load session sehen, existiert der ausgewählte Ordner möglicherweise nicht mehr, ein Git-Repository erfordert möglicherweise Git LFS, das nicht installiert ist, oder Dateiberechtigungen verhindern den Zugriff. Versuchen Sie, einen anderen Ordner auszuwählen oder die App neu zu starten.

Sitzung findet installierte Tools nicht

Wenn Claude Tools wie npm, node oder andere CLI-Befehle nicht finden kann, überprüfen Sie, ob die Tools in Ihrem regulären Terminal funktionieren, prüfen Sie, ob Ihr Shell-Profil PATH korrekt setzt, und starten Sie die Desktop-App neu, um die Umgebungsvariablen neu zu laden.

Git- und Git LFS-Fehler

Sitzungen, die in einem eigenen Worktree laufen, benötigen Git. Wenn Sie “Git is required” sehen, installieren Sie Git bzw. unter Windows Git for Windows und versuchen Sie es erneut. Unter Windows haben Claude Desktop-Versionen vor 1.49585.0 vor dem Start jeder lokalen Sitzung nach Git gefragt; wenn Sie diese Abfrage sehen und keine Worktrees verwenden, aktualisieren Sie die App. Wenn Sie “Git LFS is required by this repository but is not installed” sehen, installieren Sie Git LFS von git-lfs.com, führen Sie git lfs install aus und starten Sie die App neu.

MCP-Server funktionieren unter Windows nicht

Wenn die Schalter für MCP-Server unter Windows nicht reagieren oder Server keine Verbindung herstellen, prüfen Sie, ob der Server in Ihren Einstellungen korrekt konfiguriert ist, starten Sie die App neu, überprüfen Sie im Task-Manager, ob der Serverprozess läuft, und sehen Sie sich die Server-Logs auf Verbindungsfehler an.

SSH host key verification failed

Jede dieser Meldungen bedeutet, dass Desktop einen Host-Schlüssel abgelehnt hat:
  • SSH host key verification failed oder Host denied (verification failed) unter View details auf einer Karte Couldn't connect to <host>
  • Connection failed: Host key changed or not trusted beim Eingabefeld oder nach Test connection
  • <host>'s host key is not trusted oder <host>'s host key has changed bei einer getrennten Sitzung
Desktop lehnt einen Schlüssel meist ab, weil er sich von dem auf Ihrem Computer gespeicherten unterscheidet oder weil für diesen Rechner kein Schlüssel gespeichert ist. Ein Rechner, der neu aufgesetzt oder neu installiert wurde, präsentiert in der Regel einen neuen Schlüssel, ebenso etwas, das die Verbindung abfängt. Prüfen Sie den Schlüssel, bevor Sie sich erneut verbinden, ausgehend davon, was Desktop zusammen mit der Meldung anzeigt:
  • Sie verwenden Windows, und Desktop meldet Connection failed: Host key changed or not trusted: Schließen Sie zuerst einen fehlenden OpenSSH-Client aus
  • Desktop fordert Sie auf, UserKnownHostsFile zu setzen: Setzen Sie es in ~/.ssh/config auf ~/.ssh/known_hosts und prüfen Sie dann den Schlüssel über ein Terminal
  • Sie sehen eine Schaltfläche Review new key: Wählen Sie sie aus und vergleichen Sie den Fingerabdruck, den Desktop anzeigt, mit dem des Rechners selbst. Wenn sie übereinstimmen, wählen Sie Trust new key, um den gespeicherten Schlüssel zu ersetzen. Andernfalls wählen Sie Cancel.
  • Sie sehen keine Schaltfläche Review new key, Desktop zeigt Couldn't show the new key an, oder Desktop lehnt den Schlüssel nach Trust new key erneut ab: Prüfen Sie den Schlüssel über ein Terminal

Den Host-Schlüssel über ein Terminal prüfen

Führen Sie auf Ihrem Computer ssh <SSH host> aus, mit dem Wert SSH host Ihrer SSH-Verbindung in Desktop. Fügen Sie -p <SSH port> hinzu, wenn die Verbindung einen Wert für SSH port hat. Verwenden Sie unter Windows PowerShell, da Desktop keine Verbindung mit dem ssh in Git Bash oder WSL herstellt. Wenn PowerShell kein ssh findet, installieren Sie den OpenSSH-Client von Microsoft. Achten Sie darauf, welchen Rechner ssh in seiner Meldung nennt; das kann ein Jump-Host und nicht <SSH host> sein. Folgen Sie dann dem zutreffenden Fall:
  • ssh fragt, ob die Verbindung fortgesetzt werden soll: Vergleichen Sie den angezeigten Fingerabdruck mit dem des Rechners selbst. Antworten Sie nur mit yes, wenn sie übereinstimmen.
  • ssh warnt, dass sich der Host-Schlüssel geändert hat: Vergleichen Sie den Fingerabdruck aus der Warnung mit dem des Rechners selbst. Nur wenn sie übereinstimmen, löschen Sie die Zeile, die Offending <type> key in <file>:<line> nennt, und führen Sie ssh erneut aus. Wenn ssh erneut wegen einer anderen Zeile warnt, vergleichen, löschen und führen Sie erneut aus wie zuvor.
  • ssh lehnt einen unbekannten Schlüssel ab, ohne nachzufragen: Besorgen Sie sich die known_hosts-Zeile dieses Rechners bei der Person, die ihn verwaltet, und nicht über die Verbindung, die Sie gerade prüfen. Fügen Sie die Zeile Ihrer known_hosts-Datei hinzu, mit dem Namen aus der Meldung von ssh als Hostname, und führen Sie ssh erneut aus.
  • ssh fährt mit der Anmeldung fort, ohne Sie zum Host-Schlüssel zu fragen: Geben Sie noch kein Passwort ein. Prüfen Sie die Schlüssel, denen ssh bereits vertraut.
Sobald ssh einen Schlüssel akzeptiert, den Sie geprüft oder hinzugefügt haben, versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, lesen Sie Desktop-Logs für ein SSH-Problem abrufen. Führen Sie denselben ssh-Befehl erneut aus und fügen Sie -v -S none hinzu. In der Ausgabe zeigt eine Zeile Server host key: einen Fingerabdruck, und die nächste Zeile Host '<name>' is known nennt den Rechner, zu dem er gehört. Vergleichen Sie jeden gefundenen Fingerabdruck mit dem des jeweiligen Rechners selbst.
  • Für einen Jump-Host gibt es keine Zeile Server host key:: Führen Sie auch ssh -v -S none <jump host> aus und vergleichen Sie diesen Fingerabdruck auf dieselbe Weise.
  • Ein Fingerabdruck stimmt nicht überein, oder Sie können ihn nicht prüfen: Verbinden Sie sich nicht erneut. Entfernen Sie den gespeicherten Schlüssel: Unter Host '<name>' is known nennt die Zeile Found key in <file>:<line> die Datei, die ihn enthält. Führen Sie ssh-keygen -R "<name>" -f <file> aus. Wenn Sie Host-Schlüssel in mehr als einer Datei aufbewahren, entfernen Sie den Schlüssel aus jeder. Wenn Sie eine Datei nicht ändern können, informieren Sie die Person, die Ihren Computer verwaltet.
  • Alle Fingerabdrücke stimmen überein: Versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, lesen Sie Desktop-Logs für ein SSH-Problem abrufen.

SSH-Host-Schlüssel unter Windows ohne OpenSSH-Client abgelehnt

Unter Windows ohne OpenSSH-Client lehnt Desktop selbst einen korrekten Host-Schlüssel ab, mit Connection failed: Host key changed or not trusted. Desktop benötigt den Client, um gespeicherte Schlüssel nachzuschlagen. Um zu prüfen, ob Sie einen haben, führen Sie ssh in PowerShell aus. Wenn PowerShell ssh nicht erkennt, installieren Sie den OpenSSH-Client von Microsoft und starten Sie Desktop neu. Verbinden Sie sich dann erneut. Wenn Desktop fragt, ob Sie sich zum ersten Mal verbinden möchten, prüfen Sie den Host-Schlüssel des Rechners, bevor Sie ihm vertrauen. Wenn Desktop den Schlüssel weiterhin ablehnt, folgen Sie den anderen Fällen unter SSH host key verification failed.

SSH-Verbindung schlägt nach der Anmeldung fehl

Suchen Sie den Titel der Karte oder den Code am Ende der Fehlermeldung in dieser Tabelle und tun Sie dann, was die letzte Spalte angibt. Um die Meldung zu sehen, wählen Sie auf der Fehlerkarte View details. Prüfen Sie bei allen anderen Meldungen die Anforderungen an den Remote-Rechner.

Desktop-Logs für ein SSH-Problem abrufen

Sie erhalten ssh.log, die Aufzeichnung von Desktop über seine SSH-Verbindungen, in einer ZIP-Datei mit den Logs von Desktop, die Sie über das Menü Help speichern. Öffnen Sie zum Speichern Help > Troubleshooting und wählen Sie den Eintrag für Ihr System:
  • macOS: Show Logs in Finder
  • Windows: Show Logs in File Explorer
  • Linux: Show Logs in File Manager
Sehen Sie die Dateien durch, bevor Sie sie senden, da sie Namen und andere Details aus Ihrer Umgebung enthalten können. <host> und <user> stehen für Namen, die Desktop ersetzt hat. Desktop ersetzt nicht jeden Namen, und ein SSH-Host- oder Benutzername kann weiterhin im Klartext erscheinen. Wenn Sie die ZIP-Datei an jemanden senden, teilen Sie mit, welcher Host wann fehlgeschlagen ist, da die Logs ihn möglicherweise nicht nennen. Die ZIP-Datei enthält nicht das Log des Hilfsprogramms, das Desktop auf dem Remote-Rechner installiert. Um auch dieses Log zu erhalten, kopieren Sie remote-server.log aus dem Ordner des Hilfsprogramms unter ~/.claude/remote/run/ im Home-Verzeichnis des Benutzers, der sich verbunden hat. Sehen Sie auch diese Datei durch, bevor Sie sie senden.

App lässt sich nicht beenden

  • macOS: Drücken Sie Cmd+Q. Wenn die App nicht reagiert, verwenden Sie „Sofort beenden“ mit Cmd+Option+Esc, wählen Sie Claude aus und klicken Sie auf „Sofort beenden“.
  • Windows: Verwenden Sie den Task-Manager mit Ctrl+Shift+Esc, um den Claude-Prozess zu beenden.

Windows-spezifische Probleme

  • PATH nach der Installation nicht aktualisiert: Öffnen Sie ein neues Terminalfenster. PATH-Aktualisierungen gelten nur für neue Terminal-Sitzungen.
  • Fehler wegen gleichzeitiger Installation: Wenn Sie einen Fehler über eine andere laufende Installation sehen, obwohl keine läuft, versuchen Sie, das Installationsprogramm als Administrator auszuführen.

“Branch doesn’t exist yet” beim Öffnen in der CLI

Cloud-Sitzungen können Branches erstellen, die auf Ihrem lokalen Rechner nicht existieren. Klicken Sie in der Sitzung auf den Branch-Namen und wählen Sie Copy branch name, und rufen Sie ihn dann lokal ab:

Immer noch Probleme?

  • Öffnen Sie in der Desktop-App Help → Get Support oder besuchen Sie direkt das Claude-Supportcenter
  • Bei Problemen, die sich auch in der eigenständigen claude-CLI reproduzieren lassen, suchen Sie auf GitHub Issues nach einem Bug oder melden Sie einen
Geben Sie beim Melden eines Problems Ihre Desktop-App-Version, Ihr Betriebssystem, die genaue Fehlermeldung und relevante Logs an. Prüfen Sie unter macOS Console.app. Prüfen Sie unter Windows die Ereignisanzeige → Windows-Protokolle → Anwendung. Sehen Sie Log-Auszüge durch, bevor Sie sie in einem öffentlichen Issue posten; sie können Dateipfade und andere Details aus Ihrer Umgebung enthalten.