[Guidance Needed]: How to Support Tool, Model, and Endpoint Services Simultaneously in Latest Dify Plugin Version #902

Closed
opened 2026-02-16 10:20:54 -05:00 by yindo · 1 comment
Owner

Originally created by @lpdink on GitHub (Dec 25, 2025).

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • Please do not modify this template :) and fill in all the required fields.

1. Is this request related to a challenge you're experiencing? Tell me about your story.

Hi, I'm from the Alibaba Cloud ADBPG team and currently developing a Dify plugin.

I visited the Dify Plugin Marketplace but couldn't find any bundled plugin projects listed under the "Bundle" category. Additionally, I didn't locate any files with the .difybndl extension in that repository.

I noticed that, as of the time of submitting this issue, the latest version of dify-plugin-daemon enforces a restriction preventing a single plugin from simultaneously serving as a model, tool, and endpoint (see this code line).

In response to this limitation, I've refactored our original plugin into three separate plugins—one for each capability (tool, model, and endpoint)—and bundled them together. You can find our current implementation here: https://github.com/aliyun/alibabacloud-adbpg-dify-plugin.

What’s confusing is that I’m unable to provide tool, model, and endpoint capabilities within a single plugin, yet I also don’t understand how to properly publish or submit a bundle to the marketplace. Any guidance or suggestions would be appreciated!

2. Additional context or comments

No response

3. Can you help us with this feature?

  • I am interested in contributing to this feature.
Originally created by @lpdink on GitHub (Dec 25, 2025). ### Self Checks - [x] I have read the [Contributing Guide](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) and [Language Policy](https://github.com/langgenius/dify/issues/1542). - [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify-official-plugins/issues), including closed ones. - [x] I confirm that I am using English to submit this report, otherwise it will be closed. - [x] Please do not modify this template :) and fill in all the required fields. ### 1. Is this request related to a challenge you're experiencing? Tell me about your story. Hi, I'm from the Alibaba Cloud ADBPG team and currently developing a Dify plugin. I visited the [Dify Plugin Marketplace](https://marketplace.dify.ai/?category=bundle) but couldn't find any bundled plugin projects listed under the "Bundle" category. Additionally, I didn't locate any files with the `.difybndl` extension in that repository. I noticed that, as of the time of submitting this issue, the latest version of `dify-plugin-daemon` enforces a restriction preventing a single plugin from simultaneously serving as a model, tool, and endpoint (see [this code line](https://github.com/langgenius/dify-plugin-daemon/blob/main/pkg/entities/plugin_entities/plugin_declaration.go#L268)). In response to this limitation, I've refactored our original plugin into three separate plugins—one for each capability (tool, model, and endpoint)—and bundled them together. You can find our current implementation here: https://github.com/aliyun/alibabacloud-adbpg-dify-plugin. What’s confusing is that I’m unable to provide tool, model, and endpoint capabilities within a single plugin, yet I also don’t understand how to properly publish or submit a bundle to the marketplace. Any guidance or suggestions would be appreciated! ### 2. Additional context or comments _No response_ ### 3. Can you help us with this feature? - [x] I am interested in contributing to this feature.
yindo added the enhancementquestion labels 2026-02-16 10:20:54 -05:00
yindo closed this issue 2026-02-16 10:20:54 -05:00
Author
Owner

@dosubot[bot] commented on GitHub (Dec 25, 2025):

Currently, Dify enforces a one-plugin-per-capability policy: you cannot combine tool, model, and endpoint services in a single plugin, so splitting them into separate plugins is required. Each plugin should be submitted individually to the marketplace—each folder is treated as a separate plugin, and submissions are reviewed one at a time. There is no official documentation or working example for bundling multiple plugins (such as with a .difybndl file) or publishing a bundle to the marketplace, even though the UI and backend have some bundle-related components and a "Bundle" category is visible in the interface. However, the workflow for submitting or publishing plugin bundles is not yet defined or supported in practice. For now, the best approach is to submit each capability as its own plugin and reference their relationship in your documentation or metadata if needed. This matches current repository and marketplace practices and aligns with recent guidance from maintainers and contributors.
Source 1 | Source 2 | Source 3

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other

