Dieses Tutorial zeigt Ihnen, wie Sie Agent Skills verwenden, um eine PowerPoint-Präsentation zu erstellen. Sie erfahren, wie Sie Skills aktivieren, eine einfache Anfrage stellen und auf die generierte Datei zugreifen.

Voraussetzungen

Was sind Agent Skills?

Vorgefertigte Agent Skills erweitern Claudes Fähigkeiten um spezialisierte Expertise für Aufgaben wie das Erstellen von Dokumenten, das Analysieren von Daten und die Verarbeitung von Dateien. Anthropic stellt die folgenden vorgefertigten Agent Skills in der API zur Verfügung:
  • PowerPoint (pptx): Erstellen und Bearbeiten von Präsentationen
  • Excel (xlsx): Erstellen und Analysieren von Tabellenkalkulationen
  • Word (docx): Erstellen und Bearbeiten von Dokumenten
  • PDF (pdf): Generieren von PDF-Dokumenten
Möchten Sie benutzerdefinierte Skills erstellen? Siehe das Agent Skills Cookbook für Beispiele zum Erstellen Ihrer eigenen Skills mit domänenspezifischer Expertise.

Schritt 1: Verfügbare Skills auflisten

Zunächst schauen wir uns an, welche Skills verfügbar sind. Wir verwenden die Skills API, um alle von Anthropic verwalteten Skills aufzulisten:
import anthropic

client = anthropic.Anthropic()

# Von Anthropic verwaltete Skills auflisten
skills = client.beta.skills.list(
    source="anthropic",
    betas=["skills-2025-10-02"]
)

for skill in skills.data:
    print(f"{skill.id}: {skill.display_title}")
Sie sehen die folgenden Skills: pptx, xlsx, docx und pdf. Diese API gibt die Metadaten jedes Skills zurück: seinen Namen und seine Beschreibung. Claude lädt diese Metadaten beim Start, um zu wissen, welche Skills verfügbar sind. Dies ist die erste Ebene der progressiven Offenlegung, bei der Claude Skills entdeckt, ohne ihre vollständigen Anweisungen noch zu laden.

Schritt 2: Eine Präsentation erstellen

Jetzt verwenden wir den PowerPoint Skill, um eine Präsentation über erneuerbare Energien zu erstellen. Wir geben Skills mit dem Parameter container in der Messages API an:
import anthropic

client = anthropic.Anthropic()

# Erstelle eine Nachricht mit dem PowerPoint Skill
response = client.beta.messages.create(
    model="claude-sonnet-4-5-20250929",
    max_tokens=4096,
    betas=["code-execution-2025-08-25", "skills-2025-10-02"],
    container={
        "skills": [
            {
                "type": "anthropic",
                "skill_id": "pptx",
                "version": "latest"
            }
        ]
    },
    messages=[{
        "role": "user",
        "content": "Create a presentation about renewable energy with 5 slides"
    }],
    tools=[{
        "type": "code_execution_20250825",
        "name": "code_execution"
    }]
)

print(response.content)
Lassen Sie uns aufschlüsseln, was jeder Teil tut:
  • container.skills: Gibt an, welche Skills Claude verwenden kann
  • type: "anthropic": Zeigt an, dass dies ein von Anthropic verwalteter Skill ist
  • skill_id: "pptx": Der PowerPoint Skill-Bezeichner
  • version: "latest": Die Skill-Version auf die zuletzt veröffentlichte Version gesetzt
  • tools: Aktiviert die Code-Ausführung (erforderlich für Skills)
  • Beta-Header: code-execution-2025-08-25 und skills-2025-10-02
Wenn Sie diese Anfrage stellen, ordnet Claude Ihre Aufgabe automatisch dem relevanten Skill zu. Da Sie um eine Präsentation gebeten haben, stellt Claude fest, dass der PowerPoint Skill relevant ist, und lädt seine vollständigen Anweisungen: die zweite Ebene der progressiven Offenlegung. Dann führt Claude den Code des Skills aus, um Ihre Präsentation zu erstellen.

Schritt 3: Die erstellte Datei herunterladen

Die Präsentation wurde im Code-Ausführungs-Container erstellt und als Datei gespeichert. Die Antwort enthält eine Dateireferenz mit einer Datei-ID. Extrahieren Sie die Datei-ID und laden Sie sie mit der Files API herunter:
# Extrahiere die Datei-ID aus der Antwort
file_id = None
for block in response.content:
    if block.type == 'tool_use' and block.name == 'code_execution':
        # Die Datei-ID befindet sich im Tool-Ergebnis
        for result_block in block.content:
            if hasattr(result_block, 'file_id'):
                file_id = result_block.file_id
                break

if file_id:
    # Lade die Datei herunter
    file_content = client.beta.files.download(
        file_id=file_id,
        betas=["files-api-2025-04-14"]
    )

    # Speichere auf der Festplatte
    with open("renewable_energy.pptx", "wb") as f:
        file_content.write_to_file(f.name)

    print(f"Presentation saved to renewable_energy.pptx")
Für vollständige Details zur Arbeit mit generierten Dateien siehe die Dokumentation des Code-Ausführungs-Tools.

Probieren Sie weitere Beispiele aus

Jetzt, da Sie Ihr erstes Dokument mit Skills erstellt haben, versuchen Sie diese Variationen:

Erstelle eine Tabellenkalkulation

response = client.beta.messages.create(
    model="claude-sonnet-4-5-20250929",
    max_tokens=4096,
    betas=["code-execution-2025-08-25", "skills-2025-10-02"],
    container={
        "skills": [
            {
                "type": "anthropic",
                "skill_id": "xlsx",
                "version": "latest"
            }
        ]
    },
    messages=[{
        "role": "user",
        "content": "Create a quarterly sales tracking spreadsheet with sample data"
    }],
    tools=[{
        "type": "code_execution_20250825",
        "name": "code_execution"
    }]
)

Erstelle ein Word-Dokument

response = client.beta.messages.create(
    model="claude-sonnet-4-5-20250929",
    max_tokens=4096,
    betas=["code-execution-2025-08-25", "skills-2025-10-02"],
    container={
        "skills": [
            {
                "type": "anthropic",
                "skill_id": "docx",
                "version": "latest"
            }
        ]
    },
    messages=[{
        "role": "user",
        "content": "Write a 2-page report on the benefits of renewable energy"
    }],
    tools=[{
        "type": "code_execution_20250825",
        "name": "code_execution"
    }]
)

Generiere ein PDF

response = client.beta.messages.create(
    model="claude-sonnet-4-5-20250929",
    max_tokens=4096,
    betas=["code-execution-2025-08-25", "skills-2025-10-02"],
    container={
        "skills": [
            {
                "type": "anthropic",
                "skill_id": "pdf",
                "version": "latest"
            }
        ]
    },
    messages=[{
        "role": "user",
        "content": "Generate a PDF invoice template"
    }],
    tools=[{
        "type": "code_execution_20250825",
        "name": "code_execution"
    }]
)

Nächste Schritte

Jetzt, da Sie vorgefertigte Agent Skills verwendet haben, können Sie: