Vous pouvez fournir des fichiers à votre agent en les téléversant via l'API Files et en les montant dans le sandbox (bac à sable) de la session.
Tout d'abord, téléversez un fichier en utilisant l'API Files :
file = client.files.upload(file=Path("data.csv"))
print(f"File ID: {file.id}")Montez les fichiers téléversés dans le sandbox en les ajoutant au tableau resources lors de la création d'une session :
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
resources=[
{
"type": "file",
"file_id": file.id,
"mount_path": "/data.csv",
},
],
)Avec le mount_path précédent, l'agent lit le fichier à /mnt/session/uploads/data.csv (voir Chemins de fichiers).
Un nouveau file_id est créé qui référence l'instance du fichier dans la session. Ces copies ne sont pas comptabilisées dans vos limites de stockage.
Montez plusieurs fichiers en ajoutant des entrées au tableau resources :
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"},
]Un maximum de 500 fichiers est pris en charge par session.
Vous pouvez ajouter ou supprimer des fichiers d'une session après sa création en utilisant l'API de ressources de session. Chaque ressource possède un id renvoyé lorsqu'elle est ajoutée (ou listée), que vous utilisez pour les suppressions.
resource = client.beta.sessions.resources.add(
session.id,
type="file",
file_id=file.id,
)
print(resource.id) # "sesrsc_01ABC..."Listez toutes les ressources d'une session avec resources.list. Pour supprimer un fichier, appelez resources.delete avec l'ID de la ressource :
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)Utilisez l'API Files pour lister les fichiers associés à une session et les télécharger.
# Lister les fichiers associés à une session
files = client.beta.files.list(
scope_id="sesn_abc123",
betas=["managed-agents-2026-04-01"],
)
for file in files:
print(file.id, file.filename)
# Télécharger un fichier
content = client.beta.files.download(files.data[0].id)
content.write_to_file("output.txt")L'agent peut travailler avec n'importe quel type de fichier, notamment :
.py, .js, .ts, .go, .rs, et autres).csv, .json, .xml, .yaml).txt, .md).zip, .tar.gz) - l'agent peut les extraire en utilisant bashmount_path de /data.csv place le fichier à /mnt/session/uploads/data.csv dans le sandboxmount_path, le fichier est placé à /mnt/session/uploads/<file_id>/)Was this page helpful?