Skip to content

v4.15 版本介绍 ​

Satori v3 ​

v4.15 版本最重要的特性就是将 Satori 更新到了 v3 版本。新版本对现有 API 进行了一些重构,并从中总结出了一个通用的跨平台聊天协议,名为 Satori Protocol。你可以在 Satori 官网 上查看完整的协议文档。与此同时,我们也发布了一些与适配器与网络相关的插件:

这些插件同步发布在 Satori 和 Koishi 侧。为此,我们发布了 upstream 仓库,用于同步上游生态中的插件。未来我们将提供让 Koishi 能够直接加载上游插件的能力,敬请期待。

此外,Satori v3 也引入了更多原生交互能力,包括按钮元素、交互事件等。相关的能力已经在全部支持按钮的平台 (KOOK, Discord, LINE, QQ, Telegram, WhatsApp) 上实现。

Cordis v3 ​

另一个重要程度不亚于 Satori v3 的更新则是 Cordis v3。新版本基于 Proxy 重新实现了整套的服务 API,相比旧版本具有更强的可追溯性、可靠性和扩展性。同时,新版本的所有 API 都是无副作用的,这意味着困扰用户的多例问题将大幅减少。

由于这些优化处于底层,对于开发者比较难以察觉,因此这里举出一个直接的应用。在插件内部使用 ctx.logger() 发送日志时,将基于上下文进行追踪,在控制台的插件详情页面中将展示该插件产生的日志。同时,现有的日志界面也支持了对日志进行跳转,以便于开发者快速定位问题。

数据库更新 ​

在这个版本中,我们还对 ORM 能力进行了大幅优化:

  • 修复了 join, groupBy, project 在若干边界情况下的问题
  • 支持了 $.array() 和 $.object() 等用于操作结构化数据的 API
  • 对数据库进行 set, upsert, remove 操作时将返回修改条目相关信息了
  • 修复了 SQL 对 JSON 中嵌套属性访问异常的问题
  • 优化了 SQLite 的访问性能,解决了数据库体积过大时无法使用的问题
  • 新增了 PostgreSQL 数据库支持

控制台更新 ​

这个版本也优化了控制台的使用体验:

  • 使用统一的菜单 API 显示布局菜单和上下文菜单,为多个插件提供了更多的菜单项
  • 支持了快捷键绑定 (例如,在插件配置界面键入 ⌘S 将会保存配置)
  • config 插件支持了插件和插件组在侧边栏的重命名
  • config 插件支持在启用、重载插件时将对配置项进行检查
  • explorer 插件支持了符号链接的解析与显示
  • 优化了可访问性,修复了若干无法显示某些文本的问题

QQ 适配器 ​

随着腾讯开放平台的的推出,开发者现在可以直接接入官方机器人 API,而无需使用第三方登录方案。因此,我们发布了 QQ 适配器 (能够同时支持 QQ 群和 QQ 频道机器人的使用),同时废弃了过时的 QQGuild 适配器。此外 OneBot 适配器也转移到社区维护。