Skip to content

Release Notes: v4.2

指令系统优化

Git 风格的指令调用

Koishi 将子指令分为两类:层级式派生式。前者从形式上将指令组织起来方便查看和管理,而后者则从行为上限制了指定的调用方式。说白了层级式子指令 foo/bar 仍然可以使用 bar 进行调用,而派生式子指令 foo.bar 则必须完整写全整个指令路径。前者从形式上将指令组织起来方便查看和管理,而后者则从行为上限制了指定的调用方式。说白了层级式子指令 foo/bar 仍然可以使用 bar 进行调用,而派生式子指令 foo.bar 则必须完整写全整个指令路径。

从这个版本起我们内置支持了 Git 风格的指令调用,即当父指令 foo 没有实现时,foo bar 将自动视为 foo.bar 的调用,其参数和选项也会被保留。

@koishijs/plugin-forward

作为官方的第一个实例,最新版本的 @koishijs/plugin-forward 提供了在运行时通过指令查看、添加、删除转发规则的功能:

js
forward add #123                // 添加目标频道
forward list                    // 查看全部目标频道
fwd clear                       // 移除全部目标频道
fwd rm #123                     // 移除特定目标频道

无论是父指令还是子指令,我们都支持使用别名书写。无论是父指令还是子指令,我们都支持使用别名书写。在上面的例子里,fwd rmforward remove 的效果是完全一致的。

控制台优化

我们引入了全新的客户端 API,以实现控制台插件在客户端的可插拔性。这些改动也让我们得以提供全面的控制台体验。

更多的控制台插件

在这个版本中我们优化了控制台系统,并将部分功能单独发布为新的插件。它们包括:它们包括:

@koishijs/plugin-manager

@koishijs/plugin-manager 作为新人可能接触到的第一个插件,我们也大幅优化了它的能力,包括:

  • 优化了暗色主题的配色方案
  • 表单支持了更多类型的 Schemastery 类型,基本完成了对常见表单类型的覆盖
  • 重构了插件市场的界面,使用卡片进行展示,并辅以搜索和标签功能
  • 新增了依赖管理界面,允许批量安装 / 更新 / 删除依赖
  • 新增了机器人配置页面,支持了登录 / 下线 / 移除等操作