github komari-monitor/komari Snapshot-2608022121

pre-release3 hours ago

主要更新内容

  • 新增插件系统:支持通过 ZIP 包安装、启用与卸载插件,插件清单为 komari-plugin.json,可声明版本兼容约束(komari 字段)、权限、配置项和管理页面
  • 插件提供 server 宿主模块:server.route(注册 HTTP 路由)、server.static(托管静态目录)、server.hook(请求/响应钩子)、server.injectHTML(HTML 注入)、server.call(调用系统 RPC)、server.registerRPCserver.getConfigserver.cron(定时任务)
  • 新增插件权限模型:系统 RPC、路由注册、Hook、HTML 注入等能力默认不授予,需管理员批准;安装包会校验路径穿越条目与清单大小上限
  • 默认使用官方插件市场作为插件源,新增 plugin_market_sources 配置项
  • 新增插件数据持久化目录(data/plugin-data),插件更新时数据保留
  • 重构 JavaScript 运行时并模块化内置组件;新增 node:streamnode:cryptochild_processeventsfetchfs 等 Node.js 兼容模块,未支持的接口明确抛错而非静默忽略
  • 新增 crypto 模块:支持哈希/HMAC、AES、ChaCha20-Poly1305、RSA/ECDSA/Ed25519 签名验签、PBKDF2/scrypt 等
  • metricstore 从 database/metricstore 迁移至 internal/metricstore 并拆分为独立组件,移除旧版兼容代码
  • 新增 SendNotification,事件消息的 eventmessageemoji 字段支持任意类型

Bug修复

  • 修复 process.exit(0) 被误判为非正常终止的问题,并改进错误上报
  • 修复插件响应钩子缓冲无上限导致的资源占用问题,并支持安全重装插件
  • 修复插件 Hook 匹配过滤,增加按插件的响应体大小上限
  • 修复已注册 RPC 方法无法通过 rpc.help 发现的问题
  • 修复存在响应钩子时流式响应(如 MJPEG 推流)被缓冲吞掉、客户端收不到数据的问题

其他

  • 移除废弃的数据库函数:GetAllMessageSenderConfigsSaveLoadNotificationGetEnabledTrafficReportByTypeGetAllOidcConfigs
  • 数据库迁移新增 PluginConfiguration
  • 启动时自动创建 data/plugindata/plugin-data 目录
  • 依赖调整:移除 golang.org/x/image,新增 github.com/dop251/base64dec

Commits

Full Changelog: 1.3.2...Snapshot-2608022121

Don't miss a new komari release

NewReleases is sending notifications on new releases.