Commit Graph
475 Commits
Author SHA1 Message Date
SXP-Simon 25a6a261b5 Refactor: Cleanup commented out code in analysis_orchestrator.py 2026-02-08 21:54:34 +08:00
SXP-Simon ec29304069 Refactor: Translate comments and logs to Chinese in application layer 2026-02-08 21:53:49 +08:00
SXP-Simon b9a33926be Refactor: Translate English comments in domain layer to Chinese 2026-02-08 21:51:50 +08:00
SXP-Simon f0ab1e1401 Refactor: Final cleanup of English comments 2026-02-08 21:50:21 +08:00
SXP-Simon 64fdb17b52 Refactor: Translate comments and logs to Chinese in infrastructure layer 2026-02-08 21:49:48 +08:00
SXP-Simon c079c90a38 Refactor: Translate all remaining English comments to Chinese 2026-02-08 21:48:21 +08:00
SXP-Simon aca6937efc fix: 多平台,避免注释误解 2026-02-08 21:46:59 +08:00
SXP-Simon 7c67d1d797 Docs: Update platform integration guide with latest architecture and Chinese content 2026-02-08 21:46:20 +08:00
SXP-Simon d0ffc739b4 Refactor: Translate remaining English logs and comments to Chinese 2026-02-08 21:44:31 +08:00
SXP-Simon ba1bcfd80a Refactor: Translate comments and logs to Chinese in bot_manager.py and config.py 2026-02-08 21:43:27 +08:00
SXP-Simon 5f998b32df Refactor: Fix remaining bot_qq_ids in TopicAnalyzer 2026-02-08 21:42:34 +08:00
SXP-Simon fb481e3c4a Refactor: Decouple platform specific logic - Rename bot_qq_ids to bot_self_ids and generalize methods 2026-02-08 21:42:09 +08:00
SXP-Simon cbfb1cc844 fix(AnalysisConfig): 创建编排器时没有正确配置 max_messages 2026-02-08 21:33:53 +08:00
SXP-Simon 7ea84093da fix(typo) 2026-02-08 21:27:44 +08:00
SXP-Simon 185c5edcfb feat(debug): 调试模式,启用后,会在 plugin_data/debug_data 目录下保存每次分析的平台 API 原始历史消息和 Prompt 原文,用于调试和优化提示词 2026-02-08 21:25:20 +08:00
SXP-Simon bd096679b5 feat: discord 表情支持,和部分调试日志 2026-02-08 21:12:00 +08:00
SXP-Simon ee9c33debf fix: complete the refactoring of AutoScheduler to use the Domain-Driven Design (DDD) architecture.
Decoupling: AutoScheduler no longer depends on platform-specific APIs like call_action.
Abstraction: It now uses PlatformAdapterFactory to create an adapter for each bot instance and calls IGroupInfoRepository.get_group_list to fetch groups.
Maintainability: This change makes the scheduler platform-agnostic, allowing new platforms to be supported by simply adding a new PlatformAdapter without modifying the scheduler code.
2026-02-08 20:24:32 +08:00
SXP-Simon c3cc2fd1f4 fix: complete the migration of the group_list configuration to use AstrBot Unified Message Origins (UMOs).
Changes Implemented:
Configuration: group_list now supports UMOs (e.g., qq_123456:GroupMessage:123456) while maintaining backward compatibility for simple group IDs.
Logic: ConfigManager and AutoScheduler were updated to handle UMOs for permission checking and group fetching.
Commands: The /分析设置 command now uses the full UMO when enabling/disabling analysis for a group.
2026-02-08 20:19:07 +08:00
SXP-Simon e24449cac1 fix: 完成多平台逻辑解耦优化
配置模式 (_conf_schema.json):
将所有 "QQ号" 描述更名为通用的 "ID" 或 "用户ID"。
更新了 话题分析、用户称号分析、金句分析 的默认 Prompt 模板,将示例 JSON 中的 qq 字段改为 user_id。
保留 bot_qq_ids 配置项名称以维持向后兼容性,但其描述已更新。
数据模型 (data_models.py):
UserTitle 和 GoldenQuote 类中的 qq 字段重命名为 user_id (类型 str)。
为了兼容旧代码,添加了 qq 属性(@property),自动将 user_id 转为 int 返回。
分析逻辑 (analyzers/*.py):
TopicAnalyzer: 通用化了 @ 消息的处理,支持读取 qq、id 或 user_id 字段。
UserTitleAnalyzer & GoldenQuoteAnalyzer: 更新了 Prompt 构建和结果提取逻辑,优先使用 user_id,不再强制依赖 QQ 号格式。
ReportGenerator: 更新了报告生成逻辑,使用 user_id 获取头像。
结果: 插件现在更具通用性,配置和提示词不再默认绑定 QQ 平台术语,能更好地适应 Discord 等其他平台。容器已重启,新配置生效。
2026-02-08 20:09:56 +08:00
SXP-Simon 94fdc42abb fix: 报告生成器硬编码了 QQ 头像 API (qlogo.cn),导致 Discord 用户显示默认/错误的 QQ 头像。
修复:

修改 ReportGenerator,允许传入自定义的 avatar_getter 回调。
2026-02-08 20:02:46 +08:00
SXP-Simon f377b2cf87 fix: discord 内发送 image 格式的报告 2026-02-08 19:58:19 +08:00
SXP-Simon bdcd876663 fix: 手动触发,编排器首先尝试从 event 直接提取 bot 客户端 2026-02-08 19:54:30 +08:00
SXP-Simon 0e3778ff55 fix: _get_orchestrator 使用 platform_id (如 "lulouch") 来创建适配器,但应该使用 platform_name (如 "discord") 来确定适配器类型 2026-02-08 19:48:12 +08:00
SXP-Simon df28aa1076 fix: 修复 Discord 适配器客户端访问问题
问题:self.bot 是 DiscordPlatformAdapter 对象,没有 get_channel 方法。

修复:

添加 _get_discord_client() 辅助方法来正确获取 Discord 客户端(通过 DiscordPlatformAdapter.client)
将所有方法中的 self.bot.xxx 替换为 self._discord_client.xxx
2026-02-08 19:44:16 +08:00
SXP-Simon e780e3cbe9 fix: 修复平台ID提取
问题:_get_platform_id_from_event 方法使用了错误的属性访问方式,导致 platform_id=None。

修复:改为使用正确的 AstrMessageEvent API
2026-02-08 19:41:39 +08:00
SXP-Simon 6f7b20d962 fix: 正确注册命令 2026-02-08 19:39:50 +08:00
SXP-Simon 38f0cb26df fix: 修复 main.py 文件结构损坏,支持跨平台命令 2026-02-08 19:27:42 +08:00
SXP-Simon e9eda2571e fix: 导入必要模块 2026-02-08 19:09:58 +08:00
SXP-Simon d56f2e0dbc feat: 添加 raw_message 和 user_id 字段以增强消息兼容性 2026-02-08 19:05:00 +08:00
SXP-Simon 0d34a9df3a feat: 添加发送者字段填充,确保向后兼容旧分析器 2026-02-08 19:04:51 +08:00
SXP-Simon 46356d1c19 feat: 添加分析编排器和日志过滤器,优化群聊分析功能 2026-02-08 18:55:26 +08:00
SXP-Simon b4d50c2571 refactor: fully implement cross-platform support (UMO, adapter usage, OneBot compat format) 2026-02-08 18:38:26 +08:00
SXP-Simon 310860708d feat: 优化消息获取逻辑,支持通过适配器获取群聊消息并兼容旧逻辑 2026-02-08 18:36:15 +08:00
SXP-Simon ce640e61f4 fix: resolve AttributeError by using context.get_config() to access plugin_set (仅测试,后期需要纠正) 2026-02-08 18:27:25 +08:00
SXP-Simon 00060eb0d4 fix: remove platform check and support generic event for Discord compatibility 2026-02-08 18:08:43 +08:00
SXP-Simon 5a4418654e fix: robust metadata retrieval in BotManager to support Discord platform 2026-02-08 17:59:48 +08:00
SXP-Simon 7fc961df31 fix: use stacked decorators for command aliases to support Discord 2026-02-08 17:42:47 +08:00
SXP-Simon d24baa4261 feat: add English command aliases for Discord compatibility 2026-02-08 17:37:45 +08:00
SXP-Simon 5a8f41e081 feat: 优化 BotManager 中平台名称检测逻辑,增强对平台元数据的支持 2026-02-08 17:24:26 +08:00
SXP-Simon c8f98618e8 fix: 自动修复配置格式以支持旧版本字符串配置 2026-02-08 17:07:35 +08:00
SXP-Simon 25391380b5 feat: enhance BotManager to support lazy loading of platform adapters 2026-02-08 17:07:29 +08:00
SXP-Simon b8c1481ec1 fix: solve race condition in BotManager initialization for Discord 2026-02-08 16:55:28 +08:00
SXP-Simon 4a5f9ff4fb feat: implement DiscordAdapter with py-cord integration 2026-02-08 16:47:01 +08:00
SXP-Simon a2adfe6561 docs: add platform integration guide and unit tests 2026-02-08 16:24:08 +08:00
SXP-Simon 8e09a9e1cf feat: add DiscordAdapter skeleton and register in factory 2026-02-08 16:23:57 +08:00
SXP-Simon e0d81ec5c5 feat: add convert_to_raw_format to PlatformAdapter and update OneBotAdapter 2026-02-08 16:23:41 +08:00
SXP-Simon e8833be891 refactor: translate comments to Chinese and fix hardcoded OneBot format 2026-02-08 16:23:32 +08:00
SXP-Simon 8960484bc9 docs: 更新 DDD 实施状态文档至 Phase 2 完成 (100%)
- 更新版本至 v2.1,状态更新为 Phase 2 完成 (100%)
- 添加新的领域分析器服务到架构文档
- 更新下一步计划,标记已完成的任务
- 添加 Docker 容器内验证记录
2026-02-08 15:14:22 +08:00
SXP-Simon 39cc318d9b feat: 完善 DDD 架构 - 添加领域分析器服务适配层
- 添加 src/__init__.py 作为源码包入口
- 添加 domain/services 分析器适配层:
  - topic_analyzer.py: 话题分析领域服务
  - user_title_analyzer.py: 用户称号分析领域服务
  - golden_quote_analyzer.py: 金句分析领域服务
- 更新 domain/entities/__init__.py 导出更多实体类
- 更新 shared/constants.py 添加枚举类 (Platform, TaskStatus, ContentType, ReportFormat)
- 所有新代码使用中文注释
2026-02-08 15:12:52 +08:00
SXP-Simon 39e5d6169d chore: 注释 2026-02-08 15:06:33 +08:00