[PR #1273] [MERGED] add new plugin aliyun_oss #1497

Closed
opened 2026-02-22 17:59:50 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-plugins/pull/1273
Author: @sawyer-shi
Created: 9/22/2025
Status: Merged
Merged: 10/22/2025
Merged by: @crazywoola

Base: mainHead: main-aliyun-oss-plugin


📝 Commits (10+)

  • 1da7a9b add a new plugin flow_map-0.0.1.difypkg
  • aff63fc Merge branch 'langgenius:main' into main
  • 7b1ec19 Add new plugin aliyun OSS
  • d28fd34 remove new plugin aliyun OSS file
  • 6f21c85 add new plugin aliyun OSS
  • 09242b1 remove another plugin flow_map-0.0.1.difypkg by current branch
  • 4b1e9d3 add new plugin volcengine_tos【update】
  • 4e38ef2 add new plugin aliyun_oss-0.0.1.difypkg【update readme】
  • f469c83 add new plugin aliyun_oss-0.0.1.difypkg【add batch upload files action】
  • 847beed add new plugin aliyun_oss-0.0.1.difypkg【update icon】

📊 Changes

1 file changed (+0 additions, -0 deletions)

View changed files

sawyer-shi/aliyun_oss/aliyun_oss-0.0.1.difypkg (+0 -0)

📄 Description

Alibaba Cloud OSS Plugin

A powerful Dify plugin providing seamless integration with Alibaba Cloud Object Storage Service (OSS). Enables direct file uploads to Alibaba Cloud OSS and efficient file retrieval using URLs, with rich configuration options.

A powerful Dify plugin providing seamless integration with Alibaba Cloud Object Storage Service (OSS). Enables direct file uploads to Alibaba Cloud OSS and efficient file retrieval using URLs, with rich configuration options.

Version Information

  • Current Version: v0.0.1
  • Release Date: 2025-09-22
  • Compatibility: Dify Plugin Framework
  • Python Version: 3.12

Version History

  • v0.0.1 (2025-09-22): Initial release with file upload and retrieval capabilities, support for multiple directory structures and filename modes

Quick Start

  1. Download the aliyun_oss plugin from the Dify marketplace
  2. Configure Alibaba Cloud OSS authorization information
  3. After completing the above configuration, you can immediately use the plugin

Core Features

File Upload to OSS

  • Direct File Upload: Upload any file type directly to Alibaba Cloud OSS
  • Flexible Directory Structure: Multiple storage directory organization options
    • Flat structure (no_subdirectory)
    • Hierarchical date structure (yyyy_mm_dd_hierarchy)
    • Combined date structure (yyyy_mm_dd_combined)
  • Filename Customization: Control how filenames are stored in OSS
    • Use original filename
    • Append timestamp to original filename
  • Source File Tracking: Automatically captures and returns the original filename
  • Smart Extension Detection: Automatically determine file extensions based on content type

File Retrieval by URL

  • Direct Content Access: Retrieve file content directly using OSS URLs
  • Cross-Region Support: Works with all Alibaba Cloud OSS regions worldwide

Technical Advantages

  • Secure Authentication: Robust credential handling with support for HTTPS
  • Efficient Storage Management: Intelligent file organization options
  • Comprehensive Error Handling: Detailed error messages and status reporting
  • Multiple File Type Support: Works with all common file formats
  • Rich Parameter Configuration: Extensive options for customized workflows
  • Source File Tracking: Preserves original filename information

Requirements

  • Python 3.12
  • Alibaba Cloud OSS account with valid AccessKey credentials
  • Dify Platform access
  • Required Python packages (installed via requirements.txt)

Installation & Configuration

  1. Install the required dependencies:

    pip install -r requirements.txt
    
  2. Configure the plugin in Dify with the following parameters:

    • Endpoint: Your Alibaba Cloud OSS endpoint (e.g., oss-cn-beijing.aliyuncs.com)
    • Bucket Name: Your OSS bucket name
    • AccessKey ID: Your Alibaba Cloud AccessKey ID
    • AccessKey Secret: Your Alibaba Cloud AccessKey Secret

Usage

The plugin provides three powerful tools for interacting with Alibaba Cloud OSS:

1. Upload File to OSS (upload_file)

Dedicated tool for uploading files to Alibaba Cloud OSS.

  • Parameters:
    • file: The local file to upload (required)
    • directory: First-level directory under the bucket (required)
    • directory_mode: Optional directory structure mode (default: no_subdirectory)
      • no_subdirectory: Store directly in specified directory
      • yyyy_mm_dd_hierarchy: Store in date-based hierarchical structure
      • yyyy_mm_dd_combined: Store in combined date directory
    • filename: Optional custom filename for OSS storage
    • filename_mode: Optional filename composition mode (default: filename)
      • filename: Use original filename
      • filename_timestamp: Use original filename plus timestamp

2. Multi Upload Files to OSS (multi_upload_files)

Dedicated tool for uploading multiple files to Alibaba Cloud OSS simultaneously.

  • Parameters:
    • files: The local files to upload (required)
    • directory: First-level directory under the bucket (required)
    • directory_mode: Optional directory structure mode (default: no_subdirectory)
      • no_subdirectory: Store directly in specified directory
      • yyyy_mm_dd_hierarchy: Store in date-based hierarchical structure
      • yyyy_mm_dd_combined: Store in combined date directory
    • filename_mode: Optional filename composition mode (default: filename)
      • filename: Use original filename
      • filename_timestamp: Use original filename plus timestamp

3. Get File by URL (get_file_by_url)

Dedicated tool for retrieving files from Alibaba Cloud OSS using URLs.

  • Parameters:
    • file_url: The URL of the file in Alibaba Cloud OSS

Examples

Upload File

upload-01

Batch Upload Files

upload-02

Get File by URL

download-01 download-02

Notes

  • Ensure your OSS bucket has the correct permissions configured
  • The plugin requires valid Alibaba Cloud credentials with appropriate OSS access permissions
  • For very large files, consider using multipart upload functionality (not currently implemented)

Developer Information

  • Author: https://github.com/sawyer-shi
  • Email: sawyer36@foxmail.com
  • License: MIT License
  • Support: Through Dify platform and GitHub Issues
  • Souce Code: https://github.com/sawyer-shi/dify-plugins-aliyun_oss

Ready to seamlessly integrate with Alibaba Cloud OSS?

Plugin Submission Form

1. Metadata

  • Plugin Author:
  • Plugin Name:
  • Repository URL:

2. Submission Type

  • New plugin submission
  • Version update for existing plugin

3. Description

4. Checklist

  • I have read and followed the Publish to Dify Marketplace guidelines
  • I have read and comply with the Plugin Developer Agreement
  • I confirm my plugin works properly on both Dify Community Edition and Cloud Version
  • I confirm my plugin has been thoroughly tested for completeness and functionality
  • My plugin brings new value to Dify

5. Documentation Checklist

Please confirm that your plugin README includes all necessary information:

  • Step-by-step setup instructions
  • Detailed usage instructions
  • All required APIs and credentials are clearly listed
  • Connection requirements and configuration details
  • Link to the repository for the plugin source code

6. Privacy Protection Information

Based on Dify Plugin Privacy Protection Guidelines:

Data Collection

Privacy Policy

  • I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-plugins/pull/1273 **Author:** [@sawyer-shi](https://github.com/sawyer-shi) **Created:** 9/22/2025 **Status:** ✅ Merged **Merged:** 10/22/2025 **Merged by:** [@crazywoola](https://github.com/crazywoola) **Base:** `main` ← **Head:** `main-aliyun-oss-plugin` --- ### 📝 Commits (10+) - [`1da7a9b`](https://github.com/langgenius/dify-plugins/commit/1da7a9b8de020e2b634275b0f5b99dfffd12ee82) add a new plugin flow_map-0.0.1.difypkg - [`aff63fc`](https://github.com/langgenius/dify-plugins/commit/aff63fc5dc3bdb3888d0eeca96c9354a1c91869c) Merge branch 'langgenius:main' into main - [`7b1ec19`](https://github.com/langgenius/dify-plugins/commit/7b1ec19ae75e2295cfd3de65b46c7e40fb0ca8d1) Add new plugin aliyun OSS - [`d28fd34`](https://github.com/langgenius/dify-plugins/commit/d28fd34d3f0ddec63511b738fe6c2211aa322828) remove new plugin aliyun OSS file - [`6f21c85`](https://github.com/langgenius/dify-plugins/commit/6f21c85f6980424e53935dc815258832032eb875) add new plugin aliyun OSS - [`09242b1`](https://github.com/langgenius/dify-plugins/commit/09242b14edb1390447c45fc58f17fe083dfa4109) remove another plugin flow_map-0.0.1.difypkg by current branch - [`4b1e9d3`](https://github.com/langgenius/dify-plugins/commit/4b1e9d3535834de8dbf0c0f927fd3c198c8695e3) add new plugin volcengine_tos【update】 - [`4e38ef2`](https://github.com/langgenius/dify-plugins/commit/4e38ef22406c7b97008ac1bd41f75c8d5148b6bc) add new plugin aliyun_oss-0.0.1.difypkg【update readme】 - [`f469c83`](https://github.com/langgenius/dify-plugins/commit/f469c83d4b139630857a816b17bbdc74e89610c0) add new plugin aliyun_oss-0.0.1.difypkg【add batch upload files action】 - [`847beed`](https://github.com/langgenius/dify-plugins/commit/847beeda43206076e21b0f36eb2f0216a88a9507) add new plugin aliyun_oss-0.0.1.difypkg【update icon】 ### 📊 Changes **1 file changed** (+0 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `sawyer-shi/aliyun_oss/aliyun_oss-0.0.1.difypkg` (+0 -0) </details> ### 📄 Description # Alibaba Cloud OSS Plugin A powerful Dify plugin providing seamless integration with Alibaba Cloud Object Storage Service (OSS). Enables direct file uploads to Alibaba Cloud OSS and efficient file retrieval using URLs, with rich configuration options. A powerful Dify plugin providing seamless integration with Alibaba Cloud Object Storage Service (OSS). Enables direct file uploads to Alibaba Cloud OSS and efficient file retrieval using URLs, with rich configuration options. ### Version Information - **Current Version**: v0.0.1 - **Release Date**: 2025-09-22 - **Compatibility**: Dify Plugin Framework - **Python Version**: 3.12 #### Version History - **v0.0.1** (2025-09-22): Initial release with file upload and retrieval capabilities, support for multiple directory structures and filename modes ### Quick Start 1. Download the aliyun_oss plugin from the Dify marketplace 2. Configure Alibaba Cloud OSS authorization information 3. After completing the above configuration, you can immediately use the plugin ### Core Features #### File Upload to OSS - **Direct File Upload**: Upload any file type directly to Alibaba Cloud OSS - **Flexible Directory Structure**: Multiple storage directory organization options - Flat structure (no_subdirectory) - Hierarchical date structure (yyyy_mm_dd_hierarchy) - Combined date structure (yyyy_mm_dd_combined) - **Filename Customization**: Control how filenames are stored in OSS - Use original filename - Append timestamp to original filename - **Source File Tracking**: Automatically captures and returns the original filename - **Smart Extension Detection**: Automatically determine file extensions based on content type #### File Retrieval by URL - **Direct Content Access**: Retrieve file content directly using OSS URLs - **Cross-Region Support**: Works with all Alibaba Cloud OSS regions worldwide ### Technical Advantages - **Secure Authentication**: Robust credential handling with support for HTTPS - **Efficient Storage Management**: Intelligent file organization options - **Comprehensive Error Handling**: Detailed error messages and status reporting - **Multiple File Type Support**: Works with all common file formats - **Rich Parameter Configuration**: Extensive options for customized workflows - **Source File Tracking**: Preserves original filename information ### Requirements - Python 3.12 - Alibaba Cloud OSS account with valid AccessKey credentials - Dify Platform access - Required Python packages (installed via requirements.txt) ### Installation & Configuration 1. Install the required dependencies: ```bash pip install -r requirements.txt ``` 2. Configure the plugin in Dify with the following parameters: - **Endpoint**: Your Alibaba Cloud OSS endpoint (e.g., oss-cn-beijing.aliyuncs.com) - **Bucket Name**: Your OSS bucket name - **AccessKey ID**: Your Alibaba Cloud AccessKey ID - **AccessKey Secret**: Your Alibaba Cloud AccessKey Secret ### Usage The plugin provides three powerful tools for interacting with Alibaba Cloud OSS: #### 1. Upload File to OSS (upload_file) Dedicated tool for uploading files to Alibaba Cloud OSS. - **Parameters**: - `file`: The local file to upload (required) - `directory`: First-level directory under the bucket (required) - `directory_mode`: Optional directory structure mode (default: `no_subdirectory`) - `no_subdirectory`: Store directly in specified directory - `yyyy_mm_dd_hierarchy`: Store in date-based hierarchical structure - `yyyy_mm_dd_combined`: Store in combined date directory - `filename`: Optional custom filename for OSS storage - `filename_mode`: Optional filename composition mode (default: `filename`) - `filename`: Use original filename - `filename_timestamp`: Use original filename plus timestamp #### 2. Multi Upload Files to OSS (multi_upload_files) Dedicated tool for uploading multiple files to Alibaba Cloud OSS simultaneously. - **Parameters**: - `files`: The local files to upload (required) - `directory`: First-level directory under the bucket (required) - `directory_mode`: Optional directory structure mode (default: `no_subdirectory`) - `no_subdirectory`: Store directly in specified directory - `yyyy_mm_dd_hierarchy`: Store in date-based hierarchical structure - `yyyy_mm_dd_combined`: Store in combined date directory - `filename_mode`: Optional filename composition mode (default: `filename`) - `filename`: Use original filename - `filename_timestamp`: Use original filename plus timestamp #### 3. Get File by URL (get_file_by_url) Dedicated tool for retrieving files from Alibaba Cloud OSS using URLs. - **Parameters**: - `file_url`: The URL of the file in Alibaba Cloud OSS ### Examples #### Upload File <img width="2064" height="865" alt="upload-01" src="https://github.com/user-attachments/assets/045985dc-f56c-4d25-9996-eed9a63274a6" /> #### Batch Upload Files <img width="1981" height="862" alt="upload-02" src="https://github.com/user-attachments/assets/b5de5a4a-aec8-4b70-a98d-9073ad573e84" /> #### Get File by URL <img width="2014" height="492" alt="download-01" src="https://github.com/user-attachments/assets/bf90e661-5ea9-4080-8592-e4e2c9acefaa" /> <img width="1940" height="499" alt="download-02" src="https://github.com/user-attachments/assets/f5506d0a-0a43-4210-a5a7-8c4010cb95fc" /> ### Notes - Ensure your OSS bucket has the correct permissions configured - The plugin requires valid Alibaba Cloud credentials with appropriate OSS access permissions - For very large files, consider using multipart upload functionality (not currently implemented) ### Developer Information - **Author**: `https://github.com/sawyer-shi` - **Email**: sawyer36@foxmail.com - **License**: MIT License - **Support**: Through Dify platform and GitHub Issues - **Souce Code**: `https://github.com/sawyer-shi/dify-plugins-aliyun_oss` --- **Ready to seamlessly integrate with Alibaba Cloud OSS?** # Plugin Submission Form ## 1. Metadata <!-- Please provide the following metadata of your plugin to make it easier for the reviewer to check the changes. - Plugin Author : The author of the plugin which is defined in your manifest.yaml - Plugin Name : The name of the plugin which is defined in your manifest.yaml - Repository URL: The URL of the repository where the source code of your plugin is hosted --> - **Plugin Author**: - **Plugin Name**: - **Repository URL**: ## 2. Submission Type - [x] New plugin submission - [ ] Version update for existing plugin ## 3. Description <!-- Please briefly describe the purpose of the new plugin or the updates made to the existing plugin --> ## 4. Checklist - [x] I have read and followed the Publish to Dify Marketplace guidelines - [x] I have read and comply with the Plugin Developer Agreement - [x] I confirm my plugin works properly on both Dify Community Edition and Cloud Version - [x] I confirm my plugin has been thoroughly tested for completeness and functionality - [x] My plugin brings new value to Dify ## 5. Documentation Checklist Please confirm that your plugin README includes all necessary information: - [x] Step-by-step setup instructions - [x] Detailed usage instructions - [x] All required APIs and credentials are clearly listed - [x] Connection requirements and configuration details - [x] Link to the repository for the plugin source code ## 6. Privacy Protection Information Based on Dify Plugin Privacy Protection [Guidelines](https://docs.dify.ai/plugins/publish-plugins/publish-to-dify-marketplace/plugin-privacy-protection-guidelines): ### Data Collection <!-- Does your plugin collect any user personal data? If yes, please list what types of user personal data are being collected according to the Plugin Privacy Protection Guidelines (for example: Email address, IP address, Age, etc) --> ### Privacy Policy - [x] I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-22 17:59:50 -05:00
yindo closed this issue 2026-02-22 17:59:52 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-plugins#1497