koishi

Cross-platform chatbot framework made with love

MIT License

Downloads
32.9K
Stars
4.4K
Committers
49

Bot releases are visible (Hide)

koishi - Koishi 1.8.0

Published by shigma over 4 years ago

Features

  • core: 指令默认情况下将隐藏 -h, --help 选项 (a84621d61d9cbb8bb1d4322f0662c5eea91866cb)
  • core: 优化了类型标注 (24467231ae7313f680dc90aa6c2df02f7d938bd4)
  • core: 优化了调用记录检查 (5f8d8e12338d488d26cb06ff8de599878d85353f)
  • core: 默认情况下将使用 debug 处理 logger 输出 (ea8c3d120ba99f47b092a78cc743dec7ff6bcfa6)
  • cli: 优化了启动时的报错提示 (b51060089d75fdbce3686babdf255527f2a25b0b)
  • plugin-common: 增加了 authorize 插件的 logger 提示 (2f36aca21467a4ec5042fa532e90d7d2c2250928, fb7dbe6553271713bc1c3dba7bd7ae5a5212e9fb)

Bug Fixes

  • core: 修复了 CommandConfig.disable 选项的无效行为 (1cffdab6929edb4cb190e854442a2bf9cc83b34a)
  • core: 修复了 disable 指令仍可以通过错误纠正机制被调用的问题 (95cf8787adeda7ba91b09e93da361178666274d4)
  • core: 修复了无法处理 heartbeat 事件的问题 (36a460236acf114d760a05fbc9c2102718b17a86)
  • cli: 修复了错误的路径解析 (06d59b83a49b4d299a0422139102c23e64dca80e)
  • plugin-common: 选项的显示将不考虑隐藏选项 (6b1530a58594b1fd5b95da8f2c319e7eb0e75782)
  • plugin-common: 修复了 authorization 的错误行为 (76663bcd82c1472cf4a4c3353c4614550eeb7be4)

Dependencies

  • cli: cac 版本从 6.5.5 更新至 6.5.6
  • 所有官方数据库支持都将 koishi-core 改为 peerDependency
koishi - Koishi 1.7.0

Published by shigma over 4 years ago

Features

  • cli: 输出日志时会显示 scope (a245fa325b80a8925c06c751bc37cf715289e814)
  • core: before-user, before-group, attach 三个事件将在对应的上下文触发 (658944a5fcce5fcabae0731b4c62a97401b4ab3e)
  • plugin-common: registerUserInfo() 支持传入第三个参数 (7119a584e1d3ef81b6e3dabc07c3ca45343dee95)
  • plugin-common: 新增 contextify --member 选项 (7eb6d206b0e216f2198fd582e18fa917fb6244ed)
  • plugin-nlp: 使用 meta.$parsed.message 取代 meta.message (5d4d7fe0c6a0c20c81114f215ce2fa44730f59b9)
  • plugin-nlp: cmd.intend() 将返回 this 以便链式调用 (8036e02c93098242119ee0d7c5fbfeac499957f2)

Bug Fixes

  • core: 快捷调用的 message 将自动去除头部空格 (abb749850f3d883105dec45f127ab8008948cc04), (f72ba21de418a7b71efc92821eb4aecbd42b066b)
  • test-utils: 使用 '' 作为默认快照名,修复了与 jest 25 的兼容性的问题 (154a409f08e83af971822a51fd6403495e27c21f)

Test Utilities 3.0

Breaking Changes

  • 将 jest 版本更新到 25.x
  • 调整了部分 Session API 的语法 (8799a2dac2ce61b76b10fdfe245ea2f05c9947a8) (cf175f7b5863a192772d06ae0baccd251018fbe6)
  • 调整了 app.receiveGroupRequest() 的语法 (16fd63e95a82c9cd3f088c4376d0aa24043db21d)

Features

  • Mocked Utilities API
koishi - Koishi 1.6.0

Published by shigma over 4 years ago

