Yuki-QQbot 3.4.1
Yuki-QQbot 3.4.1 发布说明
3.4.1 引入首个完整的后台通知插件 GitHub Monitor,并将 Plugin API 从 1.0 扩展到 1.1。
本版本新增非破坏性数据库迁移 0028,用于持久通知 Outbox、后台目标授权、媒体制品与受控
Agent 点评任务。现有聊天、记忆、关系、自动化和插件数据均会保留。
GitHub Monitor
- 可同时监控多个公开或私有 GitHub 仓库,并独立投递到多个 QQ 群或私聊。
- 支持 Push、PR、Issue、Comment、Review、Release、Discussion 等常见事件过滤。
- 首次同步默认只建立基线;稳定事件键、仓库 cursor 与条件请求避免重复推送。
- Push 事件通过 Compare API 补充提交、文件和增删行统计,并生成本地暗色 PNG 卡片。
- 中文摘要、持久 Outbox、失败退避、Rate Limit 感知和可选 Yuki 自然点评形成完整通知链路。
- 提供
/github超级管理员直达命令,用于添加目标、暂停、恢复、同步、测试和诊断。
完整配置与命令见
plugins/github-monitor/README.md。
Plugin API 1.1
- 新增
notification.publish与notification.agent,由 Host 负责目标授权、幂等入库和受控
主会话点评。 - 新增
media.artifact.create,插件可以创建有大小、类型和有效期边界的本地媒体制品。 - 新增
background.worker,后台服务使用统一生命周期、并发限制和失败重启策略。 - Host HTTP Facade 支持声明式 Secret credential 注入;插件无需读取或拼接真实 Token。
- 插件配置 JSON 序列化支持 Pydantic Model、
set与frozenset,修复 GitHub 仓库添加命令的
TypeError。 - 插件启用失败不再错误回复“已启用”,Planner 外部事件上下文也采用有界可信包络。
GitHub 卡片与中文字体
- 参考 GitHub 暗色信息层级重新设计 1200×630 Push 卡片:事件头、仓库与分支、四项指标、
提交列表和北京时间页脚。 - Bot 运行镜像安装轻量开源文泉驿微米黑,解决 Linux 容器缺少中文字形导致的方框乱码。
- 卡片完全本地渲染,不读取远程字体或图片;过长仓库名、分支与提交说明按像素宽度省略。
升级
升级前仍建议备份 data/。只重建 Bot 可以保留 NapCat 容器和 QQ 登录状态:
docker compose up -d --build --no-deps bot若使用 GitHub Monitor,在 .env 中配置:
PLUGIN_SYSTEM_ENABLED=true
PLUGIN_API_VERSION=1.1
PLUGIN_DIRECT_COMMAND_BINDINGS={"/github":"github-monitor:github"}
YUKI_PLUGIN__GITHUB_MONITOR__GITHUB_TOKEN=github_pat_replace_with_your_token然后由超级管理员检查、批准并启用 github-monitor。Token 不应发送到 QQ、写入普通插件配置
或提交到 Git。
发布验证
- GitHub Monitor 契约、轮询、事件过滤与中文卡片测试通过;
- Host 插件配置、HTTP credential、外部通知、迁移
0028与直达命令测试通过; - Bot 镜像构建和健康检查通过,容器内中文卡片实际渲染正常;
- GitHub Token 鉴权、插件后台运行与 OneBot v11 反向 WebSocket 已实机验证;
- Bot 重建期间 NapCat 启动时间保持不变,QQ 登录状态保留。