Allgemeinwissen zeigt, dass Multitasking so weit wie möglich vermieden werden sollte, da es Sie aus dem Fokus lenkt. Mit dem Aufkommen von Codierungsagenten ist paralleles Arbeiten jedoch zu einer Voraussetzung für Effizienz geworden. Wenn man bedenkt, dass Codierungsagenten über einen längeren Zeitraum ausgeführt werden können, möchten Sie keine Zeit damit verschwenden, darauf zu warten, dass sie fertig sind. Stattdessen möchten Sie einen Agenten auslösen und, während dieser Agent arbeitet, eine andere Aufgabe starten.
Allerdings ist es nicht einfach, Aufgaben parallel zu starten. Es gibt zahlreiche Überlegungen, die Sie anstellen müssen, wie z
- Wie führt man mehrere Codierungsagenten im selben Repository aus?
- Wie können Sie den Kontextwechsel dennoch so weit wie möglich minimieren?
- Wie behalten Sie den Überblick über alle laufenden Agenten?
Im heutigen Artikel werde ich auf alle diese Punkte eingehen und detailliert beschreiben, wie ich mit diesen Problemen umgehe und welche Lösung ich anwende.

Warum Agenten parallel ausführen?
Wie bei vielen anderen Artikeln, die ich geschrieben habe, liegt der Hauptgrund für die Techniken, die ich in dem Artikel beschreibe, darin, Zeit zu sparen und als Ingenieur effizienter zu sein. Wenn Sie Coding Brokers und die unglaubliche LLM-Entwicklung, die wir in den letzten Jahren erlebt haben, optimum nutzen möchten, müssen Sie Ihre Arbeit parallelisieren.
Um zu verstehen, warum, stellen wir uns das gegenteilige Beispiel vor. Stellen wir uns vor, dass wir nur sequentiell arbeiten, wie Sie es normalerweise beim Programmieren taten, bevor LLMs verfügbar wurden. Sequentielle Programmierung mit Codierungsagenten würde etwa so aussehen:
- Finden Sie die Aufgabe, die Sie erledigen möchten
- Beschreiben Sie es einem Agenten und erstellen Sie einen Plan
- Starten Sie den Agenten und lassen Sie ihn laufen. Warten Sie, bis es fertig ist oder Sie um etwas bittet
- Testen Sie die Implementierung und iterieren Sie
Wie lange jede dieser Aufgaben dauert, ist sehr unterschiedlich. Manchmal dauert es am meisten, einem Agenten die Aufgabe zu beschreiben und einen Plan zu erstellen, aber meiner Erfahrung nach ist der dritte Schritt oft ein zeitaufwändiger Schritt, insbesondere bei größeren Implementierungen wie der Implementierung einer neuen Funktion oder der Behebung eines komplexen Fehlers.
Um effizienter zu werden, wollen wir nun Engpässe beseitigen. Der dritte Schritt ist ein Engpass, den wir leicht minimieren oder beseitigen können. Es ist sehr schwierig, die Schritte eins und zwei effizienter zu gestalten. Sie müssen dies nacheinander tun und sich Zeit dafür nehmen. Schritt vier ist definitiv etwas, das Sie effizienter gestalten können, wie ich in anderen Artikeln beschrieben habe, beispielsweise in meinem Artikel über Claude bei One-Shot-Implementierungen verbessern. Daher konzentriere ich mich in diesem Artikel auf Schritt 3 und darauf, wie man ihn effizienter gestalten kann.
So führen Sie Agenten parallel aus
Die einfache Lösung, um Schritt 3 effizienter zu gestalten, besteht darin, Agenten parallel auszuführen. Das klingt in der Theorie einfach, ist aber in der Praxis tatsächlich schwieriger umzusetzen. Der Grund dafür ist, dass die parallele Ausführung von Aufgaben eine Reihe von Herausforderungen mit sich bringt.
Eine Herausforderung, mit der Sie umgehen müssen, besteht darin, dass Agenten einander Code schreiben. Sie möchten nicht, dass Agenten darum konkurrieren, eine bestimmte Datei zu bearbeiten oder ihre eigene Implementierung zu testen. Das ist additionally ein Drawback, mit dem Sie sich befassen müssen. Ein weiteres Drawback, mit dem Sie zu kämpfen haben, ist die Tatsache, dass Sie einen Kontextwechsel durchführen müssen. Wenn Sie additionally Aufgaben parallel ausführen, müssen Sie natürlich einen Kontextwechsel zwischen den verschiedenen Aufgaben durchführen. Ein Aspekt des Kontextwechsels besteht darin, dass Sie zuerst eine Aufgabe und deren Lösung beschreiben müssen und dann eine andere Aufgabe und deren Lösung beschreiben müssen. Ein weiterer Aspekt des Kontextwechsels besteht darin, dass der Agent um Suggestions bittet, z. B. indem er Ihnen Fragen zu einer Implementierung stellt oder Sie bittet, eine Implementierung zu testen. Daher ist die Minimierung des Kontextwechsels ein weiterer Aspekt, den ich in den letzten Abschnitten beschreiben werde.
Mehrere Agenten im selben Repository mithilfe von Arbeitsbäumen ausführen
Das erste Thema, das ich behandeln werde, ist die Ausführung mehrerer Agenten im selben Repository. Die einfache Antwort darauf ist die Verwendung von Arbeitsbäumen.
Sie können Ihren Agenten einfach anweisen, einen Worktree zu verwenden, eine Git-Funktion, die im Wesentlichen Ihr gesamtes Repository kopiert. So können verschiedene Agenten in völlig unterschiedlichen Repositories arbeiten. Nachdem ein Agent seine Implementierung abgeschlossen hat, kann er in den Hauptzweig des Haupt-Repositorys eingefügt werden. Auf diese Weise können mehrere Agenten ohne Konflikte im selben Repository arbeiten.
Manchmal gibt es jedoch einfachere Möglichkeiten, den Arbeitsbaum einzurichten. Aus meiner persönlichen Erfahrung hatte ich Probleme, als ich Claude Code verwendete und es aufforderte, einen Arbeitsbaum auszuprobieren. Claude vergaß oft, tatsächlich einen neuen Arbeitsbaum auszuchecken und dann mit der Arbeit im Haupt-Repository zu beginnen. Als dann mehrere Agenten dasselbe taten, kam es zu Konflikten. Glücklicherweise hat Claude Code a implementiert –worktree-Befehl, den Sie beim Hochfahren von Cloud-Code verwenden können, wie unten
claude --worktree
Wenn Sie diesen Befehl in einem GitHub-Repository verwenden, checkt Claude automatisch in einen neuen Arbeitsbaum aus, wenn das vorhandene Repository vorhanden ist, und speichert alle Arbeitsbäume in einem versteckten Claude-Ordner. Dies ist aus zwei Hauptgründen unglaublich nützlich:
- Sie garantieren, dass Sie immer einen Arbeitsbaum verwenden und dass Ihre Agenten sich nicht gegenseitig stören.
- Die Arbeitsbäume werden in einem versteckten Claude-Ordner und nicht in Ihrem Hauptordner gespeichert. Dadurch wird das Rauschen in Ihrer Ordnerstruktur erheblich reduziert, sodass Sie bei Bedarf einfacher manuell in der Ordnerstruktur navigieren können.
Wenn Sie einen anderen Codierungsagenten verwenden, können Sie herausfinden, wie dieser Arbeitsbäume eingerichtet hat, da Arbeitsbäume immer mehr zu einer erwarteten Funktion für jedes Codierungsagentenprogramm werden, beispielsweise eine IDE wie Cursor oder eine CLI wie Claude Code.
Kontextwechsel minimieren
Aspekt Nummer zwei, den Sie bei der parallelen Ausführung von Codierungsagenten berücksichtigen müssen, ist, dass Sie den Kontextwechsel minimieren müssen. Ich habe bereits erwähnt, dass dies vor allem in zwei Aspekten geschieht. Erstens beim Starten nach Aufgaben und zweitens bei der Interaktion mit dem Agenten während der Aufgabe, z. B. wenn der Agent Ihnen Fragen stellt oder seine Implementierung abschließt und Sie zum Testen auffordert.
Es gibt keine einfache Lösung, um das Schalten von Kontakten einfach zu eliminieren, da paralleles Arbeiten von Natur aus ein Schalten von Kontakten erfordert. Es gibt jedoch ein paar Dinge, die ich behalte, um meinen Kontaktwechsel zu minimieren.
Das Erste, woran ich denke, ist, immer meine aktuelle Aufgabe zu beenden, bevor ich zu einer anderen übergehe. Das erscheint mir sehr offensichtlich, wenn ich es beschreibe; Ich möchte jedoch ein konkretes Beispiel liefern. Das beschriebene Beispiel finden Sie im Textual content unten, aber ich zeige auch das Bild, um Ihnen das Konzept weiter unten leichter zu verstehen.