Features

  • core: 新增 ctx.onceMiddleware() (7a1dd9426bee8fc3440a7226aa93199482063dc4)
  • core: 新增 getUsage()updateUsage() 方法 (15271593097cf80b9b94de5f9968f2124b7637a8)
  • core: meta.$stripped 更改为 meta.$parsed (c3b0b5094a6776050fcabf4f0d51b7231225f6de)
  • core: 新增 sender.sendMsg()sender.sendMsgAsync() 方法 (1c3cfeee3d3231d4904fadbc0d27da30a3d8f1d7)
  • cli: optimize ecosystem module resolution (ed505b1c9413121f26dfb42a692706124a3e71c4)
  • test-utils: 新增一些基于 app.receive() 的方法 (a0fd83101cc601049ec15dfc2ced826110fb1909)
  • test-utils: 新增实验性的 Random Mock API (533f4defc2ddcfb3064ca9a5b4af88eb42a1ac7c)

Bug Fixes

  • core: app.users 等特殊上下文现在将按需生成了 (3ae7e7044d06daa2ea76e24af15358c5764b9887)
  • core: 异步发送消息现在会触发 before-send 事件了 (1c3cfeee3d3231d4904fadbc0d27da30a3d8f1d7)

Dependencies

  • core, test-utils: axios 版本从 0.19.1 更新到 0.19.2
  • database-mysql: mysql 版本从 2.17.1 更新到 2.18.0
koishi - Koishi 1.5.0

Published by shigma almost 5 years ago

Features

  • core: 新增 after-middleware 事件 (bb678943188392705eddad03525eed993d147604)
  • core: 内置运行时警告改为使用 logger().warn() 输出 (d33781c29166da397d051c6813c1573dc91a934c)
  • cli: 优化了输出的提示 (59052bb0a6e7225cde00120cd6b240f53bb6233f)
  • cli: 优化了错误处理函数 (34ebc6ee84c909eaa6a5e636eaa442d7af88ff64)
  • cli: 支持在配置文件中使用对象/函数式的插件 (37e4bdda24eec669758f301ef3d72e9ff69fa503)

Experimental Features

  • 新增了 meta.$stripped 属性 (e5cfad609a678c5e4941b9d8cf45e5700b46ce10)

Dependencies

  • cli: cac 版本从 6.5.4 更新至 6.5.5 (dfd279ceb95c2da1fe44e6fa7fb73bac36085417)

Common Plugin 2.0.0

Breaking Changes

  • 重构了传入的选项列表 (c5c4283b14e7fbbb057655373972428d6d84fe67)
  • 移除了 repeater 和 request-handler 插件的默认行为 (117b12efe3a9087a5cf1ca88d10cd4f2cc681f48)

Features

  • 新增了 exec 指令 (bf36c713cb7178d10a5c45db4963debfceeadd4f)
  • authorize 指令优化与修复 (e67243deb309232c26d1e6feec05a680df31f5dc, 45f83ee069be04f71610080996ce79b8b4a54b4d)
  • contextify 指令优化与修复 (7769a5097b4b2003866010a8bdae6b74a27a90bf)
  • echo 指令优化与修复 (fd2973fc0d98097823bf16e50668e468c2428901)
  • info 指令优化与修复 (e84d7005282319e3bd930ee8f807895923a218f8)

Test Utilities 2.0.0

Breaking Changes

  • mockedApp.receive() 改为同步函数 (dd851f84888478040d8092807adb4f4bc486a529)
  • MemoryDatabase 成为独立的包 koishi-database-memory (e06b98ee0d71cf8bf806f196e1c830f418550154)

Features

  • MockedServer API (2c5ab8fb864ca247bfa8cb37fd79e32f5d24b6fa)
  • MemoryDatabase API (2c94ac6f827929c95b79bfcd8e085e1636b62732)

Bug Fixes

  • 修复了调用 sender.sendPrivateMsgAsync() 时没有自动去除 _async 后缀的问题 (8c3f3cc7e264e35c505b3aa80906572c493bbf61)

Dependencies

  • get-port 版本从 5.1.0 更新至 5.1.1 (dfd279ceb95c2da1fe44e6fa7fb73bac36085417)
koishi - Koishi 1.4.0

Published by shigma almost 5 years ago

