# Cloud-Workspaces und Agenten

Ein Cloud-Workspace funktioniert wie ein lokaler cmux-Workspace, aber seine Terminals laufen auf einer Cloud-Maschine. Diese Seite behandelt dauerhafte Terminals, das Ausführen von Agenten, Benachrichtigungen und die Tools, die auf jeder Maschine installiert sind.

## Dauerhafte Terminals

Terminals leben im Daemon der Maschine, nicht auf deinem Mac. Sie laufen weiter, wenn du ein Pane schließt, cmux beendest, das WLAN verlierst oder deinen Laptop zuklappst. Öffne die Maschine erneut von einem beliebigen angemeldeten Mac, und das Terminal hat noch seine Ausgabe und seinen laufenden Prozess.

Bricht die Verbindung ab, zeigt das Pane Cloud session disconnected mit einer Reconnect-Schaltfläche an, und cmux versucht es selbstständig erneut.

Startet der Daemon der Maschine neu, stellt cmux das Workspace-Layout wieder her, aber Prozesse, die liefen, überstehen den Neustart nicht.

Wenn du einen Workspace schließt, laufen seine Terminals getrennt weiter. Wenn du einen Workspace entfernst, werden seine Terminals beendet.

## Coding-Agenten ausführen

Claude Code, Codex, OpenCode und Pi sind auf jeder Maschine installiert. Öffne einen Cloud-Workspace und starte den Agenten wie lokal. Agenten-Hooks sind bereits eingerichtet, sodass Agentenstatus und Benachrichtigungen deinen Mac erreichen.

cmux vm agent startet von deinem Mac aus einen Agenten auf einer Maschine. Mit einem Prompt nutzt es den One-Shot-Modus des Agenten. Füge --sync hinzu, um zuerst das aktuelle Verzeichnis hochzuladen, und --wait, um auf das Ergebnis zu warten.

```
cmux vm agent --agent claude --machine brave-otter -- "add tests for the parser"
cmux vm agent --agent codex --machine brave-otter --sync --wait -- "fix the build"
cmux vm agent --agent opencode --new --size 16g -- "profile the importer"
```

cmux vm prompt installiert einen cmux Cloud-Skill für deinen lokalen Agenten und gibt einen Prompt aus, der ihm beibringt, Cloud-Maschinen zu nutzen.

```
cmux vm prompt --open claude
```

## Befehle ausführen

cmux vm run führt einen Befehl auf einer Maschine aus und gibt dessen Exit-Code zurück. Der erste Aufruf aus einem Verzeichnis wählt eine Maschine und merkt sie sich 14 Tage lang für dieses Verzeichnis. Füge --sync hinzu, um das Verzeichnis zuerst hochzuladen, und --pull, um ein Ergebnis herunterzuladen.

```
cmux vm run -- npm test
cmux vm run --sync --pull dist -- npm run build
cmux vm route --json
```

cmux vm exec führt einen kurzen Befehl ohne Terminal aus. Es ist für schnelle Prüfungen gedacht. Das Timeout beträgt standardmäßig 30 Sekunden und höchstens 5 Minuten. Nutze für lange Arbeiten cmux vm run, cmux vm agent oder ein Workspace-Terminal.

```
cmux vm exec brave-otter -- uname -a
cmux vm exec --timeout 120 brave-otter -- docker ps
```

## Dev-Server starten

cmux vm dev lädt ein Projekt hoch, ermittelt, wie es gestartet wird, und öffnet es in einem Workspace mit dem Server und einem Browser. Es erkennt package.json-Projekte, Cargo, Go, Makefile-Dev-Targets, Django, uv, pyproject, requirements.txt und statische index.html-Seiten. Mit --dry-run siehst du den Plan vorher.

```
cmux vm dev brave-otter --dry-run
cmux vm dev brave-otter . --port 3000
```

## Benachrichtigungen

cmux notify innerhalb einer Maschine zeigt auf deinem Mac eine Benachrichtigung für dieses Terminal an. Agenten-Hooks senden Benachrichtigungen, wenn ein Agent fertig ist, eine Freigabe braucht, eine Frage stellt oder fehlschlägt. Titel sind auf 128 Byte und Texte auf 1 KB begrenzt, und Häufungen werden gedrosselt.

