[PR #29144] feat: add support for remote URL file transfer in ToolFileMessageTran… #32309

Open
opened 2026-02-21 20:51:09 -05:00 by yindo · 0 comments
Owner

Original Pull Request: https://github.com/langgenius/dify/pull/29144

State: open
Merged: No


…sformer

Important

  1. Make sure you have read our contribution guidelines
  2. Ensure there is an associated issue and you have been assigned to it
  3. Use the correct syntax to link this PR: Fixes #<issue number>.

Summary

This PR adds support for handling remote URL file transfers in the ToolFileMessageTransformer class.

Changes

  • Added a new condition branch in the file transformation logic to detect and process files with FileTransferMethod.REMOTE_URL transfer method
  • Imported build_from_mapping utility from factories.file_factory to properly construct File objects from dictionary mappings
  • When a file dictionary with REMOTE_URL transfer method is encountered, it now builds a proper File object using build_from_mapping and attaches it to the message metadata

Benefits

This enhancement enables the tool message transformer to properly handle files that are transferred via remote URLs, expanding the file handling capabilities beyond local file transfers and improving the flexibility of the file transfer system.

Checklist

  • This change requires a documentation update, included: Dify Document
  • I understand that this PR may be closed in case there was no previous discussion or issues. (This doesn't apply to typos!)
  • I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change.
  • I've updated the documentation accordingly.
  • I ran dev/reformat(backend) and cd web && npx lint-staged(frontend) to appease the lint gods
**Original Pull Request:** https://github.com/langgenius/dify/pull/29144 **State:** open **Merged:** No --- …sformer > [!IMPORTANT] > > 1. Make sure you have read our [contribution guidelines](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) > 1. Ensure there is an associated issue and you have been assigned to it > 1. Use the correct syntax to link this PR: `Fixes #<issue number>`. ## Summary This PR adds support for handling remote URL file transfers in the `ToolFileMessageTransformer` class. ### Changes - Added a new condition branch in the file transformation logic to detect and process files with `FileTransferMethod.REMOTE_URL` transfer method - Imported `build_from_mapping` utility from `factories.file_factory` to properly construct File objects from dictionary mappings - When a file dictionary with `REMOTE_URL` transfer method is encountered, it now builds a proper File object using `build_from_mapping` and attaches it to the message metadata ### Benefits This enhancement enables the tool message transformer to properly handle files that are transferred via remote URLs, expanding the file handling capabilities beyond local file transfers and improving the flexibility of the file transfer system. ## Checklist - [ ] This change requires a documentation update, included: [Dify Document](https://github.com/langgenius/dify-docs) - [x] I understand that this PR may be closed in case there was no previous discussion or issues. (This doesn't apply to typos!) - [x] I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change. - [x] I've updated the documentation accordingly. - [x] I ran `dev/reformat`(backend) and `cd web && npx lint-staged`(frontend) to appease the lint gods
yindo added the pull-request label 2026-02-21 20:51:09 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#32309