Features

  • cli: 支持 ts 作为配置文件后缀名 (f551d44e59351c60d12255b641407aa201505c8d)
  • cli: koishi init 命令将自动创建文件所在的目录 (644c6b36274a8fdc3c3b76c0e92bb266ca0302e3)
  • cli: 内置插件将直接被 koishi 导出 (e9c3b9cb68d2b2db48cf7cc399f041baf162ef94)
  • core: 新增 app.status 属性表示应用状态 (75c64b3db2b8527dce0d5a19be6c84aa6f620e27)
  • core: send 事件的元信息对象将带有 userId 属性 (edee314c6e13ba8488e21c4912b8b02625f8a41d)
  • 移除已经废弃的 user.name 属性和 rank, callme, likeme 指令 (96740791da106eec7c828e941368134ee00413fd, 87be3c1d5219c22f2390b214419bcf0a8e71d5ab, 20ebbae66e975f73c5e00edc8eb538df62cc5286, ce4feb16f9aa692da62bc4f6c102815db9d74a37, 9293540991161d466d5b5090d6f6d4d6cda6662b)

Bug Fixes

  • cli: 修复了 PluginConfig 的类型 (b3501a607ea4d450be388896b2c6e40c5fa2350b)
  • core: getTargetId 函数将检测输入的类型 (00ab2cec270d4fa439c50a5672c1dd2f5344e443)
koishi - Koishi 1.3.1

Published by shigma almost 5 years ago

Features

  • cli: 支持向子进程传入 execArgv (3bb9f5afa1b89c2718d24ea5ddace2f50dc9b193)
  • plugin-common: 支持 requestHandler 传入字符串 (936c871919f2ffbe2d421da2c92ae3c10139e87e)
  • plugin-common: 优化了 admin 指令的调用,增加了一些操作方式 (0cc58cffa6ed750124963f65b8c1cfaf82da752f)
  • test-utils: mockedApp 内置 logger 将输出到 debug (036584297359bf63a4e7b0458502bb89f3c2533f)
  • test-utils: 新增 mockedApp.receiveMessage() 等方法 (3fc34bdb4b486d19f18419f7621957b5648cb47a)

Bug Fixes

  • cli: 修复了错误的输出等级设置 (ab967c4c465e957106ea1b3c1a4f5f8faf8c70d4, 38cc1e14d681239746dd84f72e4868241521203b)
  • core: 修复了同时使用长参数和 oneArg 选项时的错误行为 (71a0174835170304883dbfb146b17edc38fcd78b, 1932845ff3962bce16e2454fb40ff64b6c0b9725)
  • database-sqlite: 修复了 sqlite 注入类型错误 (f592c6cca9143f87e4e311262cd01ea5b0825a3e)
  • plugin-common: 为 help 执行添加了 userFields (c7650cbc4df2772ce609b33bc8f9a1025efb4cef)
koishi - Koishi 1.3.0

Published by shigma almost 5 years ago

Features

  • core: 支持了 ctx.logger() 方法和 logger 事件 (5e5e93e0f8ed112ddbdf14f2ec1205c466b3ab03, 1e0848e05d4f136dee6689d03657c7bbde4660c6, fa5c46e13ed5f179aca0624e20e3894359c4be2b)
  • cli: 支持通过 logLevel, logFilter 等控制输出等级 (befca0fd39bde6fddb2319d13fa2f3f320335810)
  • cli: 处理 unhandledRejection 事件并输出 (8f6d6fababd9ee4534eff17853182f2b8a80d6d8)
  • cli: 支持 yaml/yml 作为配置文件类型 (27645a4803af77257f544bbd709c62f2dc2cd11d)
  • plugin-common: repeater 插件的部分选项支持 message 参数 (e67b81749b731574f2fdbfd36bb3a150165d8c9b)
  • plugin-schedule: 正式发布 koishi-plugin-schedule 1.0.0 版本,并作为 koishi 的内置插件 (27645a4803af77257f544bbd709c62f2dc2cd11d)

