Browser file_upload tool can now accept file contents directly instead of only file paths
The browser automation file_upload tool now accepts an optional files array containing base64-encoded file data, a name, and a MIME type, in addition to its existing paths option. The files field is described as meant to be populated by the client itself after it reads the files under its own file-read permissions, not set directly by the model. A reference (ref) and tab ID (tabId) are still required, but paths is no longer required on its own.
This gives the browser tool a way to upload file contents directly when the client has already read them, rather than always relying on a file path that must be resolved separately.
The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.
**Fix:** Reconcile against recent `claude_file_uploaded` or `claude_file_deleted` activities. Files deleted along with a chat have no `claude_file_deleted` activity, so check for the chat's `claude_chat_deleted` activity as well. If the fi…manage-claude/compliance-errors see the edit
Anthropic's documentation has since written up file_upload, on compliance-errors.