```
# Inside a Cloud machine
cmux notify --title "Build" --body "Tests passed"
```

## Bilder einfügen

Drücke ⌘V mit einem Bild in der Zwischenablage in einem Cloud-Terminal. cmux lädt das Bild auf die Maschine hoch und fügt den Remote-Pfad ein, sodass Claude Code und Codex es lesen können. Unterstützt werden PNG, JPEG, GIF und WebP, bis zu 20 MB pro Bild und 8 Bilder auf einmal.

## Layouts und Terminals über die CLI

cmux vm workspace erstellt, öffnet, benennt um, schließt und entfernt Workspaces auf einer Maschine. cmux vm terminal sendet Text, liest Ausgabe und wartet auf Text oder auf das Beenden. cmux vm tree zeigt die Workspaces und Terminals der Maschine. cmux vm layout export und apply verwenden dasselbe JSON wie cmux new-workspace --layout.

```
cmux vm tree brave-otter
cmux vm workspace new brave-otter --name review
cmux vm terminal send brave-otter term_2f9c "npm run dev" --keys enter
cmux vm terminal wait brave-otter term_2f9c --pattern "ready" --timeout 60
cmux vm terminal read brave-otter term_2f9c
cmux vm layout export brave-otter review > layout.json
cmux vm layout apply brave-otter layout.json --open
```

## Was installiert ist

Maschinen laufen mit Ubuntu 24.04. Du arbeitest als Benutzer cmux mit passwortlosem sudo, nicht als root. Docker startet beim Booten.

-   Sprachen und Tools: Node.js LTS, Bun, Python 3.12, uv, Docker, git, die GitHub CLI, ripgrep, fd, fzf, jq, tmux, sqlite3, Build-Tools, vim, nano und rsync.
-   Browser und Desktop: Chrome, agent-browser, ein VNC-Desktop und Ghostty.
-   Agenten: Claude Code, Codex, OpenCode und Pi. Sie sind auf getestete Versionen festgelegt und werden aktualisiert, wenn das Maschinen-Image aktualisiert wird.

Wird ein Agentenbefehl direkt nach dem Erstellen einer Maschine nicht gefunden, läuft die Einrichtung noch. Das Einrichtungsprotokoll liegt unter /tmp/cmux/provision.log.

## Modellzugriff

Agenten auf einer Maschine können das Modell-Routing von cmux ohne Schlüssel auf der Maschine nutzen. Die echten Anmeldedaten werden außerhalb der Maschine hinzugefügt, daher ist kein Konto-Token in der VM gespeichert. Du kannst dich auch innerhalb der Maschine bei einem Agenten anmelden oder mit cmux ai-accounts upload Konten für dein Team hochladen.

```
cmux ai-accounts list
cmux ai-accounts upload claude
cmux coderouter status
```

[CodeRouter-Dokumentation: unterstützte Konten, Teilen und Nutzung](https://cmux.com/de/docs/coderouter)

## Die cmux-CLI innerhalb einer Maschine

Innerhalb einer Maschine steuert der Befehl cmux die Sitzung dieser Maschine. Er unterstützt tree, new-workspace, new-split, send, send-key, read-screen, terminal, layout, env, notify, open-url und self. cmux self zeigt den Eigentümer, die Maschine und deine anderen Maschinen. cmux vm verb peer steuert deine anderen Maschinen aus einer Maschine heraus.

```
# Inside a Cloud machine
cmux tree
cmux new-split right
cmux self peers
cmux vm exec calm-heron -- git status
```

Anmeldung, das Hochladen von KI-Konten und Befehle für den Lebenszyklus von Maschinen wie new, delete, checkpoint, fork, resize, pause, domains, open und vpn laufen nur auf deinem Mac.

## iPhone

Die cmux-App für iOS verwaltet keine Cloud-Maschinen. Eine Maschine, die gerade startet, erscheint als Platzhalterkarte.

Canonical: https://cmux.com/de/docs/cloud/workspaces

Documentation index: https://cmux.com/llms.txt