Bug Fixes

  • plugin-common: 修复了 authorize 插件无法使用的问题 (5a777a964b6fb2906ca85e1c833d0fd277d71578)
  • database-mysql: 修复了 db.getGroup() 报错的问题 (#16) (3ce0c70b771e74fc93dd41cc0ec08a0952a42174)
  • test-utils: 修复了 mockedApp.shouldHaveLastRequests() 的类型批注 (a3c8494c62fc5089493e931a8b1186ad55f0bab4)

Dependencies

  • cli: cac 版本从 6.5.3 更新至 6.5.4 (ed9d61b)
koishi - Koishi 1.2.0

Published by shigma almost 5 years ago

Features

  • core: 移除了 meta.$path 属性
  • core: 优化了一些类型标注 (c8f01f8cc9afde1b20bd202f914d7e3c8b523be0, f8e1c1b686e75b0ccc4e5fce85b53563b1b22404)
  • plugin-common: respondent 插件支持简繁体模糊匹配 (cb5838833edda734570b24d3d350b7dcc128df96)

Bug Fixes

  • core: server.listen() 失败后将自动调用 server.close() (ea5c2c933f1fb0a6f4c52a8dccab5ec3e7e63b6d)
  • core: 允许 injectMethods()registerDatabase() 之前调用 (9540892c34007f36cde147ef64bae5fd27773d0f)
  • core: 修复了 showSuggestions 在非私聊上下文出错的问题 (8253522eba27099520838857353ed2933bef028b)
  • plugin-common: 修复了 requestHandler 插件在无数据库环境下报错的问题 (cb5838833edda734570b24d3d350b7dcc128df96)
  • plugin-common: 修复了 welcome 插件在无数据库环境下报错的问题 (ea5c2c933f1fb0a6f4c52a8dccab5ec3e7e63b6d)

Dependencies

  • core: axios 版本从 0.19.0 更新至 0.19.1 (01bebe0a234601b85197c1cd1200bf6c2e441863)

Test Utilities 1.1.0

Features

  • testDatabase() 第二个参数改为必选
  • 新增 createHttpServer()createWsServer(),用于模拟 CQHTTP 服务器
  • 新增类 MemoryDatabase,用于在内存中模拟数据库
  • 新增类 MockedApp,用于在无网络环境下测试

Dependencies

  • 将 jest 和 koishi-core 设为同版本依赖
  • 新增了 get-port 依赖,移除了 express 依赖
  • axios 版本从 0.19.0 更新至 0.19.1
koishi - Koishi 1.1.1

Published by shigma almost 5 years ago

Features

  • core: 支持数组结构的消息格式 (766ba8efcd724717d89608a692c68a00059aa1cd)
  • utils: 新增 CQCode.stringifyAll()CQCode.parseAll() (764b816b50a84c09e577cb6b315ebdf584156747)

Bug Fixes

  • core:cmd.execute() 中等待错误提示的发送 (3783f42bc9df8afb0d83dc187cd756b89eb5ef0a)
koishi - Koishi 1.1.0

Published by shigma almost 5 years ago

Features

  • core: ready 事件总是在 connect 事件之后触发 (21197dfef3092cd0c5ea3c38922ff32ecefb234c)
  • core: cmd.option() 允许略去 description 参数 (1c3b203de92944ef04f20ccdc2dbda300ca08fdf)
  • core: 新增 app.executeCommandLine() 用于直接运行指令 (#9) (bcd3ed6a515f33cb6e440cff5bb0d12b719a1e43)

Bug Fixes

  • core: ctx.command() 未传入 description 参数时,不会覆盖已有的值 (f1c360547370c7161754163d881a5df69a4c5fa8)
  • utils: 优化了 CQCode.unescape() 中的替换顺序 (1c8e33cf939af6159c956d72447615adf319ff3e)
  • plugin-common: help 指令将不会将指令名显示为别名 (e22653b227cc8e373b2df47a0c908b1c0d9a6cbc)

Dependencies

  • core: ws 版本从 7.2.0 更新至 7.2.1 (25a635954802be9caf0b48a4a440908503e42ca5)
  • database-level: 将 @types/leveldown, @types/levelup 加入依赖 (3e53e9ef037002500fbaa16708579f1cafc7bb16)
koishi - Koishi 1.0.1

Published by shigma almost 5 years ago

Bug Fixes

  • cli: koishi init 指令被 SIGINT 打断输入时自动取消文件写入 (1c59df5bdd9db1b5b67e4ee376826793f34747ab)
  • utils: observe 传入的 update 函数应该覆盖过去的版本 (7f9756cf0996440c743464dd359cffc91ae6442e, 126cb03cc0576cac8e4916437fbe5fd524d265de)
koishi - Koishi 1.0.0

Published by shigma almost 5 years ago

1.0.0 版本正式发布。

Package Rankings
Top 1.42% on Npmjs.org
Top 25.54% on Repo1.maven.org
Badges
Extracted from project README
Codecov downloads npm GitHub FOSSA Status