Vous pouvez fournir des fichiers à votre agent en les téléchargeant via l'API Files et en les montant dans le conteneur de la session.
Toutes les demandes de l'API Managed Agents nécessitent l'en-tête bêta managed-agents-2026-04-01. Le SDK définit automatiquement l'en-tête bêta.
Tout d'abord, téléchargez un fichier en utilisant l'API Files :
file = client.beta.files.upload(file=Path("data.csv"))
print(f"File ID: {file.id}")Montez les fichiers téléchargés dans le conteneur en les ajoutant au tableau resources lors de la création d'une session :
Le mount_path est optionnel, mais assurez-vous que le fichier téléchargé a un nom descriptif pour que l'agent sache ce qu'il cherche.
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
resources=[
{
"type": "file",
"file_id": file.id,
"mount_path": "/workspace/data.csv",
},
],
)Un nouveau file_id sera créé qui référence l'instance du fichier dans la session. Ces copies ne comptent pas par rapport à vos limites de stockage.
Montez plusieurs fichiers en ajoutant des entrées au tableau resources :
resources = [
{"type": "file", "file_id": "file_abc123", "mount_path": "/workspace/data.csv"},
{"type": "file", "file_id": "file_def456", "mount_path": "/workspace/config.json"},
{"type": "file", "file_id": "file_ghi789", "mount_path": "/workspace/src/main.py"},
]Un maximum de 100 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 des ressources de session. Chaque ressource a 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 sur une session avec resources.list. Pour supprimer un fichier, appelez resources.delete avec l'ID de 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 limités à une session et les télécharger.
# List files associated with a session
files = client.beta.files.list(
scope_id="sesn_abc123",
betas=["managed-agents-2026-04-01"],
)
for f in files:
print(f.id, f.filename)
# Download a file
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, etc.).csv, .json, .xml, .yaml).txt, .md).zip, .tar.gz) - l'agent peut les extraire en utilisant bashLes fichiers montés dans le conteneur sont des copies en lecture seule. L'agent peut les lire mais ne peut pas modifier le fichier téléchargé original. Pour travailler avec des versions modifiées, l'agent écrit dans de nouveaux chemins au sein du conteneur.
/)Was this page helpful?