Wir stellen vor: Projects
Heute starten wir Projects in Cursor. Mit Projects nimmst du dir größere Arbeitspakete vor, etwa ein Feature, eine Migration oder eine komplette App. Projects behält den Kontext über Monate hinweg, delegiert Aufgaben an Tausende von Subagents und übernimmt wiederkehrende Arbeit, ohne dass du danach fragen musst.
Im Februar haben wir unsere Vision einer dritten Ära der Softwareentwicklung skizziert, in der Fleets von Agenten ganze Arbeitspakete übernehmen. Projects ist die konkrete Umsetzung dieser Vision. Indem es eine Abstraktionsebene höher ansetzt, müssen Entwickler keine Agenten mehr verwalten und können stattdessen die Arbeit selbst steuern.
Bei Cursor nutzen wir Projects seit mehreren Monaten – etwa für Migrationen mit einigen Hundert PRs, um unser Design-System konsistent zu halten und um Projects selbst auszuliefern. Für uns ist es ein erheblicher Produktivitätsmultiplikator: Neue Benutzer mergen 30 % mehr PRs, und Benutzer, die überwiegend mit Projects arbeiten, sogar sechsmal so viele.
Steuere Tausende von Agents über einen einzigen Koordinator
Du steuerst ein Projects, indem du mit seinem Koordinator-Agent chattest. Der Koordinator schreibt selbst keinen Code, sondern dirigiert andere Agents, die das übernehmen. Da er delegiert, statt selbst auszuführen, ist er nie blockiert und reagiert jederzeit auf deine Anweisungen.
Drei zentrale Fähigkeiten machen Projects möglich:
Standardmäßig in der Cloud, lokal wenn nötig. Ein Projects läuft auf einem eigenen Computer – es hört also nicht auf, wenn du deinen Laptop zuklappst. Dadurch kann ein Projects mehr Subagents parallel ausführen, als dein Laptop verkraften würde. Muss etwas auf deiner Maschine getestet werden, startet der Koordinator dafür einen lokalen Agent.
Gemeinsamer Kontext. Du solltest einen Agent nicht bei jeder neuen Aufgabe aufs Neue einarbeiten müssen. Jedes Projects pflegt eine Reihe von Dateien, die über alle Cloud- und lokalen Maschinen hinweg synchronisiert werden, die seine Agents nutzen. Agents ergänzen Research und Artifacts sowie das, was sie über die Codebase lernen und darüber, wie du die Arbeit erledigt haben möchtest. Findet ein Agent zum Beispiel heraus, wie man einen Service testet, kann jeder künftige Agent diese Anweisungen nutzen. Dieser Kontext wächst mit dem Projects und macht den Koordinator mit der Zeit immer effektiver.
Abonnements. Der Koordinator kann einen Slack-Kanal überwachen, nach einem Zeitplan laufen oder all deine PRs verfolgen – er repariert CI und wird aktiv, sobald ein PR geöffnet oder gemergt wird. So handelt er auf Basis der erkannten Signale, ohne darauf zu warten, dass du ihn per Prompt anstößt.
Wie wir Projects bei Cursor nutzen
Drei Muster decken den Großteil dessen ab, wofür unsere Ingenieure Projects einsetzen.
Feature-Arbeit
Die meisten Ingenieure erstellen für ein größeres Arbeitspaket ein Projekt. Ein Feature beginnt meist damit, dass Agents das System erkunden und ihre Erkenntnisse als gemeinsamen Kontext festhalten. Anschließend erstellt der Koordinator einen Plan und schickt Agents los, um verschiedene Teile davon parallel zu implementieren und zu testen.
Mit jeder Feedback-Runde lernt das Projekt deine Architektur und deine Vorlieben besser kennen. Sobald das Feature bereit zum Ausprobieren ist, kann der Koordinator einen Agent auf deinem Computer starten und ihn lokal ausführen. Nach dem Ausliefern kann dasselbe Projekt Logs überwachen und Bug-Reports bearbeiten – mit dem vollständigen Kontext hinter den ursprünglichen Entscheidungen.
Migrationen
Projects sind besonders nützlich für Migrationen, die sich leicht beginnen, aber nur schwer abschließen lassen. Bei Cursor haben wir damit neue Frameworks eingeführt und Styling-Systeme über Hunderte von PRs hinweg ersetzt.
Gemeinsam mit dem Koordinator legst du ein sicheres Vorgehen fest, das er anschließend Schritt für Schritt auf die Codebase anwendet. Anfangs prüfst du jeden PR genau. Sobald sich die Fixes bewähren, prüfst du weniger, und der Koordinator arbeitet die Migration eigenständig weiter ab.
Gardening
Projekte eignen sich hervorragend für Arbeit, die nie wirklich endet – etwa das Sichern der Codequalität oder das Überwachen von Regressionen. Du kannst dem Koordinator sagen, dass er neue PRs verfolgen, in Slack auf Bug-Reports achten oder nach einem Zeitplan laufen soll, und er wird aktiv, sobald neue Arbeit anfällt.
Ein Engineer in unserem Team betreibt auf diese Weise ein Projekt für ein Design-System. Anfangs überprüfte der Engineer jeden Fix und korrigierte die fehlerhaften. Inzwischen durchsucht der Koordinator jeden neuen PR, extrahiert Komponenten, die ins Design-System gehören, und fügt eine Lint-Regel hinzu, sobald ihm derselbe Fehler zum zweiten Mal auffällt. Das Projekt ist auf dem Weg, täglich 20 bis 100 PRs zu bearbeiten: Der Koordinator organisiert die Arbeit, und der Engineer schaltet sich dort ein, wo Aufmerksamkeit nötig ist.
Erste Schritte mit Projekte
Projekte sind als Beta verfügbar und werden ab heute für alle Benutzer ausgerollt. Starte ein Projekt über die linke Navigationsleiste, beschreibe, was du bauen möchtest, und der Koordinator übernimmt den Rest. Am besten eignet es sich für Aufgaben, die über einen einzelnen Chat hinausreichen – sei es ein Feature mit mehreren PRs, eine Migration oder ein job, der erledigt werden soll, während du nicht da bist.