---
title: Bundle
---



{/*
  CONTRIBUTOR NOTE:
  ----------------
  This is a legacy document that is being deprecated.
  Please DO NOT make changes to this version.
  All updates should be directed to the new version at:
  /plugin-dev-en/9241-bundle
*/}

<Card title="This Documentation is Being Deprecated" icon="circle-exclamation" href="/plugin-dev-en/9241-bundle">
  <p>This page is being phased out as part of our documentation reorganization.</p>

  <p><strong>Click this card</strong> to be redirected to the updated version with the most current information.</p>

  <p>If you notice any discrepancies or areas needing improvement in the new documentation, please use the "Report an issue" button at the bottom of the page.</p>
</Card>

A Bundle plugin package is a collection of multiple plugins. It can package multiple plugins into one plugin to achieve batch installation effects while providing more powerful services.

You can package multiple plugins into a Bundle using the Dify CLI tool. Bundle plugin packages offer three types:

* `Marketplace` type: Stores plugin IDs and version information. During import, specific plugin packages are downloaded through the Dify Marketplace.
* `GitHub` type: Stores GitHub repository address, release version number, and asset filename. During import, Dify accesses the corresponding GitHub repository to download plugin packages.
* `Package` type: Plugin packages are stored directly in the Bundle. It doesn't store reference sources but may cause large Bundle package sizes.

### **Prerequisites**

* Dify plugin scaffolding tool
* Python environment, version ≥ 3.11;

For detailed instructions on preparing the plugin development scaffolding tool, please refer to [Initializing Development Tools](initialize-development-tools).

### **Create Bundle Project**

In the current path, run the scaffolding command-line tool to create a new plugin package project:

```bash
./dify-plugin-darwin-arm64 bundle init
```

#### **1. Enter Plugin Information**

Follow the prompts to configure plugin name, author information, and plugin description. If you're working in a team, you can also enter an organization name as the author.

> The name must be 1-128 characters long and can only contain letters, numbers, hyphens, and underscores.

![Bundle basic informatio](https://assets-docs.dify.ai/2024/12/03a1c4cdc72213f09523eb1b40832279.png)

Fill in the information and hit enter, the Bundle plugin project directory will be created automatically.

![](https://assets-docs.dify.ai/2024/12/356d1a8201fac3759bf01ee64e79a52b.png)

#### **2. Add Dependencies**

* **Marketplace**

Execute the following command:

```bash
dify-plugin bundle append marketplace . --marketplace_pattern=langgenius/openai:0.0.1
```

Where marketplace\_pattern is the plugin reference in the marketplace, format: organization-name/plugin-name:version

* **GitHub**

Execute the following command:

```bash
dify-plugin bundle append github . --repo_pattern=langgenius/openai:0.0.1/openai.difypkg
```

Where repo\_pattern is the plugin reference in github, format: `organization-name/repository-name:release/attachment-name`

* **Package**

Execute the following command:

```bash
dify-plugin bundle append package . --package_path=./openai.difypkg
```

Where package\_path is the plugin package directory.

### **Package Bundle Project**

Run the following command to package the Bundle plugin:

```bash
dify-plugin bundle package ./bundle
```

After executing the command, a bundle.difybndl file will be automatically created in the current directory, which is the final packaging result.

{/*
Contributing Section
DO NOT edit this section!
It will be automatically generated by the script.
*/}

---

[Edit this page](https://github.com/langgenius/dify-docs/edit/main/en/plugins/quick-start/develop-plugins/bundle.mdx) | [Report an issue](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)