Nehmen wir an, Sie haben zwei Aufgaben, A und B, die Sie erledigen müssen. Für Aufgabe A ist eine fünfminütige Interaktion des Benutzers erforderlich, während für Aufgabe B eine zweiminütige Interaktion des Benutzers erforderlich ist. Nach dieser Interaktion wird der Agent zehn Minuten lang ausgeführt, um die Aufgabe abzuschließen. Außerdem haben Sie bereits mit Aufgabe A begonnen und Ihr geistiger Kontext befindet sich derzeit bei Aufgabe A.
In dieser Scenario ist es sehr verlockend, von Aufgabe A zu Aufgabe B zu wechseln und die zweiminütige Einrichtung von Aufgabe B durchzuführen, damit der Agent ausgeführt werden kann, während Sie Aufgabe A beenden. Ich charge Ihnen jedoch dringend, dies so weit wie möglich zu vermeiden und lieber zu versuchen, die Arbeit, die Sie gerade erledigen, zu beenden und dann mit der nächsten Aufgabe in der Reihe fortzufahren, auch wenn dies auf den ersten Blick möglicherweise nicht der optimale Ansatz ist.
Der Grund dafür ist, dass Sie natürlich sehen können, wie viele Minuten es dauert, jede Aufgabe zu erledigen. Aufgabe A dauert 5 Minuten, Aufgabe B benötigt 2 Minuten Interaktion und dann 10 Minuten für die Ausführung. Was Sie jedoch nicht sehen, sind die versteckten Kosten des Kontextwechsels, und ich würde behaupten, dass der Wechsel von Aufgabe A zu Aufgabe B und der anschließende Wechsel zurück zu Aufgabe A Sie mehr Zeit kostet, als einfach Aufgabe A und dann Aufgabe B abzuschließen.
Die zweite Möglichkeit, Kontaktwechsel zu minimieren, besteht darin, Ablenkungen auf meinem Laptop zu minimieren. Es gibt zahlreiche Möglichkeiten, dies zu tun, aber generell charge ich Ihnen dringend, alle Benachrichtigungen zu deaktivieren. Ich habe zum Beispiel die Slack-Benachrichtigungen auf meinem Laptop deaktiviert und auch die in der Slack-Anwendung angezeigte Nummer, die Sie darüber informiert, wenn eine Nachricht auf Sie wartet. Ich finde das sehr ablenkend und lenke meinen Fokus und Kontext von der Arbeit ab, die ich gerade mache.
Darüber hinaus versuche ich, in meinem Terminal-Setup für jedes Repository, an dem ich arbeite, eine Registerkarte beizubehalten. Und wenn ich an mehreren Aufgaben in einem einzigen Repository arbeite, teile ich die Registerkarte. Ich werde mein Terminal-Setup im nächsten Abschnitt ausführlicher besprechen.
Behalten Sie den Überblick über alle Ihre Agenten
Wenn Sie mehrere Agenten betreiben, ist es unglaublich wichtig, den Überblick über alle Ihre Agenten zu behalten. Dies ist jedoch nicht unbedingt selbstverständlich und Sie müssen aktive Entscheidungen treffen, um es so einfach wie möglich zu machen, sich einen Überblick zu verschaffen.
Hier kommt mein Terminal-Setup ins Spiel. Wenn 5 bis 10 Agenten parallel laufen, kann es leicht sehr verwirrend sein, welcher Agent was tut und mit wem man interagieren muss.
Für mein Terminal-Setup verwende ich Warp. Ich denke, Warp ist ein gutes KI-Terminal mit guter automatischer Vervollständigung, mit dem ich problemlos interagieren kann, um Claude Code effektiv zu nutzen. Ich verwende eine Registerkarte in Warp professional Repository, in dem ich arbeite. Dies könnte beispielsweise ein Codierungs-Repository sein, das das Frontend oder die Anwendung enthält, aber es könnte auch ein Vertriebs-Repository sein, in dem ich die gesamte Vertriebsarbeit erledige.
Wenn ich dann mehrere Agenten in einem Repository ausführe, was häufig der Fall ist, teile ich die Registerkarten einfach mit CMD + D auf dem Mac. Daher erhalte ich für jede meiner Hauptregisterkarten mehrere geteilte Unterregisterkarten. Dies hilft mir, nur eine einzige Hauptregisterkarte für jedes Repository zu behalten und gleichzeitig mehrere Agenten innerhalb des Repositorys auszuführen.
Darüber hinaus benenne ich meine Tabs in Warp gerne in den Repository-Namen um, damit ich einfach zum richtigen Tab navigieren kann. Und verwenden Sie CMD 1/2/3 usw., um schnell zwischen den verschiedenen Registerkarten zu navigieren. Und ich erhalte Benachrichtigungen von Warp, wann immer ein Agent eine Interaktion benötigt.
Ich möchte auch darauf hinweisen, dass es viele andere Setups gibt, die Sie für Ihre Codierungsagenten verwenden können. Zunächst einmal können Sie ein anderes Terminal verwenden, was wahrscheinlich auch ganz intestine funktionieren wird, obwohl ich lieber heat bleibe. Eine weitere gute Various, die ich kenne, ist die Verwendung der Claude-Anwendung oder einer Anwendung namens Conductor, die es einfach macht, einen Überblick über Ihre verschiedenen Repositorys und Codierungsagenten zu geben, die Sie ausführen.
Alles in allem kommt es jedoch bei der Konfiguration auf Ihre Vorlieben an. Wenn Sie ein Setup finden, das für Sie intestine funktioniert, empfehle ich dringend, dieses Setup zu verwenden und einfach dabei zu bleiben.
Abschluss
In diesem Artikel habe ich besprochen, wie Sie Ihre Programmieraufgaben effizient parallelisieren können. Der Hauptgrund, warum Sie dies tun sollten, besteht einfach darin, als Ingenieur effizienter zu sein. Wenn Sie Aufgaben parallel ausführen, sind Sie weitaus effektiver als ein ähnlicher Ingenieur, der Aufgaben nacheinander ausführt. Das parallele Ausführen von Aufgaben ist jedoch nicht einfach, und Sie müssen bestimmte Techniken anwenden, um den Überblick über alle Ihre Agenten zu behalten, Kontextwechsel zu minimieren und sicherzustellen, dass Ihre Agenten nicht miteinander kollidieren. Ich glaube, dass das Konzept, das ich in diesem Artikel beschrieben habe, die Zukunft der Arbeit mit KI ist. Menschen werden zu Koordinatoren von KI-Agenten, und Sie müssen in der Lage sein, Ihre Arbeit effizient zu parallelisieren und Agenten abzufeuern, um bestimmte Aufgaben zu erledigen, während Sie nur bei Bedarf mit den Agenten interagieren.
👉 Mein kostenloses E-E book und Webinar:
🚀 Verzehnfachen Sie Ihr Engineering mit LLMs (kostenloser 3-tägiger E-Mail-Kurs)
📚 Holen Sie sich mein kostenloses E-E book „Imaginative and prescient Language Fashions“.
💻 Mein Webinar zum Thema Imaginative and prescient Language Fashions
👉 Finden Sie mich in den sozialen Netzwerken:
