Produkt

Wir stellen vor: das Agent SDK

Rustam Lalkaka5 Min. Lesezeit

Softwareteams setzen als Code definierte Agenten ein, um wiederkehrende Aufgaben über den gesamten Entwicklungslebenszyklus hinweg zu erledigen. Diese Agenten sind mit den Tools verbunden, in denen ein Team arbeitet, und werden aktiv, sobald relevante Events eintreten – sei es, um einen PR zu überprüfen, einen Compliance-Workflow auszuführen oder eine Störung zu untersuchen.

Die nützlichsten Agenten sind genau auf die Arbeitsweise eines bestimmten Teams zugeschnitten. Wer einen solchen Agenten entwickeln wollte, musste bisher meist entweder auf ein Produkt zurückgreifen, das auf den Workflow eines anderen ausgelegt ist, oder ganz von vorn anfangen.

Heute veröffentlichen wir das Agent SDK – das Framework, mit dem wir unsere eigenen verwalteten Agenten wie Bugbot, Security Reviewer und Rollouts entwickeln. Mit dem Agent SDK definierst du Agenten als Code und verwaltest sie wie jedes andere Softwareprojekt. Starte mit einer Vorlage oder verweise deinen Programmieragenten einfach auf unsere Dokumentation. Sobald der Agent fertig ist, stellst du ihn mit einem einzigen Befehl per agent-sdk deploy auf der Cursor-Infrastruktur bereit.

Passend zu deinem Workflow

Mit dem Agent SDK kannst du schnell Agenten erstellen und bereitstellen, die so arbeiten wie dein Team. Sie reagieren auf die Events, die dein Team ohnehin schon bearbeitet, und folgen Richtlinien, die dein Team einsehen und anpassen kann.

Code-Review ist ein Beispiel dafür. Jedes Team hat eigene Standards dafür, was Aufmerksamkeit verdient und wer es überprüfen sollte. Mit dem Agent SDK kannst du einen Agent erstellen, der auf PR-Events von GitHub, GitLab oder Bitbucket reagiert. Der Agent kann das Risiko einer Änderung bewerten, sie an das richtige Team weiterleiten und Änderungen genehmigen, die deinen Richtlinien entsprechen.

Ein Beispiel: Ein Team bei Cursor hatte eine große, schnell wachsende Wissensdatenbank mit Lessons Learned aufgebaut und wollte jeden PR damit abgleichen. So sollten frühere Entscheidungen des Teams auch dann Bestand haben, wenn sich die Codebasis weiterentwickelt. Mit dem Agent SDK hat das Team kb-reviewer in etwa einem Tag erstellt. Er läuft jetzt bei jedem PR in der Haupt-Codebasis, markiert Änderungen, die einer festgehaltenen Lektion widersprechen, verweist bei jedem Befund auf die zugrunde liegende Notiz und regt die Entwickler dazu an, die gemeldeten Abweichungen zu klären.

Bei komplexeren Aufgaben können Agenten eine Aufgabe an einen anderen, spezialisierten Agent mit eigenen Tools und Sitzungen übergeben. Außerdem können sie eine Aufgabe auf mehrere Unteragenten aufteilen, die parallel arbeiten.

Das Agent SDK unterstützt außerdem von Haus aus Evals und Event-Replay. Das ermöglicht schnelle Entwicklung – mit der Gewissheit, dass kritische Workflows genau so ausgeführt werden, wie du es erwartest. Die PGA Tour nutzt das Agent SDK als Grundlage für ihre Softwarefabrik. Evals sorgen dafür, dass sie dabei schnell vorankommt.

Mit dem Agent SDK konnte die PGA jede Komponente unserer Softwarefabrik auf Cursors Infrastruktur aufbauen. Es bietet uns die nötige Flexibilität, um Agenten zu entwickeln, die unseren Entwicklungsprozess vorantreiben. Und dank der integrierten Unterstützung für Evals können wir neue Ideen schnell iterieren und vorhandene Fähigkeiten zuverlässig optimieren.

Michael Gyarmathy
Principal Engineer, PGA America

Alles als Code definieren

Ein Agent im Agent SDK ist wie ein kleines Softwareprojekt aufgebaut. Die Anweisungen, die ihn steuern, liegen direkt neben dem Code für seine Tools, den Verbindungen zu externen Services und den Evals, mit denen er getestet wird.

Jede Datei steht für etwas, das der Agent weiß oder kann. Prompts werden in Markdown geschrieben, Tools dagegen als TypeScript-Funktionen definiert. Da alles Code ist, durchlaufen Änderungen dieselbe Versionskontrolle und denselben Review-Prozess wie der Rest deiner Software.

Agenten überall dort bereitstellen, wo du sie brauchst

Wenn du einen Agent einsetzen möchtest, kannst du ihn in Cursor bereitstellen, indem du im Projektverzeichnis agent-sdk deploy ausführst. Der Befehl erstellt den Agent, weist ihm eine URL zu und startet ihn auf unserer Infrastruktur. Geheimnisse und Integrationen verwaltest du im Dashboard – und nutzt dabei weiterhin dieselben Logs, Evals und denselben Playground wie lokal.

Du kannst den Agent auch auf deiner eigenen Infrastruktur ausführen. Jeder Agent läuft als einzelner Node-Prozess, der sich in einen Container packen lässt.

Loslegen

Der Einstieg in das Agent SDK läuft ähnlich ab wie bei jedem anderen Softwareprojekt. Erstelle ein Projektverzeichnis und starte anschließend den lokalen Playground:

import { homedir } from "node:os";
import { join } from "node:path";
import { defineAgent } from "@cursor/agent-sdk";

export default defineAgent({
  name: "Robo",
  model: {
    id: "composer-2.5",
    params: [
      { id: "effort", value: "high" },
      { id: "fast", value: "true" },
    ],
  },
  local: {
    cwd: join(homedir(), ".cache", "factory", "robo"),
  },
})

Von dort aus kannst du lokal iterieren und Evals ausführen, bevor du mit agent-sdk deploy bereitstellst.

Das Agent SDK enthält außerdem Skills, die Programmieragenten durch den Entwicklungsprozess führen. Du kannst einen Agent auf die Dokumentation verweisen und den Bot gemeinsam mit ihm erstellen.

Das Agent SDK ist ab sofort allgemein verfügbar. Lies die Dokumentation und leg los.

Abgelegt unter: Produkt

Autor: Rustam Lalkaka