Commit Graph

1346 Commits

Author SHA1 Message Date
SengokuCola
eda8ce66f0 feat:优化重复思考,表情现在一次选所有且可配置 2026-04-04 01:55:05 +08:00
SengokuCola
5254d9ac8e feat;优化表情包发送和replyer 2026-04-04 01:28:37 +08:00
SengokuCola
84977aa07b Merge branch 'r-dev' of https://github.com/Mai-with-u/MaiBot into r-dev 2026-04-04 01:11:14 +08:00
SengokuCola
87bdb1f12a feat;replyer采用多模态 2026-04-03 23:47:19 +08:00
DrSmoothl
a2431e677e feat: 添加嵌入服务层和任务解析工具,重构文本嵌入逻辑 2026-04-03 23:35:16 +08:00
tcmofashi
8bfe3e7036 Merge pull request #1578 from tcmofashi/rdev
feat: add a subagent frame
2026-04-03 23:26:06 +08:00
tcmofashi
7b9e1cf925 ruff 2026-04-03 23:18:30 +08:00
SengokuCola
8255b13cea Merge branch 'r-dev' of https://github.com/Mai-with-u/MaiBot into r-dev 2026-04-03 22:42:29 +08:00
SengokuCola
07597bc1d7 feat:新增sub_agent,暂时用于emoji选择;修改部分配置位置 2026-04-03 21:57:35 +08:00
Dawn ARC
b6db0455c5 Merge branch 'Mai-with-u:r-dev' into r-dev 2026-04-03 21:27:19 +08:00
SengokuCola
ce580d1f8b feat:可以查看转发消息,新增复杂消息,修复表情包缓存,修改bot自己的消息回调msg_id 2026-04-03 20:55:49 +08:00
DawnARC
291420b7c7 merge: 同步 upstream/r-dev 并解决冲突 2026-04-03 19:56:45 +08:00
SengokuCola
fc753f7e9f feat:maisak正确解析图片原始数据,reply信息 2026-04-03 17:22:53 +08:00
SengokuCola
b74b60cb1a feat:移除旧的maisaka cli逻辑 2026-04-03 15:31:44 +08:00
SengokuCola
6c720e0403 ref:重构maisaka内置工具逻辑,拆分文件 2026-04-03 14:51:05 +08:00
SengokuCola
6e6aa0b13a feat:生成器可用多消息模式 2026-04-03 13:43:49 +08:00
DrSmoothl
1906890b67 feat: add unified WebSocket connection manager and routing
- Implemented UnifiedWebSocketManager for managing WebSocket connections, including subscription handling and message sending.
- Created unified WebSocket router to handle client messages, including authentication, subscription, and chat session management.
- Added support for logging and plugin progress subscriptions.
- Enhanced error handling and response structure for WebSocket operations.
2026-04-02 22:08:52 +08:00
DrSmoothl
7d0d429640 feat: Enhance plugin runtime configuration and hook management
- Added `inactive_plugins` field to `RunnerReadyPayload` and `ReloadPluginResultPayload` to track plugins that are not activated due to being disabled or unmet dependencies.
- Introduced `InspectPluginConfigPayload` and `InspectPluginConfigResultPayload` for inspecting plugin configuration metadata.
- Implemented `PluginActivationStatus` enum to better represent plugin activation states.
- Updated `_activate_plugin` method to return activation status and handle inactive plugins accordingly.
- Added hooks for send service to allow modification of messages before and after sending.
- Created new runtime routes for listing hook specifications in the WebUI.
- Refactored plugin configuration handling to utilize runtime inspection for better accuracy and flexibility.
- Enhanced error handling and logging for plugin configuration operations.
2026-04-02 21:16:31 +08:00
SengokuCola
f2aedf7681 remove:emoji插件,修复tool被截断的问题 2026-04-01 17:06:44 +08:00
A-Dawn
bf5eb45709 Merge remote-tracking branch 'upstream/r-dev' into r-dev
# Conflicts:
#	src/memory_system/chat_history_summarizer.py
#	src/memory_system/memory_retrieval.py
#	src/memory_system/retrieval_tools/__init__.py
2026-04-01 14:20:22 +08:00
SengokuCola
503a257d66 remove:无用配置 2026-04-01 13:06:01 +08:00
SengokuCola
a7310916e6 fix:表情包发送无记录,两次wait结果,notice不显示msg_id,展示每次token上下文 2026-04-01 12:36:33 +08:00
A-Dawn
a004c59e1e feat: 添加记忆自动化钩子与回写
在接收和发送消息时注册记忆自动化,并重构人物记忆回写逻辑以使用 memory_service.ingest_text。主要改动如下:

