Skip to main content
本文档由 AI 自动翻译。如有任何不准确之处,请参考 英文原版。
在 langgenius/dify-plugins 中创建 Pull Request,提交插件供 Marketplace 审核。

准备条件

  • 已在当前版本的 Dify Community Edition 或 Dify Cloud 中测试通过的插件项目。
  • 用于打包的 Dify 插件 CLI。
  • 用于本地验证的 Python 3 和 yq。
  • 供审核者与用户检查的公开源码仓库。
Marketplace 接收打包后的 .difypkg,而非源码目录。审核者仍会查看元数据和 PR 中声明的源码仓库,以了解无法仅凭软件包确认的行为。

准备软件包

只包含插件运行所需的文件,例如 manifest.yaml、Provider 或工具定义、源码、依赖、README、隐私政策和资源文件。不要打包 .git/、虚拟环境、缓存、日志、.DS_Store、本地设置、IDE 文件或测试产物。切勿包含 .env、访问令牌、私钥、云凭据或其他密钥。

说明隐私与网络访问

PRIVACY.md 或托管的隐私政策必须说明插件会收集、存储、记录哪些用户数据,以及会向哪些第三方发送数据。插件不收集用户数据时,也应明确说明。 插件访问外部服务时,可在 manifest.yaml 中声明预期域名:
静态分析无法发现运行时拼接的所有 URL,也无法完全分析供应商 SDK 中隐藏的请求。声明域名后,即使扫描器无法从源码推断,也能明确展示这些访问目标。

确定风险等级

选择与插件匹配的最高风险等级。填写 Marketplace PR 模板时,只能选择 1 个等级。
多个等级都适用时,选择更高等级。降低标签不会缩小审核范围,只会造成证据不一致并拖慢审核。
对于中风险和高风险插件,应说明安全边界:如何约束输入、数据发送到哪里、使用哪些凭据、采用什么超时设置,以及错误处理如何避免泄露密钥。

本地构建与验证

1

打包插件

在插件项目上一级目录运行:
命令会生成 .difypkg。继续前,检查文件名和大小。
2

克隆 Marketplace Toolkit

3

验证软件包

如需核对敏感能力扫描结果与计划提交的 PR 声明,可将 PR 正文保存为文件,再添加 --pr-body-file /path/to/pr-body.md。
4

处理报告

打开 validation-report/summary.md,再检查生成的 *.errors.txt 和 *.warnings.txt。退出码 0 表示没有发现软件包级阻断错误。退出码 1 表示存在阻断项或环境错误,必须先解决。警告不会使验证失败,但审核者可能要求补充说明。
本地验证器会检查安全解压、软件包内容与大小、密钥模式、二进制文件、manifest 与 README 元数据、依赖策略、Python 编译与安全模式、出站域名、依赖漏洞、金融活动信号,以及可选的敏感能力声明。
只有漏洞查询需要联网。必要时可添加 --offline;报告会列出依赖,但不会声称这些依赖不存在漏洞。

选择提交类型

在作者命名空间下创建软件包目录:
软件包元数据、源码仓库、联系信息、README、隐私政策与风险声明必须指向同一插件。

创建 PR

1

Fork 并同步仓库

Fork langgenius/dify-plugins,然后克隆 fork,并使 main 与上游保持同步。
2

创建专用分支

确认分支只变更 1 个 .difypkg:
3

提交并推送

4

创建 Pull Request

从 fork 向 langgenius/dify-plugins:main 创建 PR。只有软件包与说明都已可供自动和人工审核时,才将 PR 标记为 Ready for review。
每个 PR 只提交 1 个 .difypkg。同时提交多个插件或版本时,CI 无法确定唯一的软件包路径,会直接阻断提交。

填写提交模板

当前模板是审核约定的一部分。不要删除字段,也不要用简短的自由格式说明替代模板。
填写作者、插件名称、版本、公开源码仓库和有人维护的联系渠道。这些信息必须与 manifest.yaml 和软件包文档一致。
选择 New plugin 或 Version update,再说明插件用途或本版本的变化。更新时应提供可直接作为发布说明的细节,包括迁移事项和破坏性变更。
在 Low risk、Medium risk 和 High risk 中只选 1 项。仓库会添加相应的 risk:* 标签。未选或多选都会产生 risk: missing 标签和机器人评论。
逐项确认软件包整洁度、测试、README 质量、隐私范围和英文主文档。存在限制时,应在 Reviewer notes 中说明,而不是直接勾选。
列出命令或代码执行、SQL、SSH/SFTP、浏览器自动化、文件操作、任意 URL 获取、代理和敏感数据处理。均不适用时再填写 None。
粘贴验证命令与结果。补充已知限制、软件包或二进制例外、迁移事项,以及审核者判断警告时需要的背景。

提供插件审核依据

跟进 PR 检查与审核

创建 PR、推送 commit 或将草稿标记为 Ready for review 都会启动自动检查。根据结果判断是否需要处理。 审核通过并合并后,仓库会再次验证软件包,并将其上传到正式 Marketplace。你无需自行启动 CI,也无需上传已批准的软件包。

在创作者中心查看插件表现和反馈

插件出现在 Marketplace 后,可在 创作者中心 的 插件 页面查看其表现数据。在 消息 中逐条查看评分、点赞和反馈消息。

查看已发布插件

切换至个人账户后,关联用于发布插件的 GitHub 账号。如果关联了多个账号,选择要查看其插件的账号。 每张插件卡都会显示下载量、总体评分、评分数量和点赞数。

与团队共同查看插件表现和反馈

选择团队使用的组织。该组织中列出的插件对所有组织成员可见。 如果要为插件创建新组织,请先在插件的 Marketplace 详情页查找插件 ID,再将 / 前的部分填入 唯一标识。例如,插件 ID 为 team-name/plugin-name 时,输入 team-name。
Marketplace 详情页中的插件 ID

Marketplace 详情页中的插件 ID

该组织被确认为发布者后,以其名义发布的插件会显示在 插件 页面。邀请团队成员后,他们无需关联自己的 GitHub 账号,也能查看相同插件。

认领缺失的组织插件

如果以你的组织名义发布的插件没有显示在该组织的 插件 页面,打开 认领插件,申请查看该插件数据和反馈的权限。
  1. 切换至个人账户,选择 认领插件。
  2. 在 Marketplace 详情页复制每个插件的插件 ID,并将其与首次发布该插件的 PR 配对。
  3. 确认联系邮箱,并说明你在插件维护中的职责。如果 PR 由其他 GitHub 账号创建,说明原因。
  4. 选择 提交认领。
在 认领记录 中跟踪请求。审核通过后,你可以查看该发布者的所有插件。如果认领被拒绝,查看原因并选择 新建认领,更新证明材料后重新提交。

相关资源

PR 模板

提交前查看最新模板;仓库要求可能持续演进。

插件审核指南

了解维护者如何检查文档、依赖、隐私和敏感能力。
Last modified on November 6, 2026