- Ein Projekt mit dem Agent SDK einrichten
- Eine Datei mit fehlerhaftem Code erstellen
- Einen Agenten ausführen, der Fehler automatisch findet und behebt
Voraussetzungen
- Node.js 18+ oder Python 3.10+
- Ein Anthropic-Konto (hier registrieren)
Einrichtung
Erstellen Sie einen Projektordner
Erstellen Sie ein neues Verzeichnis für diesen Schnellstart:Für Ihre eigenen Projekte können Sie das SDK aus jedem Ordner ausführen; es hat standardmäßig Zugriff auf Dateien in diesem Verzeichnis und seinen Unterverzeichnissen.
Installieren Sie das SDK
Installieren Sie das Agent SDK-Paket für Ihre Sprache:
- TypeScript
- Python (uv)
- Python (pip)
Das TypeScript SDK bündelt eine native Claude Code-Binärdatei für Ihre Plattform als optionale Abhängigkeit, sodass Sie Claude Code nicht separat installieren müssen.
Legen Sie Ihren API-Schlüssel fest
Rufen Sie einen API-Schlüssel von der Claude-Konsole ab und erstellen Sie dann eine Das SDK unterstützt auch Authentifizierung über Drittanbieter-API-Anbieter:
.env-Datei in Ihrem Projektverzeichnis:- Amazon Bedrock: Setzen Sie die Umgebungsvariable
CLAUDE_CODE_USE_BEDROCK=1und konfigurieren Sie AWS-Anmeldedaten - Google Vertex AI: Setzen Sie die Umgebungsvariable
CLAUDE_CODE_USE_VERTEX=1und konfigurieren Sie Google Cloud-Anmeldedaten - Microsoft Azure: Setzen Sie die Umgebungsvariable
CLAUDE_CODE_USE_FOUNDRY=1und konfigurieren Sie Azure-Anmeldedaten
Sofern nicht zuvor genehmigt, erlaubt Anthropic Drittentwicklern nicht, claude.ai-Anmeldungen oder Ratenlimits für ihre Produkte anzubieten, einschließlich Agenten, die auf dem Claude Agent SDK basieren. Verwenden Sie stattdessen die in diesem Dokument beschriebenen API-Schlüssel-Authentifizierungsmethoden.
Erstellen Sie eine fehlerhafte Datei
Dieser Schnellstart führt Sie durch die Erstellung eines Agenten, der Fehler im Code finden und beheben kann. Zunächst benötigen Sie eine Datei mit einigen absichtlichen Fehlern, die der Agent beheben kann. Erstellen Sieutils.py im Verzeichnis my-agent und fügen Sie den folgenden Code ein:
calculate_average([])stürzt mit Division durch Null abget_user_name(None)stürzt mit einem TypeError ab
Erstellen Sie einen Agenten, der Fehler findet und behebt
Erstellen Sieagent.py, wenn Sie das Python SDK verwenden, oder agent.ts für TypeScript:
-
query: der Haupteinstiegspunkt, der die agentic loop erstellt. Er gibt einen asynchronen Iterator zurück, daher verwenden Sieasync for, um Nachrichten zu streamen, während Claude arbeitet. Siehe die vollständige API in der Python oder TypeScript SDK-Referenz. -
prompt: was Sie Claude tun möchten. Claude ermittelt basierend auf der Aufgabe, welche Tools verwendet werden sollen. -
options: Konfiguration für den Agenten. Dieses Beispiel verwendetallowedTools, umRead,EditundGlobvorab zu genehmigen, undpermissionMode: "acceptEdits", um Dateiänderungen automatisch zu genehmigen. Weitere Optionen sindsystemPrompt,mcpServersund mehr. Siehe alle Optionen für Python oder TypeScript.
async for-Schleife läuft weiter, während Claude denkt, Tools aufruft, Ergebnisse beobachtet und entscheidet, was als nächstes zu tun ist. Jede Iteration ergibt eine Nachricht: Claudes Überlegung, ein Tool-Aufruf, ein Tool-Ergebnis oder das endgültige Ergebnis. Das SDK verwaltet die Orchestrierung (Tool-Ausführung, Kontextverwaltung, Wiederholungen), sodass Sie einfach den Stream verbrauchen. Die Schleife endet, wenn Claude die Aufgabe abschließt oder auf einen Fehler stößt.
Die Nachrichtenbehandlung in der Schleife filtert nach benutzerfreundlicher Ausgabe. Ohne Filterung würden Sie rohe Nachrichtenobjekte sehen, einschließlich Systeminitialisierung und internem Status, was zum Debuggen nützlich ist, aber sonst störend wirkt.
Dieses Beispiel verwendet Streaming, um den Fortschritt in Echtzeit anzuzeigen. Wenn Sie keine Live-Ausgabe benötigen (z. B. für Hintergrundaufträge oder CI-Pipelines), können Sie alle Nachrichten auf einmal sammeln. Weitere Informationen finden Sie unter Streaming vs. Single-Turn-Modus.
Führen Sie Ihren Agenten aus
Ihr Agent ist bereit. Führen Sie ihn mit dem folgenden Befehl aus:- Python
- TypeScript
utils.py. Sie sehen defensiven Code, der leere Listen und Null-Benutzer verarbeitet. Ihr Agent hat autonom:
- Gelesen
utils.py, um den Code zu verstehen - Analysiert die Logik und identifiziert Grenzfälle, die zum Absturz führen würden
- Bearbeitet die Datei, um ordnungsgemäße Fehlerbehandlung hinzuzufügen
Wenn Sie „API-Schlüssel nicht gefunden” sehen, stellen Sie sicher, dass Sie die Umgebungsvariable
ANTHROPIC_API_KEY in Ihrer .env-Datei oder Shell-Umgebung gesetzt haben. Weitere Hilfe finden Sie im vollständigen Fehlerbehebungsleitfaden.Versuchen Sie andere Prompts
Jetzt, da Ihr Agent eingerichtet ist, versuchen Sie einige verschiedene Prompts:"Add docstrings to all functions in utils.py""Add type hints to all functions in utils.py""Create a README.md documenting the functions in utils.py"
Passen Sie Ihren Agenten an
Sie können das Verhalten Ihres Agenten ändern, indem Sie die Optionen ändern. Hier sind einige Beispiele: Fügen Sie Web-Suchfunktion hinzu:Bash versuchen Sie: "Write unit tests for utils.py, run them, and fix any failures"
Wichtige Konzepte
Tools steuern, was Ihr Agent tun kann:| Tools | Was der Agent tun kann |
|---|---|
Read, Glob, Grep | Schreibgeschützte Analyse |
Read, Edit, Glob | Code analysieren und ändern |
Read, Edit, Bash, Glob, Grep | Vollständige Automatisierung |
| Modus | Verhalten | Anwendungsfall |
|---|---|---|
acceptEdits | Genehmigt Dateibearbeitungen und häufige Dateisystembefehle automatisch, fragt nach anderen Aktionen | Vertrauenswürdige Entwicklungs-Workflows |
dontAsk | Lehnt alles ab, das nicht in allowedTools enthalten ist | Gesperrte Headless-Agenten |
auto (nur TypeScript) | Ein Modell-Klassifizierer genehmigt oder lehnt jeden Tool-Aufruf ab | Autonome Agenten mit Sicherheitsvorkehrungen |
bypassPermissions | Führt jedes Tool ohne Eingabeaufforderungen aus | Sandboxed CI, vollständig vertrauenswürdige Umgebungen |
default | Erfordert einen canUseTool-Callback zur Genehmigungsbehandlung | Benutzerdefinierte Genehmigungsabläufe |
acceptEdits-Modus, der Dateivorgänge automatisch genehmigt, damit der Agent ohne interaktive Eingabeaufforderungen ausgeführt werden kann. Wenn Sie Benutzer zur Genehmigung auffordern möchten, verwenden Sie den default-Modus und stellen Sie einen canUseTool-Callback bereit, der Benutzereingaben sammelt. Für mehr Kontrolle siehe Berechtigungen.
Fehlerbehebung
API-Fehler thinking.type.enabled wird für dieses Modell nicht unterstützt
Claude Opus 4.7 ersetzt thinking.type.enabled durch thinking.type.adaptive. Ältere Agent SDK-Versionen schlagen mit dem folgenden API-Fehler fehl, wenn Sie claude-opus-4-7 auswählen:
Nächste Schritte
Jetzt, da Sie Ihren ersten Agenten erstellt haben, erfahren Sie, wie Sie seine Funktionen erweitern und ihn an Ihren Anwendungsfall anpassen:- Berechtigungen: Steuern Sie, was Ihr Agent tun kann und wann er Genehmigung benötigt
- Hooks: Führen Sie benutzerdefinierten Code vor oder nach Tool-Aufrufen aus
- Sitzungen: Erstellen Sie Multi-Turn-Agenten, die den Kontext beibehalten
- MCP-Server: Verbinden Sie sich mit Datenbanken, Browsern, APIs und anderen externen Systemen
- Hosting: Stellen Sie Agenten in Docker, Cloud und CI/CD bereit
- Beispiel-Agenten: Siehe vollständige Beispiele: E-Mail-Assistent, Forschungsagent und mehr