Upload a File, Get Instant AI Analysis
You have a spreadsheet that needs analysis. A PDF contract that needs review. A log file that needs debugging. Until today, getting an AI agent to work with your files meant copying and pasting content, describing what you uploaded, or navigating a multi-step workflow just to get the file in front of the agent.
We shipped file upload notifications today. Drop a file into your agent session and the agent immediately knows it is there, knows where to find it, and starts processing it — without you typing a single word.
Rendering diagram…
The Problem With File Handoffs
Every AI platform that supports file uploads has the same friction point: the user uploads a file, and then has to explain what they just did. "I uploaded a CSV of our customer data, please analyze it." "The file I just attached is the deployment log from last night." "Can you read the PDF I uploaded?"
This is busywork. The agent should already know. The filename is quarterly-report.xlsx — it does not take reasoning to figure out what the user wants.
Previous approaches break down in three ways:
-
The agent does not know a file was uploaded. The file lands somewhere on the server, but the agent's context window has no mention of it. The user has to explicitly tell the agent to look for it.
-
The agent knows a file exists but not where. Some platforms notify the agent that an upload occurred, but the agent still has to search for the file path. More friction, more wasted tokens.
-
The agent gets the file content injected into its context. This works for small text files but fails catastrophically for large files, binary formats, or anything that does not fit in a context window.
We solved all three.
How It Works
The upload endpoint accepts up to 10 files (50 MB each) and writes them directly to the agent's pod:
POST /api/v1/agents/{org_id}/{role}/upload
The file is sanitized (no path traversal, no hidden files, safe characters only), written to the agent's filesystem, and then the agent is automatically notified with the exact filename and path.
The notification message is injected directly into the agent's active session:
"A file was uploaded by the user: 'quarterly-report.xlsx' is available at /tmp/quarterly-report.xlsx. You can now read and process it."
The agent does not need to poll. It does not need to check a directory listing. It receives the notification in real time, reads the file using its standard file access tools, and begins working.
What This Looks Like in Practice
Financial analysis. Upload a spreadsheet and your agent reads it, identifies trends, flags anomalies, and generates a summary — without you describing the file format or column headers. It reads the actual file.
Contract review. Drop a PDF and your legal-focused agent extracts key terms, identifies unusual clauses, compares against standard templates, and highlights items that need attention.
Log debugging. Upload a log file from a failed deployment and your devops agent parses it, correlates error messages with known issues in its knowledge base, and suggests fixes.
Data migration. Upload a CSV export from your legacy system and your backend agent maps the schema to your current data model, identifies transformation rules, and generates migration code.
In each case the workflow is the same: upload, wait a few seconds, read the analysis. No prompting. No file path hunting. No context window overflow.
Security Built In
Rendering diagram…
File uploads to agent pods require the same authentication as every other API call — Firebase JWT verification and organization membership validation. The security model:
- Authentication required. Every upload request must carry a valid Bearer token or admin API key.
- Org membership enforced. You can only upload files to agents in organizations you belong to.
- Filename sanitization. Directory components are stripped, leading dots are removed, unsafe characters are replaced. No path traversal is possible.
- Target path validation. The upload directory must be an absolute path with no
..traversal. Only safe characters are allowed. - Size limits. 50 MB per file, 10 files per request. Large enough for real work, bounded enough to prevent abuse.
The file lives on the agent's pod — not in a shared storage layer, not in a database, not in a public bucket. When the agent's session ends, temporary files are cleaned up with the pod.
Multi-File Workflows
The endpoint accepts multiple files in a single request. Upload a batch of invoices, a set of configuration files, or a collection of test results — each file gets its own notification, and the agent processes them in sequence.
curl -X POST \
"https://gateway.agent.ceo/api/v1/agents/{org_id}/backend/upload" \
-H "Authorization: Bearer $TOKEN" \
-F "files=@schema.sql" \
-F "files=@migration.py" \
-F "files=@test_data.csv"
The agent receives three notifications and has all three files available immediately. No zip files, no tar archives, no multi-step extraction.
Works With Every Agent
File upload is not limited to a specific agent type. Any agent running on the platform — backend, devops, marketing, research, operations — can receive uploaded files and process them. The notification system uses the same message injection infrastructure that powers inter-agent communication, so it works reliably across all agent types and configurations.
If the agent has a knowledge base attached (via the KB Attachment API we also shipped today), it can combine the uploaded file with its persistent memory. Upload a new deployment runbook and the agent can compare it against the existing runbook in its knowledge base, identify what changed, and update the graph.
Stop Explaining. Start Working.
File collaboration with AI agents should be as simple as file collaboration with human colleagues: drop the file, get the analysis. No cover letter. No instructions on how to open it. No ceremony.
Upload a file and let your agent do its job.
Try it at agent.ceo.