mcn1630
4b0af154a6
Merge branch 'dev' of https://github.com/mcn1630/MoFox-Core into patch
2025-11-28 17:26:12 +08:00
喵吃鸟
25de6d5664
Merge branch 'MoFox-Studio:dev' into dev
2025-11-28 17:24:36 +08:00
mcn1630
2a4f73859d
feat:为tts增加Qwen-Omni接口
2025-11-28 17:24:05 +08:00
tt-P607
103a6edaf3
feat(emoji): 增强消息上下文下的表情选择并修复存储用户信息的问题
...
该提交对表情操作及相关消息发送 API 进行了重大改进。
现在,表情选择逻辑更加具备上下文感知能力。LLM 提示现在包括机器人的待发送回复内容,使其能够根据对话历史和自身回复选择更合适的表情。用于上下文的近期聊天记录也有所增加。
此外,修复了插件发送 API (`send_api`) 中的一个错误。之前,当机器人发送消息时,消息在数据库中存储的是接收者的用户信息,而非机器人的信息。本次提交通过显式传递并使用机器人的用户信息进行存储,确保消息历史准确反映发送者。
其他更改包括:
- 重构表情操作的激活逻辑以提高清晰度。
- 改进 LLM 选择的表情描述匹配算法。- 为配置访问添加必要的类型安全检查。
2025-11-28 15:24:08 +08:00
喵吃鸟
e65beb2767
Merge branch 'MoFox-Studio:dev' into dev
2025-11-28 12:41:48 +08:00
tt-P607
588830c819
feat(tts): 在初始化时自动生成默认配置文件
...
当 TTS 插件首次初始化时,现在会检查其配置文件是否存在。如果未找到文件,将自动创建一个默认的 `config.toml`,其中包含预填充的、已注释的设置。
这一改进显著提升了用户体验,通过提供一个可立即使用的模板,引导用户如何配置 TTS 服务,而无需查阅文档。它可以防止因缺少配置文件而导致的启动错误,并简化初始设置过程。
2025-11-28 11:17:23 +08:00
tt-P607
82fe115268
refactor(core): 提高配置访问安全性并优化记忆判断提示
...
此提交引入了若干关键改进,以增强应用程序的稳定性和智能性。
首先,通过在 `main.py` 和 `memory_graph/manager_singleton.py` 的关键初始化路径中为 `global_config` 及其嵌套属性添加全面的空值检查,增强了系统的稳健性。这可以防止在配置加载失败或不完整时出现潜在的 `AttributeError` 异常,使应用程序的启动过程更加可靠。
其次,在 `UnifiedMemoryManager` 中的“记忆判断”模型提示已大幅优化。新的提示提供了更严格的指导,避免在简单交互(如问候或闲聊)中进行不必要的长期记忆查询。这一优化通过使记忆检索过程更加高效和具上下文意识,提高了响应速度并降低了计算开销。
最后,新配置已在 Napcat 适配器中添加了选项,以更精细地控制消息处理,包括启用/禁用视频处理和配置自动@回复。
2025-11-28 10:57:01 +08:00
tt-P607
c040cf08e8
Revert "refactor(core): 提升类型安全性并添加配置空值检查"
...
This reverts commit abfcf56941 .
2025-11-28 10:33:49 +08:00
tt-P607
abfcf56941
refactor(core): 提升类型安全性并添加配置空值检查
...
此提交在核心模块中引入了多项改进,以增强类型安全性和健壮性,主要通过为类型提示添加 `cast` 并在访问 `global_config` 属性前进行空值检查实现。
主要改动包括:
- **类型安全**:在 `message_handler.py`、`unified_manager.py` 和 `napcat_adapter` 的消息处理器中使用 `typing.cast` 来解决类型不一致问题并提高静态分析的准确性。
- **配置空值检查**:在 `message_handler.py` 和 `message_processor.py` 中添加对 `global_config` 及其嵌套属性的检查,以防止在应用启动或配置加载过程中出现 `NoneType` 错误。
- **内存管理提示**:优化了 `unified_manager.py` 中内存判断器的提示,使其在获取长期记忆时更加保守,从而提升简单交互的性能。
- **Napcat 适配器**:新增了视频处理的配置选项以及回复行为。同时改进了消息解析逻辑的鲁棒性。- **消息处理器**:重构了 `_process_message_segments` 及相关函数,移除了未使用的 `message_info` 参数,从而简化了函数签名。
2025-11-28 10:15:53 +08:00
tt-P607
883e391010
refactor(napcat): 在语音消息处理程序中移除未使用的 TTS 检查
...
`handle_voice_message` 方法中对 `voice.use_tts` 配置的检查已被移除,因为它是多余的。将消息编码为语音的决定在上游处理,因此在此阶段无需此检查。此外,添加了日志警告以处理接收到空语音消息的情况。
2025-11-28 08:24:02 +08:00
tt-P607
655e535d96
Revert "feat(chat): 通过动作参数实现专用的 @用户 功能"
...
This reverts commit e5117720c6 .
2025-11-28 08:21:06 +08:00
tt-P607
e5117720c6
feat(chat): 通过动作参数实现专用的 @用户 功能
...
此提交引入了一种在回复中提及(@)用户的稳健机制。此功能不再由 LLM 直接生成“@”文本,而是通过 `reply` 和 `respond` 动作中新增加的 `at_user_id` 参数来处理。
主要变化包括:
- **核心动作:** 在 `ReplyAction` 和 `RespondAction` 中添加可选的 `at_user_id` 参数,用于指定要提及的用户。
- **提示工程:** 更新了 `default_generator` 提示,以指导 LLM 如何使用新的 `at_user_id` 参数,而不是生成“@”文本。
- **动作管理器:** `ChatterActionManager` 现在会检查动作数据中的 `at_user_id`。如果存在,它会使用新的 `SEND_AT_MESSAGE` 命令,确保提及格式正确并发送。
- **发送 API:** 在 `send_api` 中引入新的 `at_user_to_stream` 函数,用于处理发送独立的 `@` 段落。
- **类型安全与重构:** 改进了类型提示跨多个文件(`mofox_wire` 类型、`cast` 等)进行了修改,并增加了对 `global_config` 是否存在的检查,以防止运行时可能出现的 `NoneType` 错误,从而提高了整体代码的稳定性。
2025-11-28 02:54:47 +08:00
tt-P607
e7cd20e3f9
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev
2025-11-28 00:47:13 +08:00
tt-P607
252379db52
refactor(prompt): 通过移除新话题生成简化主动聊天逻辑
...
从群聊和私聊的主动互动决策提示中移除了“开启新话题”选项。此更改使机器人行为更加简化,专注于继续现有对话和表达关心,避免引入可能不相关或突兀的话题。
“新话题头脑风暴”步骤已被移除,`throw_topic` 的适用场景现在仅限于继续对话或表达关心。此外,推荐的消息长度已缩短至15-25个字符,以鼓励更简洁自然的互动。
2025-11-28 00:47:03 +08:00
喵吃鸟
79a85e74b6
Merge branch 'MoFox-Studio:dev' into dev
2025-11-27 23:14:13 +08:00
Windpicker-owo
a06510b9b6
feat: 添加通知消息处理功能,支持戳一戳、禁言等事件,并更新相关逻辑
2025-11-27 22:54:58 +08:00
喵吃鸟
60057b5283
Merge branch 'MoFox-Studio:dev' into dev
2025-11-27 22:48:31 +08:00
Windpicker-owo
3538716515
fix: 更新版本号至 0.13.0,增强数据库迁移功能,注册通知事件处理
2025-11-27 22:37:50 +08:00
Windpicker-owo
92c4c43d39
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev
2025-11-27 22:08:27 +08:00
Windpicker-owo
26520c123a
feat: 添加通知处理功能,支持戳一戳、表情回复、群禁言等事件
2025-11-27 22:08:08 +08:00
tt-P607
a0d0a71b63
feat(napcat): 支持直接和反向 WebSocket 模式
...
Napcat 适配器现在支持“直接”(客户端)和“反向”(服务器)两种 WebSocket 连接模式。可以通过插件配置中的 `napcat_server.mode` 设置进行配置。
此外,此次提交修复了群组和私信消息过滤中的一个错误,即配置中的数字 ID 未能正确与消息中的字符串 ID 进行比较。现在所有列表 ID 都会被转换为字符串,以确保过滤可靠。
2025-11-27 21:34:11 +08:00
喵吃鸟
c2ebe54e42
Merge branch 'MoFox-Studio:dev' into dev
2025-11-27 21:26:56 +08:00
Windpicker-owo
ee39ba0fd2
feat: 添加黑白名单过滤系统以控制消息处理
2025-11-27 18:55:16 +08:00
mcn1630
f718149845
update
2025-11-27 17:16:09 +08:00
mcn1630
166f1f9ef5
update
2025-11-27 16:42:31 +08:00
mcn1630
abfc808859
update
2025-11-27 16:30:22 +08:00
拾风
94b889f34e
Merge branch 'dev' into mofox-bus
2025-11-26 22:52:06 +08:00
tt-P607
6200108391
feat(chatter):引入可配置的单回复和多回复模式
...
此提交引入了一个新的配置选项 `chat.enable_multiple_replies`,允许对聊天机器人的对话行为进行更大的控制。
之前,规划器的回复策略是硬编码以支持多回复的。此更改将提示生成重构为根据新的配置设置动态生成。
- 当 `enable_multiple_replies` 为 `true`(默认行为)时,机器人可以在单轮对话中生成多个 `reply` 动作,同时处理多条消息或多个用户。
- 设置为 `false` 时,提示会指示机器人遵循“单目标原则”,强制其仅选择最重要的一条消息进行回复。
这是通过将回复策略和输出格式说明从静态的 `planner_prompts.py` 移动到 `plan_filter.py` 实现的,在那里它们会在被注入主提示模板之前根据条件生成。
2025-11-26 22:30:32 +08:00
Windpicker-owo
9f82671972
Merge branch 'dev' into mofox-bus
2025-11-26 22:25:39 +08:00
Windpicker-owo
0dc41bc839
refactor(emoji_manager): 使用异步任务处理表情描述生成,优化错误处理逻辑
...
refactor(graph_store): 移除冗余日志信息,简化内存边同步逻辑
refactor(affinity_chatter): 将信息日志级别更改为调试级别
2025-11-26 21:38:46 +08:00
Windpicker-owo
0908fb50a0
优化日志
2025-11-26 21:16:16 +08:00
Windpicker-owo
e0157256b1
feat(napcat_adapter): 添加请求处理程序、发送处理程序、视频处理程序以及实用函数
...
- 实现了request_handler.py来处理对核心的请求。
- 创建了send_handler.py文件,用于处理并向Napcat发送消息。
- 添加了video_handler.py文件,用于从QQ消息中下载和处理视频文件。
- 开发了utils.py,用于缓存和实现与Napcat操作相关的实用函数。
- 为群组、成员和自身信息引入了带有生存时间(TTL)设置的缓存机制。
- 新模块中增强了错误处理和日志记录功能。
2025-11-26 20:09:41 +08:00
Windpicker-owo
46a98fefc4
重构:更新聊天流中打断计数的重置逻辑,简化元事件处理器的实现
2025-11-26 17:58:31 +08:00
Windpicker-owo
d28ba27f26
重构:统一平台字段命名,更新相关数据模型和消息处理逻辑
2025-11-26 17:34:25 +08:00
Windpicker-owo
8fc4cd4c3b
重构:移除过时的napcat_adapter_plugin组件
...
- 从napcat_adapter_plugin中删除了stream_router.py、utils.py、video_handler.py、websocket_manager.py和todo.md文件。
- 在napcat_cache.json中为组和成员信息引入了一种新的缓存结构。
- 通过移除未使用的模块和整合功能,简化了插件的架构。
2025-11-26 16:40:31 +08:00
Windpicker-owo
8a6b141017
重构代码以使用 mofox_wire 替代 mofox_bus,更新相关文档和示例
2025-11-25 22:45:57 +08:00
Windpicker-owo
b6de9b5a9c
重构聊天系统中的消息发送与处理
...
- 更新了`uni_message_sender.py`,使用`MessageEnvelope`来发送消息,取代了之前的`MessageSending`结构。
- 引入了`send_envelope`函数,通过改进日志记录和错误处理来简化消息发送流程。
- 修改了`HeartFCSender`以直接处理`MessageEnvelope`,确保与新消息结构的兼容性。
- 重构了`default_generator.py`,以构建`MessageEnvelope`而不是`MessageSending`,从而增强了消息构建逻辑。
- 调整了`utils.py`中的效用函数,以使用`DatabaseUserInfo`来处理用户信息。
- 更新了`send_api.py`以构建和发送`MessageEnvelope`,从而改进了消息分发逻辑。
- 从插件系统中移除了已弃用的`MaiMessages`类,清理了未使用的代码。
- 增强了`napcat_adapter_plugin`以适应新的消息结构,确保消息的正确处理和发送。
- 对代码进行整体清理和整理,以提高可维护性和可读性。
2025-11-25 21:54:27 +08:00
Windpicker-owo
6b3b2a8245
重构并增强Napcat适配器的功能
...
- 更新了`BaseAdapter`以简化子进程处理。
- 对`AdapterManager`进行了重构,以便根据适配器的`run_in_subprocess`属性来管理适配器。
- 增强了`NapcatAdapter`,以利用新的`CoreSinkManager`实现更优的进程管理。
- 在`utils.py`中实现了针对群组和成员信息的缓存机制。
- 改进了`message_handler.py`中的消息处理,以支持各种消息类型和格式。
- 已将插件配置版本更新至7.8.3。
2025-11-25 19:55:36 +08:00
Windpicker-owo
1ebdc37b22
重构ChatStream和StreamContext:移除context_manager引用
...
- 在ChatStream及相关类中,将所有context_manager的实例替换为直接上下文访问。
- 更新方法,利用新的上下文结构来管理聊天状态和消息。
- 增强的StreamContext,增加了用于消息处理、统计和历史管理的方法。
- 在重构过程中改进了错误处理和日志记录。
2025-11-25 12:01:26 +08:00
tt-P607
714bef7c2b
feat(chatter): 优化主动聊天的决策和话题生成
...
优化主动聊天的提示,以提高决策质量。
- 为“do_nothing”选项添加了高优先级规则,以防止机器人在最后一次发送消息后再次发言。
- 引入了结构化的“三级方法”来生成新话题,确保话题与最近的对话相关,并且感觉更自然、更像人类。
2025-11-24 15:58:52 +08:00
Windpicker-owo
36fce6ca98
feat: 添加带有消息处理和路由功能的NEW_napcat_adapter插件
...
- 为NEW_napcat_adapter插件实现了核心模块,包括消息处理、事件处理和路由。
- 创建了MessageHandler、MetaEventHandler和NoticeHandler来处理收到的消息和事件。
- 开发了SendHandler,用于向Napcat发送回消息。
引入了StreamRouter来管理多个聊天流,确保消息的顺序和高效处理。
- 增加了对各种消息类型和格式的支持,包括文本、图像和通知。
- 建立了一个用于监控和调试的日志系统。
2025-11-24 13:24:55 +08:00
tt-P607
690d4e4fca
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev
2025-11-23 19:30:09 +08:00
tt-P607
8f1dc4c70b
feat(napcat):增加 websocket 连接重试次数
...
此更改将建立 websocket 连接的最大重试次数从 3 次提高到 10 次。此调整有助于提高适配器的稳定性,以及在网络不稳定的环境中建立连接的能力。
2025-11-23 19:30:03 +08:00
minecraft1024a
33c6ddc6dd
style(log): 统一日志格式,使用文本标签替代emoji前缀
...
将日志消息中的 emoji 前缀(如 ✅ , ❌ , ⚠️ )替换为更清晰、更易于解析的文本标签(如 [成功], [错误], [警告])。
这一改动有以下好处:
- 提高了在不同终端和环境下的日志可读性与一致性。
- 避免了 emoji 字符可能导致的渲染问题。
- 使日志更易于被自动化工具进行筛选和分析。
2025-11-23 14:40:34 +08:00
minecraft1024a
787b8f01f3
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev
2025-11-23 14:26:48 +08:00
minecraft1024a
7f74fc473e
style(log): 移除日志输出中的 emoji 符号
...
为了在不同终端和环境中保持日志输出的整洁与一致性,统一移除了日志信息中的 emoji 符号。
此举旨在避免潜在的渲染问题,并使日志更易于程序化解析和人工阅读。同时,对部分代码进行了微小的类型标注优化。
2025-11-23 14:26:44 +08:00
tt-P607
9d1ebba373
feat(proactive_thinking): 优化主动思考功能,实现场景化响应
...
本次更新针对主动思考(Proactive Thinking)功能进行了多项重要优化,旨在提升其智能化、灵活性和稳定性。
主要变更:
1. **新增聊天场景区分**:
* 在 `proactive_thinking_executor.py` 中增加了对群聊(group)和私聊(private)场景的判断逻辑。
* 为两种场景分别创建了独立的、更具针对性的决策和回复提示词模板(`_group` 和 `_private` 后缀),使主动发言更贴合不同聊天氛围。
2. **上下文长度配置化**:
* 移除了原先在代码中硬编码的上下文长度(`limit=40`)。
* 现在,功能会直接读取 `bot_config.toml` 中 `[chat]` 部分的 `max_context_size` 配置,实现了与全局配置的统一,增强了灵活性。
3. **优化触发机制,减少跳过**:
* 针对群聊等繁忙场景下,因 `chatter` 正在处理消息而导致主动思考被频繁跳过的问题,增加了一个短暂的等待和重试机制。
* 现在,当检测到 `chatter` 忙碌时,会等待3秒后再次检查,提高了主动思考的成功触发率。
此次修改使得主动思考功能更加智能、可配置,并能更好地适应复杂的聊天环境。
```
2025-11-23 10:53:06 +08:00
tt-P607
19fefeb284
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev
2025-11-23 02:24:35 +08:00
tt-P607
f464befe66
fix(planner): 当缺少 target_id 时确保设置动作消息
...
当 LLM 规划器没有为某个动作指定 `target_message_id` 时,系统现在将默认使用上下文中的最新消息。这确保了需要消息上下文的动作(如引用或回复)有一个有效的 `action_message` 对象,从而防止潜在的 `None` 引用错误。
2025-11-23 02:24:23 +08:00
minecraft1024a
725df21215
feat(plugin): 简化局部组件管理命令,自动检测组件类型
...
移除了 `enable_local` 和 `disable_local` 命令中的组件类型参数,改为通过组件名称自动搜索。这简化了用户操作,无需记忆组件的具体类型。
- 当找到多个同名组件时,将提示用户并中止操作,避免歧义。
- 新增保护机制,防止用户局部禁用路由、提示词等核心类型的组件,以增强系统稳定性。
2025-11-22 21:29:08 +08:00