Commit Graph
100 Commits
Author SHA1 Message Date
Helian Nuits fd51b4e399 fix(readme): readme 飞书接入情况说明
Updated Feishu / Lark integration section to indicate it is a work in progress.
2026-04-29 20:52:07 +08:00
SXP-Simon 9e0f88eeda [v4.10.4] - 🛠️ 将镜像地址配置注入到子模板渲染上下文中,解决 ATRI 子模板中变量未定义导致的生成问题 2026-04-27 17:12:29 +08:00
SXP-Simon 616d16010c fix(ATRI): 将镜像地址配置注入到子模板渲染上下文中,解决子模板中变量未定义导致的问题 2026-04-27 17:03:59 +08:00
SXP-Simon 09b4d188f2 fix(typo): T2I 文档 2026-04-26 21:22:50 +08:00
SXP-SimonandCopilot ec2249b9a7 [v4.10.3] - 优化报告模板中的头像与内联图片复用,并修复 Miku 峰值区块窄屏排版问题 (#178 @lekoOwO)
Co-authored-by: Copilot <copilot@github.com>
2026-04-26 14:41:07 +08:00
SXP-SimonandCopilot bb04114cdb [v4.10.2] - Telegram 头像处理修复,支持多地区渲染环境与自定义镜像
Co-authored-by: Copilot <copilot@github.com>
2026-04-25 12:35:18 +08:00
SXP-Simon 948bfb1b5b refactor(render): 解决国内可能存在的资源访问问题,新增大陆资源和海外资源可选项,允许用户根据服务器位置选择不同的资源策略,并且允许自定义资源镜像站
- Updated language attributes in HTML templates to dynamically set based on `t2i_font_source`.
- Replaced hardcoded Google Fonts links with dynamic links using `t2i_google_fonts_mirror` and `t2i_gstatic_mirror`.
- Adjusted font-family declarations to conditionally include 'Noto Sans SC' and 'Noto Sans TC' based on the `t2i_font_source`.
- Ensured consistent formatting and style across various templates including image, quote, topic, and user title items.
- Added missing newlines at the end of several files for consistency.
2026-04-25 12:22:36 +08:00
SXP-Simon e48716dbf8 [v4.10.1] - 优化 T2I 渲染与自定义配置 2026-04-23 08:53:51 +08:00
SXP-Simon fc843fac03 feat: 优化 T2I 渲染与自定义配置
1. 支持配置两轮 T2I 渲染策略,允许用户自定义图片格式(PNG/JPEG)、质量、分辨率及超时时间。
2. 实现 T2I 返回 HTML 错误页的自动识别与摘要提取(如 502 Bad Gateway),提升故障排查效率。

- 参考 #174 关于 T2I 动态超时与配置的建议
- 参考 #171 关于处理 T2I 返回 HTML 错误信息的建议
- 解决了 [Feature Request] 支持配置 PNG/JPEG 渲染优先级,避免大报告场景下因本地大图保护而回退为文件发送 #164
2026-04-23 08:43:51 +08:00
SXP-Simon e1c5b854c7 [v4.9.19] - 支持 LLBot 群相册接口并优化 OneBot 适配器
Fixes #173
2026-04-22 15:17:28 +08:00
SXP-Simon b119ea741e feat(album): 支持 LLBot 群相册接口并优化 OneBot 适配器 2026-04-22 15:15:59 +08:00
SXP-Simon d36bf4941a [v4.9.18] - ⚙️ base64 传输统一开关修复,正确处理 Onebot Adapter 的图片、文件资源传输情况 2026-04-15 23:19:51 +08:00
SXP-Simon c17371051a fix(onebot): base64 统一开关,提取 OneBot 适配器中的通用传输与查找逻辑
- 提取 `_execute_transmission_strategy` 以统一处理 Base64/路径尝试/重试的传输流水线。
- 提取 `_find_item_in_list` 辅助函数,简化群文件夹和相册的名称匹配逻辑。
- 重构 `send_image`、`send_file`、`upload_group_file_to_folder` 和 `upload_group_album` 以减少代码冗余。
- 提升 OneBot 平台适配器的代码可维护性与逻辑一致性。
2026-04-15 22:56:24 +08:00
SXP-Simon cc162b62dd [v4.9.17] - 人格画像体验升级,SBTI 和 ACGTI 风格 2026-04-13 22:37:24 +08:00
SXP-Simon 3d6e3d45a1 fix(_get_manifest_profile_item_by_mbti): 正确的 fallback 处理 2026-04-13 22:13:36 +08:00
SXP-Simon ed85876b36 feat(mbti): 替换 mbti 简单实现 sbti acgti 功能 2026-04-13 21:43:25 +08:00
SXP-Simon 06ea0e7812 docs(MBTI): 为多样化 MBTI 增加开发说明文档 (#167) 2026-04-13 16:51:34 +08:00
SXP-Simon 45c9ca9bea [v4.9.16] - 增加了html_only_url选项,使在选择输出格式为html时可以单独发送BaseURL (#166 @shiitin) 2026-04-12 22:08:49 +08:00
SXP-Simon 937f4e1782 [v4.9.15] - fix: 发送假超时不应该导致上传群相册群文件失败,删除 PDF 模块和相关的功能 2026-04-07 22:30:20 +08:00
SXP-Simon 93b2b847ef fix(output_format): 改为 options 形式处理,提升用户体验 2026-04-07 22:27:34 +08:00
SXP-Simon ae38febca2 fix(pdf): 删除 PDF 模块和相关的功能 2026-04-07 22:17:09 +08:00
SXP-Simon 98d485dbe6 Merge branch 'main' of https://github.com/SXP-Simon/astrbot_plugin_qq_group_daily_analysis 2026-04-07 21:41:24 +08:00
SXP-Simon 3343fcce22 fix(ReportDispatcher): 发送假超时不应该导致上传群相册群文件失败
[Bug] 聊天记录转发,群文件上传
Fixes #160
2026-04-07 21:40:52 +08:00
SXP-Simon 34437e7ebe fix(ReportDispatcher): 发送假超时不应该导致上传群相册群文件失败 2026-04-07 21:25:10 +08:00
SXP-Simon b1c85d8994 [v4.9.14] - feat(persona): 分析器人格增强和使用体验优化,可视化选择人格配置 2026-04-04 21:26:31 +08:00
SXP-Simon 0fa01883a1 revert: revert 'force desktop viewport for exported html reports (#147)' in commit befcc2ad 2026-04-04 21:18:37 +08:00
SXP-Simon 60cf29b0d5 feat(analyzer): 增强人格设定注入策略 2026-04-04 20:58:36 +08:00
SXP-Simon a8a22233d4 fix(ChatQualityAnalyzer): 手动 apply_persona_reinforcement 2026-04-04 20:44:36 +08:00
SXP-Simon a75776f085 feat(analyzer): 增强人格设定注入策略,采用首尾双重注入提升角色保持能力,避免聊天记录上下文过长导致的 LLM 对于人格提示词的注意力下降 2026-04-04 20:18:11 +08:00
SXP-Simon 92a365475c feat(persona): 人格设定功能增强,支持插件指定和会话继承的人格分析 2026-04-04 19:40:30 +08:00
SXP-Simon 5375659769 fix(conf): 增强服务稳定性 2026-04-04 19:40:30 +08:00
SXP-Simon 3a9170449c fix(ATRI): GitHub Repo Link 2026-04-04 19:40:30 +08:00
SXP-Simon f3aad2441f fix(黑白名单): 修复插件在独立会话模式下无法识别群号白名单的问题 2026-04-04 19:40:30 +08:00
SXP-Simon 0c1d9cff72 fix typo 2026-04-03 15:00:40 +08:00
SXP-Simon 3f3e60cbd0 feat(ATRI): 添加作者名称 Liangyu-G 2026-04-03 14:40:58 +08:00
SXP-Simon 45988cf419 [v4.9.13] - feat(ATRI): ATRI 模板 (@Liangyu-G) 2026-04-03 14:32:02 +08:00
SXP-Simon 5dd7cf1aa1 [v4.9.12] - 移除无效的重试器 2026-04-02 17:52:36 +08:00
SXP-Simon 59e9f06d0d fix: 移除发送重试模块 2026-04-02 17:45:56 +08:00
SXP-Simon 5e2da8c852 fix(get_astrbot_data_path): fallback 到 get_astrbot_data_path 方法 2026-04-02 15:25:07 +08:00
SXP-Simon e503e7ad63 [v4.9.11] - feat(HTML): HTML 报告与自建外链吗,将群分析变成可以点击跳转的精美网页链接 2026-04-01 22:19:00 +08:00
SXP-Simon 692df4b0c9 chore: docs 2026-04-01 21:23:02 +08:00
SXP-Simon 05836f64f2 fix: 定时任务超时问题优化
Fixes #141

定时分析任务间隔启动,放宽超时配置限制
2026-04-01 21:14:00 +08:00
SXP-Simon 1fa1ebe5ca [v4.9.10] - fix: 解决 TG 未贴表情的 bug,HTML 输出模式,优化渲染 2026-03-31 21:17:31 +08:00
SXP-Simon b041a7ca9e [v4.9.9] - feat(feishu): 尝试接入飞书并且回退黑白名单逻辑,保持旧版本逻辑,插件统一管理 2026-03-29 01:08:00 +08:00
SXP-Simon 43f80d24f8 feat(feishu): 完善日志和健壮性 2026-03-29 01:02:15 +08:00
SXP-Simon bc916e259d Revert "fix: 统一定时分析名单准入并修复白名单绕过问题 (情况如 #133 所述)"
This reverts commit a3d72e43ab.
2026-03-29 00:36:08 +08:00
SXP-Simon 0cba280a82 feat(feishu): 尝试接入飞书 2026-03-29 00:29:37 +08:00
SXP-Simon 6d40745e79 [v4.9.8] - feat(HatsuneMiku): 新增了一个名为 HatsuneMiku 的模板 (#134 @Shiitin) 2026-03-28 22:45:47 +08:00
SXP-Simon d3eb9b51f5 fix(retry): 降低重试重复并强化 OneBot 假超时拦截
- `onebot_adapter.py#L547-L609` 的路径发送失败逻辑改为:遇到 `timeout/1200/网络错误` 不再立即 Base64 回退,而是继续抛错,由上层进入 10+20+30 秒的多轮观察;每轮都通过 `was_image_sent_recently` 确认后台是否真的已发成功,确认后立刻拦截重试,避免 “假超时” 导致连发。
- `retry.py#L20-L210` 中去重注释已全部换成中文,并补全了 `_cleanup_expired_task_keys`、`_build_task_key`、`_mark_task_finished` 等说明,说明当前去重键由 caption TraceToken 或 html hash 构成,维护两个集合 `_active_task_keys`/`_recent_task_key_ts` 防止同一报告短时间再次入队,构造 task_key 后再 enqueue 并在完成后刷新冷却;`max_retries` 也降到 2 次,并且同群任务会 `sleep(5)` 重新排队,链路上最多留存一份 retry 任务。
2026-03-28 22:33:29 +08:00
SXP-Simon a3d72e43ab fix: 统一定时分析名单准入并修复白名单绕过问题 (情况如 #133 所述) 2026-03-28 21:53:01 +08:00
SXP-Simon 4200631f17 fix(HatsuneMiku): 完善 2026-03-28 21:18:50 +08:00
SXP-Simon 03f2f066b3 fix typo 2026-03-27 13:01:27 +08:00
SXP-Simon b29327674f [v4.9.7] - feat(分析配置细粒度化): 引入三层黑白名单机制(基础群分析开关、定时分析、增量分析),支持更细粒度的群级分析控制;修复自动分析生命周期管理情况避免任务被静默跳过 2026-03-26 23:32:32 +08:00
SXP-Simon 3df898ca69 feat(response_validation): 新增 Pydantic 校验层,健壮化处理 LLM 生成内容 2026-03-26 22:58:04 +08:00
SXP-Simon 7e741854a9 feat(response_format): 使用 OpenAI 格式的 response_format 参数约束 json 格式化数据生成,并且兼容旧版本逻辑,等待本体合并相关参数的传入 2026-03-26 22:56:02 +08:00
SXP-Simon 93704a5d4d fix: 统一表情统计口径并修复用户活跃分析类型标注
- 对齐表情统计规则,确保“报告总表情数”与“用户画像表情数”使用同一判定逻辑。
- 针对 OneBot 适配器已引入的 QQ 表情包信号(sub_type=1):
  - 统计时优先使用 raw_data.sub_type == 1 判定图片型表情。
  - 仅在缺少 sub_type 时,回退到 summary 文本匹配(兼容历史数据)。
- 修复用户画像统计偏差:
  - 移除文本正则(Unicode/Discord)额外计数,避免与报告总数口径不一致。
  - 增加 IMAGE 段表情识别,和群组统计保持一致。
- 修复 basedpyright 类型告警:
  - 为用户活跃结构引入 UserActivityStats TypedDict。
  - 将 analyze_user_activity / get_top_users / get_user_activity_pattern 改为显式类型。
  - 将 bot_self_ids 参数标注调整为 list[str] | None。
- 新增并扩展回归测试:
  - 验证群总表情数与用户表情汇总一致。
  - 验证 sub_type 优先级(sub_type=0 不被 summary 误判)。
- 已通过 ruff check 与相关 pytest 用例。
2026-03-26 19:37:33 +08:00
SXP-Simon 9ed4771730 feat: 完善自动分析名单调度与面板配置说明
- 重构自动分析调度流程:以分层名单解析目标群组,统一报告入口,并按群组模式分发传统/增量任务。

- 新增定时名单与增量名单配置能力:补充 scheduled_group_list(_mode)、incremental_group_list(_mode)、incremental_fallback_enabled。

- 优化失败兜底策略:增量最终报告在超时、异常或无有效结果时,可回退至传统全量分析。

- 完善配置与文档说明:在 _conf_schema.json 与 README 中补充面板操作指引、判定顺序与边界场景说明。

- 兼容旧配置行为:保留废弃接口,并在配置管理中统一名单匹配语义(UMO/群号兼容)。
2026-03-26 19:23:49 +08:00
SXP-Simon aa3ae494ce fix(tg): 修复 Telegram 平台自动分析就绪检查失败以及 ID 匹配诊断逻辑
- 优化 BotManager 的 is_ready_for_auto_analysis 逻辑:将其改为非硬性限制。即使未成功提取机器人 ID (bot_self_ids),也允许定时任务继续运行,从而解决了 Telegram 在 Docker 部署下因 ID 获取延迟导致报告被跳过的问题。
- 强化日志诊断:在 Telegram 消息拦截 (save)、平台发现 (discovery) 和消息拉取 (fetch) 的关键路径中增加 platform_id 显式日志,方便排查多账号环境下的 ID 冲突。
- 在 BotManager 就绪检查中加入调试输出,明确告知分析任务被跳过的具体原因。
2026-03-26 13:33:09 +08:00
SXP-Simon 2539063a3e fix(增量分析): 增量分析任务的生命周期检查,与定时分析保持一致 2026-03-26 13:02:44 +08:00
SXP-Simon 90908cefcb [v4.9.6] - fix(provider): 优化 PDF 模板生成情况,基础设施健壮性增强 2026-03-25 17:43:35 +08:00
SXP-Simon d03b3d5b42 fix: 修复插件任务生命周期管理,避免用户困惑的报错行为 (#125)
- 修复 'NoneType' 报错 (Fix #125): 引入插件终止标志位并完善任务生命周期清理逻辑。
- 强化资源清理:重载时主动取消并等待所有运行中的异步任务(包括手动分析、自动调度和依赖安装),移除危险的属性置空操作,彻底消除重载时的属性访问竞态。
2026-03-25 16:49:14 +08:00
SXP-Simon 1ab409a49e fix(tg): 尝试修复 Telegram 平台自动分析就绪检查失败问题 (#128)
- 在 BotManager 中增加对 Telegram 机器人 ID 提取的支持(支持 `bot.id` 属性),解决 Telegram 环境下因无法识别 Bot ID 导致的自动分析任务跳过问题。
2026-03-25 16:31:42 +08:00
SXP-Simon 82c5cc4cef fix: 修复 JSON 解析中正则贪婪匹配导致的数组截断问题 (#126)
- 将解析 JSON 数组的正则模式从非贪婪 `.*?` 改为贪婪匹配 `.*`,防止内容中包含方括号(如 [UID])时导致 JSON 截断。
- 优化话题、称号、金句等分析逻辑中的正则表达式,使用更严谨的模式处理转义双引号和特殊格式。
2026-03-25 16:15:51 +08:00
SXP-Simon 72ead04182 fix(pdf): 优化 PDF 模板生成情况 2026-03-25 16:09:54 +08:00
SXP-Simon 58615d2752 fix(scrapbook): pdf 版本排版调整 2026-03-25 15:46:38 +08:00
SXP-Simon 74c292b591 fix(assets): scrapbook 模板图 2026-03-23 17:33:36 +08:00
SXP-Simon 2120800abd [v4.9.5] - fix(chat_quality_analysis 模块): 优化增量分析逻辑,优化提示词 2026-03-23 17:28:17 +08:00
SXP-Simon fcffe7d35a fix(quality_summary): 优化增量分析逻辑,优化提示词 2026-03-23 13:38:12 +08:00
SXP-Simon 91692170a0 [v4.9.4] - feat(chat_quality_analysis 模块): 新增群聊质量锐评功能(灵感来源:感谢 @Nagi-ovo) 2026-03-23 00:53:05 +08:00
SXP-Simon 5701599a14 feat: 同步更新其他模板 2026-03-23 00:42:18 +08:00
SXP-Simon 09f3517c69 fix(pdf): 活动图表 2026-03-23 00:42:18 +08:00
SXP-Simon c65d26b4ba fix(close): 统一为异步方法以正确清理 aiohttp 会话和 diskcache 缓存 2026-03-23 00:42:18 +08:00
SXP-Simon 9a35ed9600 feat(chat_quality_analysis): chat_quality_analysis 模块 2026-03-23 00:42:18 +08:00
SXP-Simon 51d14dad0b [v4.9.3] - feat(增量分析): 更新增量分析配置,增加安全上限并优化消息拉取逻 2026-03-21 00:54:00 +08:00
SXP-Simon b2101c3a15 fix(assets): 使用 fastly.jsdelivr.net cdn 实现呈现插件文档页面的图片 2026-03-21 00:13:42 +08:00
SXP-Simon 2cc5f3cb67 fix(onebot): 保持正确的旧拉取逻辑 2026-03-21 00:11:38 +08:00
SXP-Simon cd6a6294e1 feat(增量分析): 更新增量分析配置,增加安全上限并优化消息拉取逻辑 2026-03-20 23:59:24 +08:00
SXP-Simon f3f93a96c4 fix typo 2026-03-20 21:07:03 +08:00
SXP-Simon 3b8e2b85ba [v4.9.2] - feat(reaction): 将文字反馈调整为表情反馈 2026-03-19 15:14:33 +08:00
SXP-Simon 3ec4de1c99 feat(reaction): 将文字反馈调整为表情反馈 2026-03-19 15:12:44 +08:00
SXP-Simon a71a0a34db [v4.9.1] - feat(persona): 添加分析人格设定的配置选项,并更新相关提示词构建逻辑 2026-03-16 23:49:04 +08:00
SXP-Simon 4cae39d153 feat(分析功能): 添加人格设定的配置选项,并更新相关提示词构建逻辑
feat(persona): 自动检测当前群聊激活的对话所绑定的性格
2026-03-16 23:46:03 +08:00
SXP-Simon 35203b7ca2 chore(logger): 增强群相册相关的日志可视情况 2026-03-16 21:10:17 +08:00
SXP-Simon bf78ef2b8a Merge branch 'main' of https://github.com/SXP-Simon/astrbot_plugin_qq_group_daily_analysis 2026-03-16 20:53:52 +08:00
SXP-Simon 4ea4f26727 fix(群相册): 兼容群相册插件上传 API groupid 参数 int 类型,尝试解决 #112 2026-03-16 20:53:45 +08:00
SXP-Simon 70518fbd7b fix(ruff) 2026-03-16 01:10:28 +08:00
SXP-Simon 02bacd3389 [v4.9.0] - fix(telegram): 增强 telegram 平台的插件可用性 2026-03-16 01:03:21 +08:00
SXP-Simon 2e62c09266 fix(readme): 增加 t2i 链接 2026-03-16 00:51:15 +08:00
SXP-Simon 451dbaa470 fix(telegram): Photo_invalid_dimensions: Telegram 报错提示图片长宽比例或总尺寸不合规时,尝试以文件形式发送 2026-03-16 00:43:41 +08:00
SXP-Simon 4745fbccad [v4.8.9] - fix: 群相册严格模式修复 (#111),尝试解决下载用户头像和重试地狱的问题 (#107) 2026-03-16 00:12:09 +08:00
SXP-Simon 48765d69aa fix(telegram): 尝试解决下载用户头像和重试地狱的问题 ([Bug]TG群聊无法正常获取群聊成员头像
Fixes #107)
2026-03-16 00:09:33 +08:00
Helian Nuits 5876613deb fix: 群相册严格模式修复 (#111)
* fix: respect strict mode for qq group album upload(#100)

* fix: align album strict-mode default and bool parsing

* refactor: simplify strict mode config getter

* fix: enforce album strict mode in main upload path

* fix(pre-commit)
2026-03-15 23:21:54 +08:00
SXP-Simon d436ea6b70 feat(README): 增加 TG 群链接 2026-03-13 17:58:57 +08:00
SXP-Simon cd1cd78a75 [v4.8.8] - feat(golden_quote): 重构金句分析匹配机制,尝试解决金句头像偶尔无法显示的问题,锐评中允许解析用户进行头像渲染 2026-03-13 17:47:04 +08:00
SXP-Simon 4813c8e3df feat(金句分析): 明确告知 LLM 在 reason(选择理由/锐评)中提到群成员时,应使用 [用户ID] 格式 2026-03-13 17:34:58 +08:00
SXP-Simon 1ae3e877f2 fix: 重构金句分析匹配机制 (#104)
- [修复] 尝试解决金句头像无法显示的问题。通过将 Prompt 输入改为 [user_id] 标识符,实现 100% 准确的身份回填,彻底消除了由于 LLM 微调内容导致的匹配失败。
- [警告] 强制初始化金句提示词,丢弃原本用户可能自定义的金句提示词模板。重命名配置项为 golden_quote_v2_prompt,避免用户更新后旧版本提示词干扰导致 LLM 金句分析功能失效。
2026-03-13 17:09:42 +08:00
SXP-Simon 2a1b292ed9 fix(ruff) 2026-03-12 18:47:16 +08:00
SXP-Simon 2e5ef3eba3 fix(terminate): 解决插件卸载/重载时因 schedule_jobs(None) 调用导致的 NoneType 报错,完善资源清理流程。 2026-03-12 18:43:47 +08:00
SXP-Simon b3e11a8cf7 [v4.8.7] - feat: 语义化 Trace ID 注入与报告标签 (#103) 2026-03-12 18:26:39 +08:00
SXP-Simon c185f700ae fix(logger): 注入 TraceID 2026-03-12 18:15:23 +08:00