Back to blog
featurefilesartifacts

File in, file out

2 min read

Agents work with text by default. But most real work involves files. Spreadsheets, PDFs, documents, datasets. Svortie handles both directions: files in, files out.

Uploading input files

First, upload files at Files. Then in your agent's settings, expand Advanced Settings and find the Files picker. Select the files this agent should have access to. They get placed in /home/daytona/input/ inside the agent's sandbox before the run starts.

CSVs, PDFs, JSON datasets, whatever the agent needs. The agent's system prompt should reference the input directory so it knows where to look.

Size limits: 25MB per file, 100MB total per run.

Downloading artifacts

When an agent writes files to /home/daytona/output/, those become downloadable artifacts. After the run completes, artifacts appear in the run detail view.

Common patterns:

  • Agent reads a messy CSV from /input/, cleans it, writes a structured version to /output/
  • Agent reads a PDF from /input/, extracts key terms, writes a summary JSON to /output/
  • Agent processes multiple input files, generates a consolidated report in /output/

Artifacts are kept for 7 days.

File passing in workflows

Workflows get a shared volume mounted at /home/daytona/shared/. Each step can read from and write to this directory.

This is how you build data pipelines:

  1. Step 1 reads from /input/, processes data, writes results to /shared/
  2. Step 2 reads from /shared/, analyzes, writes updated data back
  3. Step 3 reads from /shared/, generates the final report to /output/

No manual handoff. No copy-pasting between runs. The shared volume exists for the duration of the workflow and gets cleaned up after.

Prompting for file work

The key to good file processing is a specific task description. Don't say "clean this data." Say:

"Read the CSV at /home/daytona/input/leads.csv. Remove duplicate rows based on the email column. Standardize phone numbers to E.164 format. Add a column called quality_score rated 1-5 based on completeness. Write the result to /home/daytona/output/leads_cleaned.csv."

Specific inputs, specific transformations, specific outputs. The agent knows exactly what to do.

Try it

Upload a file at Files, then create an agent and attach the file under Advanced Settings > Files. Reference /home/daytona/input/ in the task description. Run it and check the artifacts in the run detail.

Back to all posts