模块
模块把 CRM、支付、飞书、企微等业务能力接入应用。
模块是由 Bundle 交付到 Runtime 的业务能力单元。Bundle 安装并物化模块后,应用、智能体、 技能和后端服务都可以使用模块提供的能力,例如查询客户、创建订单、发送消息或调用支付。
例如,用户安装的是飞书 Bundle,再配置和调用其中的消息、文档等 Module 能力。Bundle 是市场、 安装和升级对象;Module 是 Bundle 内部资源,可以创建不可变版本,但没有独立市场发布或安装入口。
模块类型
常见模块分为普通业务模块、HTTP 代理模块和渠道模块。普通业务模块随平台运行时部署; HTTP 代理模块把已有接口包装成模块方法;渠道模块负责微信、飞书、企微、钉钉等入口 接入。需要自动管理外部安装态资源时,由包含这些模块的 Bundle 配置 Bundle 管理器。
通过 Bundle 安装模块
模块是 Bundle 的内部资源,不作为独立市场商品。作者自定义资源 key,完整身份为
environmentKey/bundleId/MODULE/resourceKey。资源版本同时指定精确 semanticVersion;
版本升级不改变该资源的稳定身份。同名资源可以存在于不同 Bundle 中。
网关调用使用 Runtime 服务目录返回的 businessId。资源 key 不应自行拼接成网关入口;已有 businessId 和 URL 保留。Module Owner 的内部行 ID、版本行 ID 都不属于 Bundle 资源引用。
配置属性
模块属性用于保存 token、租户 ID、回调地址、默认用户域等接入信息。生产配置请填写在模块属性中,不要写在页面代码或公开文案里。
调用能力
模块方法可以被智能体、技能、后端服务或页面请求调用。调用前先确认包含该模块的 Bundle 已安装并在目标 Runtime 物化成功,属性已填写,当前账号拥有访问权限。
调用入口按调用方区分:CLI 使用 Runtime 服务调用命令;平台应用使用标准 SDK 与 App Gateway; 模块后端使用 Runtime 交付的属性访问 URL。接口路径和参数包装不同,不能混用。 完整协议、发现步骤和机器可读示例见模块方法调用入口。
先安装 Bundle,再调用
应用只能调用当前工作区由 Bundle 物化并配置完成的模块能力。安装或升级 Bundle、修改属性后, 请发起一次真实调用确认结果。不要寻找独立模块安装入口。
创建模块
需要把新的业务能力做成可复用模块时,请先阅读 创建模块。创建模块要同时定义属性、用户域、方法、生命周期和发布验证方式。
使用运行时身份
模块应从运行时调用上下文读取当前工作区和用户,不得把页面、请求参数或请求体里的 userId 当作当前操作者,也不应自行构造平台内部身份凭据。完整原则见 创建模块:使用运行时身份。