Skip to content

[epic] 统一 Plugin 中心 (Dify 式) — 源库/模板/工具收进单一入口 #25

Description

@2233admin

背景 — 方向纠偏 前期 issue #22 (RSS 源库) / #23 (模板) 方向写错了: 提议把它们各拆成平行独立分组。走查后确认这是错的。 正确方向 (2026-07-18 用户拍板, 参照 Dify 插件系统): RSS 源库、预制模板这些"可安装的库"不各拆各的, 收进一个统一 Plugin 中心 —— 单独一个 plugin 文件夹/入口, 里面整合各类库, 就是 Dify 插件市场的形态。 ## 参照 Dify 插件模型 Dify 插件 = 统一市场 (Marketplace) 一个入口, 内部按类型分子目录: | Dify 类型 | opencli-admin 对应 | |---|---| | Datasources (feed external content) | RSS 源库 / provider 源库 (channel_type 目录) | | Tools (capabilities for agents/workflows) | 工具节点 (JoyAI-VL, OKX, opencli...) | | Agent Strategies | Agent 插件 | | Triggers | webhook / schedule 触发器 | | Extensions | 通知渠道等 | | (应用模板 / Explore) | 预制工作流模板 | 关键: 一个 /plugins 中心, 子类型 tab 切换; 每个子类型回答"有什么可装"。用户在中心里浏览/安装, 安装后的实例才回到各业务页 (数据源/工作流) 管理。 ## 本 epic 收口 - #22 RSS 源库 → 并入本中心「源库 / Datasource」子类型, 单独成分组 - #23 预制模板 → 并入本中心「模板」子类型, 在项目页内嵌推荐 - #24 任务通知不进插件中心 (通知是运行时信息流, 非可安装目录), 保持独立通知中心。方向不变 ## 目标形态 1. frontend/app/(app)/plugins/ 统一插件中心, 子类型 tab: 源库 / 模板 / 工具 / Agent / 触发器 / 扩展 2. sources 页移除「导入 RSS 源库」按钮 — 源库归中心, sources 页只管已接入的数据源实例 3. studio/templates 内容归拢进中心「模板」子类型; studio 内只留「从中心引用模板」轻入口 4. 侧边栏一个「插件中心」入口, 取代散落的库/模板入口 5. (后端, 后续) tool_capabilities / channel registry / 模板目录统一成插件 manifest 声明式加载 — 以 ADR-0014/0015/0019 为准 ## 判定铁律 "有什么可装" → 插件中心; "我装了什么/跑得怎样" → 业务实例页; "系统在告诉我什么" → 通知中心。 ## 收敛自旧 TODO 的运行时验收项 - [ ] 首个需要环境级 readiness 的能力接入时,实际执行 capability probe;仅声明 probe 名称不能标记为可运行。 - [ ] 首个生产 external Tool Capability 接入时增加受治理、可观测的 executor;在此之前保持 blocked,不提供推测性执行器。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions