Claude Platform Docs
Managed AgentsAgentenkontext verwalten

Dateien hinzufügen

Lade Dateien hoch und binde sie in deiner Sandbox ein, um sie zu lesen und zu verarbeiten.

Du kannst deinem Agenten Dateien bereitstellen, indem du sie über die Files API hochlädst und sie in der Sandbox der Session einbindest.

Dateien hochladen

Lade zunächst eine Datei über die Files API hoch:

file = client.files.upload(file=Path("data.csv"))
print(f"File ID: {file.id}")

Dateien in einer Session einbinden

Binde hochgeladene Dateien in die Sandbox ein, indem du sie beim Erstellen einer Session zum Array resources hinzufügst:

session = client.beta.sessions.create(
    agent=agent.id,
    environment_id=environment.id,
    resources=[
        {
            "type": "file",
            "file_id": file.id,
            "mount_path": "/data.csv",
        },
    ],
)

Mit dem obigen mount_path liest der Agent die Datei unter /mnt/session/uploads/data.csv (siehe Dateipfade).

Es wird eine neue file_id erstellt, die auf die Instanz der Datei in der Session verweist. Diese Kopien werden nicht auf deine Speicherlimits angerechnet.

Mehrere Dateien

Binde mehrere Dateien ein, indem du Einträge zum Array resources hinzufügst:

resources = [
    {"type": "file", "file_id": "file_abc123", "mount_path": "/data.csv"},
    {"type": "file", "file_id": "file_def456", "mount_path": "/config.json"},
    {"type": "file", "file_id": "file_ghi789", "mount_path": "/src/main.py"},
]

Pro Session werden maximal 500 Dateien unterstützt.

Dateien in einer laufenden Session verwalten

Du kannst nach der Erstellung Dateien zu einer Session hinzufügen oder daraus entfernen, indem du die Session-Resources-API verwendest. Jede Ressource hat eine id, die beim Hinzufügen (oder Auflisten) zurückgegeben wird und die du zum Löschen verwendest.

resource = client.beta.sessions.resources.add(
    session.id,
    type="file",
    file_id=file.id,
)
print(resource.id)  # "sesrsc_01ABC..."

Liste alle Ressourcen einer Session mit client.beta.sessions.resources.list() auf. Um eine Datei zu entfernen, rufe client.beta.sessions.resources.delete() mit der Ressourcen-ID auf:

listed = client.beta.sessions.resources.list(session.id)
for entry in listed.data:
    print(entry.id, entry.type)

client.beta.sessions.resources.delete(resource.id, session_id=session.id)

Session-Dateien auflisten und herunterladen

Verwende die Files API, um auf eine Session beschränkte Dateien aufzulisten und herunterzuladen. Dateien, die der Agent nach /mnt/session/outputs/ schreibt, erscheinen kurz nach dem Abschluss des Schreibvorgangs in der Liste, manchmal einige Sekunden nachdem die Session inaktiv wird. Wenn eine erwartete Ausgabedatei fehlt, liste nach einer kurzen Verzögerung erneut auf; sobald sie in der Liste erscheint, ist ihr Upload abgeschlossen.

Das Filtern nach scope_id erfordert den Beta-Header managed-agents-2026-04-01, daher rufen die Auflistungsbeispiele client.beta.files.list() auf und übergeben diesen Header explizit.

# Dateien auflisten, die mit einer Sitzung verknüpft sind
files = client.beta.files.list(
    scope_id="sesn_abc123",
    betas=["managed-agents-2026-04-01"],
)
for file in files:
    print(file.id, file.filename)

# Eine Datei herunterladen
content = client.files.download(files.data[0].id)
content.write_to_file("output.txt")

Unterstützte Dateitypen

Der Agent kann mit jedem Dateityp arbeiten, einschließlich:

  • Quellcode (.py, .js, .ts, .go, .rs und andere)
  • Datendateien (.csv, .json, .xml, .yaml)
  • Dokumente (.txt, .md)
  • Archive (.zip, .tar.gz) – der Agent kann diese mit bash extrahieren
  • Binärdateien – der Agent kann diese mit geeigneten Tools verarbeiten

Dateipfade

  • Der von dir angegebene Pfad liegt unterhalb des Uploads-Verzeichnisses der Session: Ein mount_path von /data.csv legt die Datei in der Sandbox unter /mnt/session/uploads/data.csv ab
  • Wenn du mount_path weglässt, wird die Datei unter /mnt/session/uploads/<file_id> abgelegt
  • Übergeordnete Verzeichnisse werden automatisch erstellt
  • Pfade sollten absolut sein (beginnend mit /)
  • Dateien, die der Agent nach /mnt/session/outputs/ schreibt, werden über die Files API verfügbar, beschränkt auf die Session; siehe Session-Dateien auflisten und herunterladen

Was this page helpful?