在接收消息时调用 memory_automation_service.on_incoming_message(bot 侧),在发送消息时调用 on_message_sent(send_service 侧),并加入安全的错误处理。
在 person_info 中,用 memory_service.ingest_text 替换手动操作 person.memory_points 的方式;新增 resolve_person_id_for_memory 辅助方法,并为回写计算一个 external_id 指纹。
扩展插件运行时的记忆搜索能力,使其支持 mode、chat_id、person_id、user_id、group_id、时间范围以及 respect_filter 选项。
改进 find_messages 的数据库会话处理,改为使用单一 session,并修复排序和过滤逻辑。
从 KnowledgeFetcher 中移除未使用的 LLMRequest 导入和初始化。
更新术语解释器(jargon explainer)的导入路径,使用新的模块位置。
更新 .gitignore 例外规则,允许特定的 pytest 数据文件被纳入版本控制。
文档小调整:明确人物事实提取规则(将直接使用的 “you” 改写为第三人称)。
2026-03-31 15:49:49 +08:00
A-Dawn
ea9a1b5802 Merge remote-tracking branch 'upstream/r-dev' into sync/pr-1564-upstream-20260331
# Conflicts:
#	src/chat/brain_chat/PFC/conversation.py
#	src/chat/brain_chat/PFC/pfc_KnowledgeFetcher.py
#	src/chat/knowledge/lpmm_ops.py
2026-03-31 10:43:55 +08:00
DrSmoothl
dc2bf02a42 feat: Introduce unified tooling system for plugins and MCP
- Added a new `tooling` module to define a unified model for tool declarations, invocations, and execution results, facilitating compatibility between plugins, legacy actions, and MCP tools.
- Implemented `ToolProvider` interface for various tool providers including built-in tools, MCP tools, and plugin runtime tools.
- Enhanced `MCPManager` and `MCPConnection` to support unified tool invocation and execution results.
- Updated `ComponentRegistry` and related classes to accommodate the new tool specifications and descriptions.
- Refactored existing components to utilize the new tooling system, ensuring backward compatibility with legacy actions.
- Improved error handling and logging for tool invocations across different providers.
2026-03-30 23:11:56 +08:00
DrSmoothl
e7dbaa1a70 汉化日志 2026-03-30 21:56:18 +08:00
SengokuCola
01ef29aadb feat:重构maisaka的消息类型,添加打断功能 2026-03-30 00:45:41 +08:00
SengokuCola
96844a9bf5 feat:修复一些bug 2026-03-29 18:28:56 +08:00
SengokuCola
82bbf0fd52 remove:移除tool_use模型,修复Jargon提取问题,修改统计为tool统计 2026-03-29 16:26:34 +08:00
SengokuCola
868438e3c1 feat:移除旧的工具系统,并使emoji成为maisaka内置动作 2026-03-29 15:25:36 +08:00
SengokuCola
614d2f43d6 私聊也走maisaka 2026-03-29 15:25:14 +08:00
SengokuCola
5876f246c0 feat:重新启用表达学习黑话学习,黑话使用和表达使用 2026-03-29 14:39:07 +08:00
SengokuCola
20bab79872 ref:移除一些荣誉模块,新建maisaka回复器 2026-03-29 01:00:43 +08:00
DrSmoothl
7a460a474d feat: 更新多个文件以使用 SessionMessage 替代 MaiMessage,并调整相关逻辑 2026-03-28 13:39:48 +08:00
DrSmoothl
0a08973c41 feat: Enhance emoji and image management with asynchronous background processing
- Added support for scheduling background tasks to build emoji and image descriptions when not found in cache.
- Improved error handling and logging for emoji and image processing.
- Updated `SessionMessage` processing to allow for optional heavy media analysis and voice transcription.
- Refactored logging messages for better clarity and consistency across various modules.
- Introduced a new function to build outbound log previews for messages, enhancing logging capabilities.
2026-03-26 23:03:47 +08:00
DrSmoothl
777d4cb0d2 feat: Enhance OpenAI compatibility and introduce unified LLM service data models
- Refactored model fetching logic to support various authentication methods for OpenAI-compatible APIs.
- Introduced new data models for LLM service requests and responses to standardize interactions across layers.
- Added an adapter base class for unified request execution across different providers.
- Implemented utility functions for building OpenAI-compatible client configurations and request overrides.
2026-03-26 16:15:42 +08:00
SengokuCola
a5fc4d172d feat:提供原生vlm支持 2026-03-24 20:57:57 +08:00
SengokuCola
6cfc92e66f feat:添加maisaka接管回复逻辑 2026-03-24 18:11:15 +08:00
A-Dawn
ded5a7478d merge: sync upstream/r-dev and resolve real conflicts 2026-03-24 15:36:26 +08:00
DrSmoothl
2c279f703c Revert "feat:尝试建立hfc逻辑"
This reverts commit bfc9781c4f.
2026-03-24 15:32:09 +08:00
DrSmoothl
0c508995dd feat: enhance session ID calculation and plugin management
- Updated `calculate_session_id` method in `SessionUtils` to include optional `account_id` and `scope` parameters for more granular session ID generation.
- Added new environment variables in `plugin_runtime` for external plugin dependencies and global configuration snapshots.
- Introduced methods in `RuntimeComponentManagerProtocol` for loading and reloading plugins globally, accommodating external dependencies.
- Enhanced `PluginRunnerSupervisor` to manage external available plugin IDs during plugin reloads.
- Implemented dependency extraction and management in `PluginRuntimeManager` to handle cross-supervisor dependencies.
- Added tests for session ID calculation and message registration in `ChatManager` to ensure correct behavior with new parameters.
2026-03-24 12:14:58 +08:00
DrSmoothl
18a0e7664a Refactor plugin runtime components and enhance message handling
- Removed unused core action mirror functionality from PluginRunnerSupervisor.
- Simplified action and command execution logic in send_service.py.
- Introduced ComponentQueryService for unified component querying in plugin runtime.
- Enhanced message component handling with new binary component support.
- Improved message sequence construction and detection of outbound message flags.
- Updated methods for sending messages to streamline the process and improve readability.
2026-03-24 12:14:41 +08:00
DrSmoothl
d07915eea0 Refactor message sending architecture and implement legacy driver support
- Removed UniversalMessageSender from group_generator.py and private_generator.py.
- Updated PlatformIOManager to manage legacy send drivers and ensure send pipeline readiness.
- Enhanced LegacyPlatformDriver to utilize prepared messages for sending.
- Refactored send_service to unify message sending logic and integrate with Platform IO.
- Added regression tests for Platform IO legacy driver and send service functionality.
2026-03-24 12:14:41 +08:00
DrSmoothl
e26b27c287 refactor: update message gateway handling and remove adapter references
- Changed the message sending method to return DeliveryBatch instead of DeliveryReceipt in integration.py.
- Removed AdapterDeclarationPayload and related references from envelope.py, replacing them with MessageGatewayStateUpdatePayload and MessageGatewayStateUpdateResultPayload.
- Updated runner_main.py to remove adapter-related logic and methods, focusing on message gateway functionality.
- Added tests for message gateway runtime state synchronization and action bridge functionality in test files.
2026-03-24 12:14:41 +08:00
DrSmoothl
4e2e7a279e feat: Implement adapter runtime state management and update handling
- Added support for adapter runtime state updates in the PluginRunnerSupervisor.
- Introduced new payload classes: AdapterStateUpdatePayload and AdapterStateUpdateResultPayload for handling state updates.
- Implemented methods to bind and unbind routes based on adapter connection status.
- Enhanced the NapCat adapter to report connection state and manage runtime state.
- Added tests for adapter runtime state synchronization and database session behavior in the statistic module.
- Updated existing methods to ensure proper handling of adapter state and route bindings.
2026-03-24 12:14:28 +08:00
DrSmoothl
85f060621d feat: Add NapCat adapter plugin and enhance message handling
- Introduced a built-in NapCat adapter plugin for MVP message forwarding.
- Implemented core functionalities for connecting to NapCat/OneBot v11 WebSocket service.
- Added message serialization capabilities for WebUI chat routes.
- Enhanced the RegisterPluginPayload to include optional adapter declarations.
- Implemented methods for handling external messages and adapter declarations in the PluginRunner.
- Improved the send_service to inherit platform IO route metadata for outgoing messages.
2026-03-24 12:13:17 +08:00
UnCLAS-Prommer
593400c0aa bot.py支持gateway的修改 2026-03-24 12:13:17 +08:00
SengokuCola
03ed59e388 更改文件结构 2026-03-24 11:36:26 +08:00
Dawn ARC
df872187d8 Merge branch 'r-dev' into r-dev 2026-03-24 10:00:58 +08:00
SengokuCola
bfc9781c4f feat:尝试建立hfc逻辑 2026-03-23 17:56:18 +08:00