Kurz gesagt:
- Laut Ankündigung von Conductor wechselt Conductor zu Meta. Seit dem 4. November gibt es keine neuen Registrierungen und Downloads mehr; Conductor Cloud wird am 13. November schreibgeschützt und am 20. November abgeschaltet, dann beginnt das Löschen der Cloud-Daten. Die lokale Mac-App bekommt bis Anfang 2027 neue Modelle und kritische Fixes und wird dann schrittweise eingestellt.
- Wenn Sie Conductor Cloud noch nutzen: Rechtsklick auf jeden Workspace, „Transfer to local“ wählen, und zwar vor dem 13. November – oder alles über Settings → Account → Export data exportieren.
- Der Kern von Conductor ist ein git worktree und ein Branch pro Workspace, so steht es in der eigenen Dokumentation. Das geht auch ohne Conductor: Verzeichnisse mit
git worktree addanlegen, in jedem Claude Code oder Codex starten und danach in den Hauptbranch mergen. - In unserem Test am 5. November liefen Claude Code und Codex gleichzeitig in zwei Worktrees, und jeder schrieb eine Funktion samt Tests. Gesamtdauer 66,3 s (Claude Code 27,0 s, Codex 66,3 s); nach dem Merge liefen alle 11 Tests durch.
claude -win Claude Code und--worktreein Codex können den Worktree auch selbst anlegen. - Wer eine grafische Oberfläche möchte, findet sie in den Open-Source-Projekten Orca (MIT), Emdash (Apache-2.0) und im Terminal-Tool Claude Squad (AGPL-3.0).
API Key erstellen und Claude-Code- und Codex-Aufgaben parallel ausführen →
Offizieller Zeitplan
| Datum | Was passiert | Was zu tun ist |
|---|---|---|
| 4. Nov. (Mi.) | Conductor gibt den Wechsel zu Meta bekannt; keine neuen Registrierungen oder Downloads; bestehende Nutzer können nicht mehr auf Pro wechseln, Pro-Nutzer behalten die Pro-Funktionen | Neue Nutzer können es nicht mehr installieren – nutzen Sie den Weg unten |
| 13. Nov. (Fr.) | Conductor-Cloud-Workspaces werden schreibgeschützt: alte Chats lesen und exportieren geht, neue Nachrichten nicht; aktive Abonnenten erhalten eine Rückerstattung | Cloud-Workspaces vor diesem Datum per „Transfer to local“ verschieben |
| 20. Nov. (Fr.) | Conductor Cloud wird abgeschaltet, das Löschen der Cloud-Nutzerdaten beginnt | Vor diesem Datum Settings → Account → Export data |
| Anfang 2027 | Lokales Conductor wird schrittweise eingestellt; bis dahin neue Modelle und kritische Fixes | Die lokale App läuft noch, ein Workflow ohne sie lohnt sich aber schon jetzt |
Die Daten stammen aus der Ankündigung von Conductor und dem Changelog 0.93.0. Laut TechCrunch hat Meta die Übernahme bestätigt, aber keine Details genannt. Laut Axios wurde Conductor von Charlie Holtz und Jackson de Campos gegründet; finanzielle Bedingungen wurden nicht veröffentlicht. Auf X gibt es außerdem eine Trend-Zusammenfassung.
Was Conductor macht, in 4 Schritten
Laut Conductor-Dokumentation bekommt jeder neue Workspace einen eigenen git worktree mit ausgechecktem Branch, meist unter ~/conductor/workspaces/<Repo-Name>/<Workspace-Name>. Der Agent ändert nur Dateien in diesem Verzeichnis, Tests laufen dort, und der Branch ist das, was Sie prüfen, pushen und als PR öffnen.
Ohne Conductor müssen Sie also nur 4 Schritte selbst abdecken:
- Eine Aufgabe, ein Verzeichnis:
git worktree addgibt jeder Aufgabe ein eigenes Verzeichnis und einen eigenen Branch. - Ein Verzeichnis, eine Sitzung: In jedem Verzeichnis eine Claude-Code- oder Codex-Sitzung öffnen.
- Modelle eingerichtet: Claude Code und Codex mit demselben API Key verbinden.
- Mergen und prüfen: Jeder Branch führt seine Tests aus und wird committet, dann in main gemergt und der Worktree entfernt.
git worktree ist in Git eingebaut: ein Repository mit mehreren Arbeitsverzeichnissen, die die Commit-Historie teilen, aber getrennte Dateien haben. Zwei Agents, die dieselbe Datei ändern, überschreiben sich auf der Platte also nicht.
Schritt 0: API Key erstellen und Claude Code und Codex verbinden
- Bei aicodewith.ai registrieren und anmelden, dann in der linken Navigation auf „Schlüsselverwaltung“ klicken.
- Oben rechts auf „Schlüssel erstellen“ klicken und einen gut erkennbaren Namen vergeben, etwa „parallele Agents - MacBook“.
- Nach dem Bestätigen sofort den vollständigen Schlüssel kopieren und sichern. Sobald der Dialog geschlossen ist, lässt sich der vollständige Schlüssel nicht mehr anzeigen; geht er verloren, löschen Sie ihn und legen einen neuen an. Details in der Dokumentation „API Key erstellen“.
Codex liest die globale ~/.codex/config.toml. Alle Worktrees teilen sich diese Datei, Sie müssen nicht jedes Verzeichnis einzeln einrichten:
# ~/.codex/config.toml
model = "gpt-6.1-sol"
model_provider = "aicodewith"
[model_providers.aicodewith]
name = "aicodewith"
base_url = "https://api.aicodewith.ai/chatgpt/v1"
wire_api = "responses"
experimental_bearer_token = "IHR_API_KEY"
Claude Code liest ~/.claude/settings.json, ebenfalls global:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.aicodewith.ai",
"ANTHROPIC_AUTH_TOKEN": "IHR_API_KEY"
}
}
Ist Codex noch nicht installiert, siehe die Codex-Installationsanleitung. Alle Felder von config.toml erklärt der Codex-config.toml-Leitfaden, weitere Claude-Code-Varianten stehen in Claude Code mit einer Drittanbieter-API verbinden.
Schritt 1: ein Worktree pro Aufgabe
Tragen Sie vorher Build-Ausgaben und die von Agents angelegten Worktrees in .gitignore ein. Beim ersten Durchlauf haben wir das ausgelassen, und __pycache__ hat den Merge blockiert (siehe Schritt 4):
# Im Haupt-Checkout zuerst Build-Ausgaben und von Agents angelegte Worktrees ignorieren
cat >> .gitignore <<'EOF'
__pycache__/
node_modules/
.claude/worktrees/
EOF
git add .gitignore && git commit -m "ignore build output and agent worktrees"
Dann pro Aufgabe einen Worktree anlegen:
cd ~/code/demo # Ihr Repository
git switch main && git pull
git worktree add ../demo-wt/slugify -b feat/slugify
git worktree add ../demo-wt/truncate -b feat/truncate
git worktree list
Ausgabe:
~/code/demo a97cf41 [main]
~/code/demo-wt/slugify a97cf41 [feat/slugify]
~/code/demo-wt/truncate a97cf41 [feat/truncate]
Bei vielen Aufgaben hilft ein kleines Skript: Name übergeben, es legt das Verzeichnis und einen Branch agent/<Name> an und gibt den Pfad aus:
#!/usr/bin/env bash
# new-task.sh <name> [base] legt ein Aufgabenverzeichnis an und gibt den Pfad aus
set -euo pipefail
name="${1:?usage: new-task.sh <name> [base]}"
base="${2:-main}"
repo="$(git rev-parse --show-toplevel)"
wt="$(dirname "$repo")/$(basename "$repo")-wt/$name"
git -C "$repo" worktree add -q "$wt" -b "agent/$name" "$base"
echo "$wt"
Verwendung:
cd "$(./new-task.sh fix-login)" && claude
cd "$(./new-task.sh add-export)" && codex
Hinweis: Ein Worktree enthält nur von Git verfolgte Dateien. Nicht verfolgte Dinge wie .env oder node_modules fehlen im neuen Verzeichnis – kopieren Sie sie oder installieren Sie die Abhängigkeiten neu. Genau das richtet die Seite „Configure your project“ bei Conductor ein.
Schritt 2: ein Claude Code oder Codex pro Verzeichnis
Interaktiv: Zwei Terminal-Tabs öffnen, in jedem per cd in einen Worktree wechseln und claude oder codex starten. Mit tmux sehen Sie beide auf einem Bildschirm:
# links Claude Code, rechts Codex
tmux new-session -d -s agents -c ../demo-wt/slugify "claude"
tmux split-window -h -t agents -c ../demo-wt/truncate "codex"
tmux attach -t agents
In unserem Test fragten Claude Code und Codex beim ersten Öffnen eines Worktrees jeweils einmal, ob sie dem Ordner vertrauen sollen, weil es für sie ein neuer Pfad ist.
Unbeaufsichtigt: Ist die Aufgabe klar umrissen und zählt nur das Ergebnis, starten Sie claude -p und codex exec gleichzeitig im Hintergrund:
PA="Add textkit/slug.py with slugify(s) ... Add tests/test_slug.py ... Only create these two files. Then run: python3 -m unittest discover -s tests -v"
PB="Add textkit/truncate.py with truncate(s, width, suffix='...') ... Add tests/test_truncate.py ... Only create these two files. Then run the tests."
(cd ../demo-wt/slugify && claude -p "$PA" --allowedTools "Write,Edit,Read,Bash(python3:*)") &
(cd ../demo-wt/truncate && codex exec -s workspace-write "$PB") &
wait
Die Prompts sagen „Only create these two files“. Das trennt die Dateien der beiden Aufgaben, und der Merge bleibt konfliktfrei. Weitere Wege, Arbeit aufzuteilen, finden Sie unter Aufgaben mit Codex-Subagents aufteilen.
Schritt 3: Testergebnisse
Testumgebung: 5. November 2026, 06:16–06:30 (Pekinger Zeit, UTC+8), Linux, Claude Code 2.1.318, codex-cli 0.166.0 (Modell gpt-6.1-sol), unser eigener Key; HOME und CODEX_HOME zeigten auf ein isoliertes Verzeichnis, das Test-Repo war ein kleines Python-Paket, textkit, mit einer einzigen Funktion.
Beide Aufgaben starteten gleichzeitig: Claude Code schrieb slugify() in feat/slugify, Codex schrieb truncate() in feat/truncate. Beide mussten Unit-Tests hinzufügen und ausführen.
[Claude Code 2.1.318 · ~/code/demo-wt/slugify · feat/slugify]
All 7 tests pass. I added `textkit/slug.py` and `tests/test_slug.py`,
and those are the only files I created.
[exit 0, 27,0 s]
[Codex 0.166.0 · ~/code/demo-wt/truncate · feat/truncate]
workdir: ~/code/demo-wt/truncate
model: gpt-6.1-sol
provider: aicodewith
sandbox: workspace-write
...
Ran 5 tests in 0.000s
OK
[exit 0, 66,3 s]
| Punkt | Ergebnis | Dauer |
|---|---|---|
| Claude Code (Worktree feat/slugify) | 2 neue Dateien, 7 Tests bestanden | 27,0 s |
| Codex (Worktree feat/truncate) | 2 neue Dateien, 5 Tests bestanden | 66,3 s |
| Gesamtdauer, beide gleichzeitig | bestimmt durch den langsameren | 66,3 s |
| Beide Branches mergen | kein Konflikt, 11 Tests auf main bestanden | unter 1 s |
| claude -w + codex exec --worktree gleichzeitig | je eine Funktion und ein Test, beide Testläufe bestanden | 16,7 s / 24,4 s |
| Merge-Konflikt mit Claude Code lösen | beide Seiten behalten, 13 Tests bestanden | 17,5 s |
Die beiden Aufgaben warten nicht aufeinander, die Gesamtdauer ist also die der langsameren. Nacheinander wären es beide Zeiten zusammen.
Schritt 4: mergen und prüfen
Jeder Worktree führt seine eigenen Tests aus und committet; wenn alles committet ist, zurück in den Haupt-Checkout und der Reihe nach mergen:
# In jedem Worktree: erst Tests ausführen, dann committen
cd ../demo-wt/slugify
git status --short
python3 -m unittest discover -s tests
git add -A && git commit -m "feat: slugify"
# Zurück im Haupt-Checkout mergen
cd ~/code/demo
git merge --no-ff feat/slugify
git merge --no-ff feat/truncate
python3 -m unittest discover -s tests -v
Unser Merge-Ergebnis:
* 9765c15 merge truncate
|\
| * 55ce497 feat: truncate
* | b7b9d4c merge slugify
|\ \
| |/
|/|
| * c5c0b99 feat: slugify
|/
* a97cf41 init textkit
Ran 11 tests in 0.000s
OK
Beim ersten Merge-Versuch kam dieser Fehler:
$ git merge --no-ff feat/slugify
error: The following untracked working tree files would be overwritten by merge:
tests/__pycache__/test_core.cpython-313.pyc
textkit/__pycache__/__init__.cpython-313.pyc
textkit/__pycache__/core.cpython-313.pyc
Please move or remove them before you merge.
Aborting
Der Testlauf hatte __pycache__ erzeugt, das wurde in den Branch committet, und gleichnamige nicht verfolgte Dateien im Haupt-Checkout blockierten den Merge. Claude Code hatte am Ende seiner Aufgabe sogar darauf hingewiesen. Die Lösung ist die .gitignore aus Schritt 1; sind die Dateien schon committet, entfernen Sie sie im Branch mit git rm -r --cached vor dem Merge.
Prüfliste:
git status --shortzeigt in jedem Branch nur die erwarteten Dateien;- die Tests jedes Branches bestehen, und nach dem Merge läuft die ganze Suite auf main noch einmal;
- haben zwei Branches dieselbe Datei geändert, behandeln Sie den Konflikt wie im nächsten Abschnitt.
Zum Schluss Worktrees und Branches entfernen:
git worktree remove ../demo-wt/slugify
git worktree remove ../demo-wt/truncate
git branch -d feat/slugify feat/truncate
git worktree prune
git worktree list
Ohne git-Befehle: claude -w und codex --worktree
Beide CLIs können Worktrees inzwischen selbst anlegen. In den getesteten Versionen listet claude --help die Option -w, --worktree [name], und sowohl codex --help als auch codex exec --help listen --worktree („Run the session in a new managed Git worktree“). Siehe die Claude-Code-Dokumentation und die Codex-Worktree-Dokumentation.
# Claude Code: im Repository-Stammverzeichnis ausführen
claude -w words # = claude --worktree words
# Codex: interaktiv oder unbeaufsichtigt
codex --worktree
codex exec --worktree -s workspace-write "Add title_case() to textkit/core.py ..."
Nachdem beide Sitzungen gleichzeitig gelaufen waren, sah git worktree list so aus:
$ git worktree list
~/code/demo 987a3ea [main]
~/code/demo/.claude/worktrees/words 987a3ea [worktree-words] locked
~/.codex/worktrees/f0c2/demo 987a3ea (detached HEAD)
Drei Dinge, auf die Sie achten sollten:
- Unterschiedliche Orte: Claude Code legt den Worktree im Repo unter
.claude/worktrees/<Name>auf einem Branchworktree-<Name>an; Codex legt ihn unter~/.codex/worktrees/als detached HEAD ohne Branch an. Nehmen Sie.claude/worktrees/in.gitignoreauf und legen Sie im Codex-Worktree vor dem Merge einen Branch an. - Claude Code sperrt seinen Worktree: Die Sperre bleibt nach der Sitzung bestehen, ein einfaches
git worktree removeschlägt fehl, bis Siegit worktree unlockausführen. - Zwei Aufgaben an derselben Datei kollidieren: Diesmal haben wir beide Seiten absichtlich eine Funktion in
textkit/core.pyergänzen lassen.
Committen und mergen:
# der Claude-Code-Worktree steht bereits auf dem Branch worktree-words
cd ~/code/demo/.claude/worktrees/words
git add -A && git commit -m "feat: count_words"
# der Codex-Worktree ist ein detached HEAD, zuerst einen Branch anlegen
cd ~/.codex/worktrees/f0c2/demo
git switch -c feat/title-case
git add -A && git commit -m "feat: title_case"
cd ~/code/demo
git merge --no-ff worktree-words
git merge --no-ff feat/title-case
Der zweite Merge ergab einen Konflikt:
Auto-merging tests/test_core.py
CONFLICT (content): Merge conflict in tests/test_core.py
Auto-merging textkit/core.py
CONFLICT (content): Merge conflict in textkit/core.py
Automatic merge failed; fix conflicts and then commit the result.
Einen Agent den Konflikt lösen zu lassen geht. Beachten Sie, dass claude -p dafür --permission-mode acceptEdits braucht: Beim ersten Versuch hatten wir nur --allowedTools übergeben, die Schreibzugriffe von Claude Code wurden blockiert, und der Konflikt blieb unverändert:
claude -p "This repo is in the middle of a git merge with conflicts in textkit/core.py and tests/test_core.py. Keep both sides, remove the conflict markers, run python3 -m unittest discover -s tests, and report the result. Do not commit." \
--permission-mode acceptEdits \
--allowedTools "Edit,Read,Bash(python3:*),Bash(git status:*),Bash(git diff:*)"
# erst committen, wenn keine Konfliktmarker mehr übrig sind
grep -rn '<<<<<<<' textkit tests
git add textkit/core.py tests/test_core.py && git commit -m "merge title_case"
python3 -m unittest discover -s tests -v
Ausgabe:
A grep found no conflict markers left in `textkit/` or `tests/`.
I didn't stage or commit anything, so git still lists both files as unmerged (`UU`).
[exit 0, 17,5 s]
Ran 13 tests in 0.001s
OK
Die Sperre beim Aufräumen:
$ git worktree remove .claude/worktrees/words
fatal: cannot remove a locked working tree, lock reason: claude session words (pid ...)
use 'remove -f -f' to override or unlock first
$ git worktree unlock .claude/worktrees/words && git worktree remove .claude/worktrees/words
$ git worktree remove ~/.codex/worktrees/f0c2/demo
$ git branch -d worktree-words feat/title-case
Lieber eine Oberfläche? Tools, die Conductor ersetzen können
Wir listen nur Projekte, deren Lizenz und Beschreibung wir auf GitHub geprüft haben:
| Tool | Was es ist | Isolierung | Plattformen | Lizenz |
|---|---|---|---|---|
| Orca | Desktop-App zum Steuern vieler CLI-Agents, darunter Claude Code, Codex und OpenCode | ein git worktree pro Aufgabe | macOS, Windows, Linux, dazu eine Mobil-App | MIT |
| Emdash | Desktop-App für parallele Coding-Agents, mit Diff-Review und PRs | ein Worktree und Branch pro Agent | macOS, Windows, Linux | Apache-2.0 |
| Claude Squad | Terminal-App für mehrere Sitzungen von Claude Code, Codex, OpenCode, Amp und anderen | tmux-Sitzungen + git worktrees | Terminal (tmux nötig) | AGPL-3.0 |
| claude -w | In Claude Code eingebaut | ein Worktree pro Sitzung | überall, wo Claude Code läuft | — |
| codex --worktree | In die Codex-CLI eingebaut; die Codex-App hat ebenfalls Worktrees | ein Worktree pro Sitzung | überall, wo Codex läuft | — |
Alle setzen auf git worktree auf, die 4 Schritte oben gelten also weiter: Der Key steht in der globalen Konfiguration von Claude Code und Codex, und jede dieser Oberflächen kann ihn direkt nutzen.
Vor dem Parallelisieren: lohnt es sich?
Mehr Agents sind nicht immer besser. Aufgaben, die Dateien teilen, kollidieren wie oben gezeigt, und Schritte innerhalb einer Aufgabe passen oft besser zu Subagents:
- Teilaufgaben in Claude Code auf einem leichteren Modell laufen lassen: Haiku-5.5-Subagent in Claude Code einrichten;
- Feste Abläufe lieber in eine Skill packen statt Subagents zu stapeln: Subagents in eine Claude-Code-Skill überführen;
- Arbeit, Dateigrenzen und Prüfungen in Codex aufteilen: Aufgaben mit Codex-Subagents aufteilen.
Eine einfache Regel: voneinander unabhängige Features und Fixes in parallele Worktrees; Recherche, Code und Tests innerhalb eines Features an Subagents.
API Key erstellen und Claude Code und Codex verbinden →
Häufige Fragen
Wie lange funktioniert die lokale Conductor-App noch?
Laut Ankündigung läuft lokales Conductor normal weiter und bekommt bis Anfang 2027 neue Modelle und kritische Fixes; danach wird es schrittweise eingestellt. Da Downloads gestoppt sind, kann es niemand mehr neu installieren.
Wie exportiere ich meine Conductor-Cloud-Daten?
Rechtsklick auf einen Workspace und „Transfer to local“ wählen, um Workspace und Chats auf den Mac zu holen; alles exportieren über Settings → Account → Export data. Nach der Umstellung auf schreibgeschützt am 13. November ist der Export weiter möglich, ab dem 20. November wird gelöscht.
Was unterscheidet git worktree von zwei Klonen?
Worktrees teilen sich ein .git: Commits, Branches und Remotes sind dieselben, ein Commit in einem Verzeichnis ist im anderen sofort sichtbar, und das Repo wird nicht erneut heruntergeladen. Die Einschränkung: Derselbe Branch kann nicht in zwei Worktrees gleichzeitig ausgecheckt sein.
Wie viele Agents sollte ich gleichzeitig laufen lassen?
So viele, wie Sie Diffs prüfen können. Wir empfehlen, mit 2–3 zu beginnen und die Dateien jeder Aufgabe sauber zu trennen. Alle Sitzungen können einen Key teilen; jede Anfrage erscheint im Nutzungsprotokoll der Konsole.
Funktioniert das unter Windows?
git worktree, Claude Code und Codex unterstützen Windows; tmux braucht WSL. Orca und Emdash bieten beide Windows-Versionen an.



