Anda dapat menyediakan file untuk agen Anda dengan mengunggahnya melalui Files API dan me-mount file tersebut di sandbox sesi.
Pertama, unggah file menggunakan Files API:
file = client.files.upload(file=Path("data.csv"))
print(f"File ID: {file.id}")Mount file yang telah diunggah ke dalam sandbox dengan menambahkannya ke array resources saat membuat sesi:
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
resources=[
{
"type": "file",
"file_id": file.id,
"mount_path": "/data.csv",
},
],
)Dengan mount_path di atas, agen membaca file di /mnt/session/uploads/data.csv (lihat Path file).
Sebuah file_id baru dibuat yang mereferensikan instance file tersebut di dalam sesi. Salinan ini tidak dihitung terhadap batas penyimpanan Anda.
Mount beberapa file dengan menambahkan entri ke array 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"},
]Maksimum 500 file didukung per sesi.
Anda dapat menambahkan atau menghapus file dari sesi setelah pembuatan menggunakan API resources sesi. Setiap resource memiliki id yang dikembalikan saat ditambahkan (atau dicantumkan), yang Anda gunakan untuk penghapusan.
resource = client.beta.sessions.resources.add(
session.id,
type="file",
file_id=file.id,
)
print(resource.id) # "sesrsc_01ABC..."Cantumkan semua resource pada sesi dengan resources.list. Untuk menghapus file, panggil resources.delete dengan ID resource:
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)Gunakan Files API untuk mencantumkan file yang dicakup ke suatu sesi dan mengunduhnya. Pemfilteran berdasarkan scope_id memerlukan header beta managed-agents-2026-04-01, sehingga contoh pencantuman menggunakan namespace files beta dan meneruskan header tersebut secara eksplisit. Mengunduh file tidak memerlukan header beta.
# Daftar file yang terkait dengan sebuah sesi
files = client.beta.files.list(
scope_id="sesn_abc123",
betas=["managed-agents-2026-04-01"],
)
for file in files:
print(file.id, file.filename)
# Unduh sebuah file
content = client.files.download(files.data[0].id)
content.write_to_file("output.txt")Agen dapat bekerja dengan jenis file apa pun, termasuk:
.py, .js, .ts, .go, .rs, dan lainnya).csv, .json, .xml, .yaml).txt, .md).zip, .tar.gz) - agen dapat mengekstraknya menggunakan bashmount_path berupa /data.csv menempatkan file di /mnt/session/uploads/data.csv di dalam sandboxmount_path, file ditempatkan di /mnt/session/uploads/<file_id>/)Was this page helpful?