Open in Cursor Join Discord Share on X

@dosubot[bot] commented on GitHub (Dec 25, 2025): <!-- Answer --> Currently, Dify enforces a one-plugin-per-capability policy: you cannot combine tool, model, and endpoint services in a single plugin, so splitting them into separate plugins is required. Each plugin should be submitted individually to the marketplace—each folder is treated as a separate plugin, and submissions are reviewed one at a time. There is no official documentation or working example for bundling multiple plugins (such as with a `.difybndl` file) or publishing a bundle to the marketplace, even though the UI and backend have some bundle-related components and a "Bundle" category is visible in the interface. However, the workflow for submitting or publishing plugin bundles is not yet defined or supported in practice. For now, the best approach is to submit each capability as its own plugin and reference their relationship in your documentation or metadata if needed. This matches current repository and marketplace practices and aligns with recent guidance from maintainers and contributors. [Source 1](https://github.com/langgenius/dify-official-plugins/pull/2097) | [Source 2](https://github.com/langgenius/dify-official-plugins/issues/1542) | [Source 3](https://github.com/langgenius/dify/blob/f08d847c20766960ef836b18a0db4c9bc41fe463/api/core/plugin/entities/bundle.py#L8-L31) <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/deeafe8d-6c88-4406-af02-5830cff3c0ee?feedback_type=other)</sup> [![Open in Cursor](https://dosu.dev/dosu-in-cursor.svg)](https://cursor.com/link/prompt?text=Currently%2C%20Dify%20enforces%20a%20one-plugin-per-capability%20policy%3A%20you%20cannot%20combine%20tool%2C%20model%2C%20and%20endpoint%20services%20in%20a%20single%20plugin%2C%20so%20splitting%20them%20into%20separate%20plugins%20is%20required.%20Each%20plugin%20should%20be%20submitted%20individually%20to%20the%20marketplace%E2%80%94each%20folder%20is%20treated%20as%20a%20separate%20plugin%2C%20and%20submissions%20are%20reviewed%20one%20at%20a%20time.%20There%20is%20no%20official%20documentation%20or%20working%20example%20for%20bundling%20multiple%20plugins%20%28such%20as%20with%20a%20%60.difybndl%60%20file%29%20or%20publishing%20a%20bundle%20to%20the%20marketplace%2C%20even%20though%20the%20UI%20and%20backend%20have%20some%20bundle-related%20components%20and%20a%20%22Bundle%22%20category%20is%20visible%20in%20the%20interface.%20However%2C%20the%20workflow%20for%20submitting%20or%20publishing%20plugin%20bundles%20is%20not%20yet%20defined%20or%20supported%20in%20practice.%20For%20now%2C%20the%20best%20approach%20is%20to%20submit%20each%20capability%20as%20its%20own%20plugin%20and%20reference%20their%20relationship%20in%20your%20documentation%20or%20metadata%20if%20needed.%20This%20matches%20current%20repository%20and%20marketplace%20practices%20and%20aligns%20with%20recent%20guidance%20from%20maintainers%20and%20contributors.%20%20%0A%5BSource%201%5D%28https%3A//github.com/langgenius/dify-official-plugins/pull/2097%29%20%7C%20%5BSource%202%5D%28https%3A//github.com/langgenius/dify-official-plugins/issues/1542%29%20%7C%20%5BSource%203%5D%28https%3A//github.com/langgenius/dify/blob/f08d847c20766960ef836b18a0db4c9bc41fe463/api/core/plugin/entities/bundle.py%23L8-L31%29)&nbsp;[![Join Discord](https://img.shields.io/badge/join-5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share on X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/langgenius/dify-official-plugins/issues/2334)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-official-plugins#902