AiHummer
中文
登录帐户
v1.0.x
{ }Swagger

发布插件

v1.0.x · 已更新 2026-07-19

使用该构建了一个插件 插件开发工具包?你可以将它发布在 两种方式:

  • 私人(仅限自己) — 侧载到你的实例中。该工件从未 离开它。
  • 社区(面向所有人) — 通过你的发布 个人柜my.aihummer.ru, 应用商店 风格:上传构建版本,填写商店页面,通过审核,然后上架到 每个实例都可以从中安装的已签名社区目录。

类比:安装一个 .vsix 手动(私人)与发布到应用商店(社区)。

[!WARNING] 社区插件目前无法安装——这不是网络故障。 用于签署社区目录的密钥已被吊销;在新 密钥发布之前,签名校验会拒绝这些条目。与此无关的另一点是:第三方代码尚不会以服务 形式在你的服务器上运行——在隔离运行环境就绪之前,只允许那些在自己一侧运行、通过 网络接入的集成。

你会看到什么: 点击「安装」后会出现常见的「正在安装」提示,但插件始终不会 出现在已安装列表中。拒绝原因会写入网关日志——请打开管理面板中的 日志

目前可用的方式:

  • AiHummer 官方目录中的插件——照常安装,它们带有另一把仍然有效的签名;
  • 通过 HTTP 的 MCP 服务器——作为免开发的工具来源接入,代码留在你这边;
  • 基于 OpenAPI 规范的集成——同理,无需安装服务。

侧载你自己的插件可以通过签名校验,但只能以 HTTP 远程 MCP 或 OpenAPI 集成的 形式运行;需要在同一台服务器上以服务方式启动的构建会被拒绝。

私人模式 — 侧加载到您的实例

仅当您需要插件时使用:内部连接器、自定义集成、测试版本。

步骤

  1. 打包并签署捆绑包:
    aihummer plugin package ./my-plugin
    aihummer plugin sign --key author.key --manifest ./my-plugin/manifest.json my-plugin-1.0.0.tar.gz
  2. 以两种方式之一将其上传到实例:
    • 管理员界面 → 插件 → “上传插件” — 拖动捆绑包;或
    • 命令行界面:
      aihummer plugin publish --private --instance https://your-instance \
        --token <admin-token> my-plugin-1.0.0.tar.gz
  3. 在底层这是 POST /v1/admin/modules/upload (多部分, integrations:write): 文物落在 实例二进制大对象存储 (AIHUMMER_BLOB_DIR) 在一个 blob: 参考,并且一个目录行已被注册于 origin = local-private, visibility = private.
  4. 该插件在市场上显示为已标记 私人 并通过 正常路径 — 沙箱化的 systemd 单元 + 健康检查门.

信任:固定密钥与信任存储

私人文物 必须签署当您上传使用未知密钥签名的插件时,管理员界面会提示您 批准作者的关键 进入实例信任存储(单击一次)。一旦批准,每次安装和更新都会验证签名。

  • 来自……的文物 官方 对源进行验证 注册表项已固定 在核心 ——默认被信任,无需额外步骤。
  • 私人 工件根据实例信任存储中的密钥进行验证。
  • 未签名 捆绑被拒绝——除非在用于本地迭代的开发模式下: AIHUMMER_PLUGIN_DEV_UNSIGNED=1.

[!WARNING] AIHUMMER_PLUGIN_DEV_UNSIGNED=1 禁用签名验证,其目的是 仅用于本地开发。切勿在外部可访问的实例上启用它。

社区模式 — 通过个人账户发布

使插件可用于 每个 例如,从你的实例发布它 个人柜my.aihummer.ru就像你将应用发布到应用商店的方式一样。你上传构建版本,填写商店页面,并提交审核;首先会运行自动化的 AI 检查,然后由人工审核人员做最后决定,批准后,工件会被签名并发布到社区目录中。

完整的逐步操作指南在 提交插件简而言之:

  1. 构建与打包 你的插件和SDK (aihummer plugin package) — 该文物是一个 已签署 .tar.gz 携带它的 manifest.json.
  2. 打开 «我的插件» 在柜子里并创建一个提交: 上传 人工制品,填充 存储元数据 (名称和描述在俄文和英文, 版本,图标,截图,类别,可选捐赠链接,更新日志) 和 宣布 功能清单.
  3. 发送以供审核。 自动化的 人工智能审查 检查提交内容是否符合 这 审核政策 (安全性, 清单) 正确性、完整性、内容),然后一个 人工审核员 阅读报告 并作出决定。自动化从不会自主发布。
  4. 经批准 这个人工制品是 已签署 并发布到一个 分开 community-catalog.json 在 CDN 上。每一个已经添加的实例 社区来源看到插件;核心通过它信任它 固定的注册表项 — 无需每个操作员的信任步骤。

[!NOTE] 旧的公开发布流程已经退役;上面的个人中心流程—— “我的插件”——是唯一的社区发布路径。社区插件是 免费;您可以添加可选捐款链接。

[!NOTE] 第一方插件 (爱因斯坦, SIP, Bitrix24, pocket-agent, os-client) 是 不会以这种方式发布——它们在自己的 AiHummer CI 流水线上运行并最终落地在 固定的官方目录。个人柜流适用于 社区 (第三方) 插件。

适度

每个社区提交都会经过一个 自动检查 (完整性、能力清单、签名和安全扫描),然后一个 人工智能风险评估,最后一个 强制人工审核 由AiHummer团队负责。无论是自动化程序还是人工智能都不会自行发布——决定权始终在管理员手中,未经他们批准,任何内容都不会进入目录。后来发现有害或损坏的已发布插件可以被 撤销 并在下一次同步时从目录中删除。

社区目录作为额外来源

社区插件会发布到一个 分开 community-catalog.json 那确实 覆盖策划的第一方目录。实例将其作为额外来源添加到 插件 → 来源 (或 POST /v1/admin/modules/catalog/sources)。参见 安装与更新概览与等级.

插件生命周期(应用商店)

这个市场的运作方式就像真正的应用商店——每个插件都有一个 身份 (一个永久的简短标识 + 作者)下发布 版本.

版本与更新

更新作为一个包发布 新版本 已经发布插件的:相同的标识、它自己的更新日志、它自己的评论和审核。仅 版本可能一次处于审核中 —— 在当前版本得到决定后,你才能提交下一个版本。当新版本发布时,之前的版本会被标记 superseded以及目录 + 每个实例都移动到新的。

定时发布

在版主批准之后, 作者控制发布:立即发布,或安排在特定时间——插件会在指定时刻上线。

取消发布

  • 暂停 — 临时隐藏插件:它会从公共目录和实例中消失 (在下次同步时),但会被保留并且可以 重新发表 随时。
  • 下市 — 永久从市场中移除该插件。

一旦插件被取消发布(暂停或下架),其条目将从中移除 community-catalog.json,并且实例在下次同步时停止显示它。

作者身份

一个插件发布于 你的显示名称 (例如,你的工作室名称)——或者 匿名地公共目录和实例网页界面会显示所选名称或“匿名”;您的真实电子邮件/ID 永远不会被公开。

开发者统计

每个插件都有 汇总统计:下载量、安装量、活跃实例和卸载量,以及每日图表。仅显示汇总数据——不会向开发者暴露每个实例的数据。

发布奖励

为了 每个你第一次发布的插件,您的AiHummer订阅将获得 一个月免费 (每个插件授予一次)。

下一步去哪