Commit Graph

8015 Commits

Author SHA1 Message Date
Windpicker-owo
fa9b0b3d7e feat(database): 优化消息查询和计数逻辑,增加安全限制以防内存暴涨 2025-12-09 17:35:23 +08:00
雅诺狐
c971f7bb8c Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-09 13:57:24 +08:00
雅诺狐
03ab135bbb 锁文件提交 2025-12-09 13:56:41 +08:00
Windpicker-owo
5d6c70d8ad Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-09 13:54:47 +08:00
Windpicker-owo
5a0294d5c0 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-09 13:54:34 +08:00
雅诺狐
cb0ad1ef66 Update .gitignore 2025-12-09 13:54:30 +08:00
Windpicker-owo
c008dd0ebd feat(mem_monitor): 添加内存监控阈值和详细数据采集逻辑 2025-12-09 13:54:25 +08:00
雅诺狐
90da041fa6 Update pyproject.toml 2025-12-09 13:53:21 +08:00
雅诺狐
a6aad8b8ea Revert "fix(redis): 添加Redis缓存模块导入异常处理"
This reverts commit f76cf36bae.
2025-12-09 13:52:42 +08:00
Windpicker-owo
39582bee41 refactor(permission): 移除权限不足时的消息发送逻辑 2025-12-08 22:48:28 +08:00
Windpicker-owo
a2be8685c2 将GPT-SoVITS TTS移出built in,优化kfc提示词 2025-12-08 22:08:31 +08:00
Windpicker-owo
f76cf36bae fix(redis): 添加Redis缓存模块导入异常处理 2025-12-08 20:54:23 +08:00
Windpicker-owo
094861e6b7 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 18:11:33 +08:00
Windpicker-owo
b5e7f6313f fix(sqlite): 调整busy_timeout设置为10秒以减少锁定错误 2025-12-08 18:11:23 +08:00
Windpicker-owo
7c2843de64 feat(postgresql): 增强PostgreSQL会话级性能优化配置 2025-12-08 18:08:37 +08:00
雅诺狐
87bd071ced Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 17:44:00 +08:00
雅诺狐
da27c865d0 引入Redis 2025-12-08 17:42:57 +08:00
Windpicker-owo
e148cfd16b feat(memory): 使用异步初始化确保统一记忆管理器已准备就绪 2025-12-08 17:30:11 +08:00
Windpicker-owo
01bcfb491a Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 17:19:33 +08:00
Windpicker-owo
a1d60ab026 启用数据库预加载器,清理日志 2025-12-08 17:17:53 +08:00
雅诺狐
f9b193c86d Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 15:48:44 +08:00
雅诺狐
3edcc9d169 ruff 2025-12-08 15:48:40 +08:00
Windpicker-owo
96ed5a6789 feat(embedding): 优化embedding缓存管理,避免无关标签的缓存影响内存使用 2025-12-08 15:40:29 +08:00
Windpicker-owo
084192843b feat(mem_monitor): 禁用内存监控功能 2025-12-08 12:08:56 +08:00
Windpicker-owo
071a160da9 feat(plugin): 禁用 hello_world_plugin 插件
refactor(prompt): 将日志级别从 info 调整为 debug
fix(mem_monitor): 启用内存监控并调整监控间隔至 2400s
feat(llm_models): 添加系统提示支持,优化请求策略
refactor(main): 更新内存监控启动日志信息
refactor(user_profile_tool): 将用户画像更新日志级别调整为 debug
refactor(exa_engine): 移除搜索引擎请求中的高亮片段选项
feat(system_prompt): 添加系统提示内容
2025-12-08 12:02:44 +08:00
Windpicker-owo
43dbfb2a1e feat(waiting): 添加连续等待超时次数上限配置,优化等待策略 2025-12-07 16:50:18 +08:00
Windpicker-owo
9f666b580e feat(waiting): 添加等待策略配置,支持最大、最小等待时间及倍率调整 2025-12-07 16:38:46 +08:00
Windpicker-owo
fbc37bbcaf refactor(logging): 简化日志记录,移除冗余调试信息
delete(connection_pool): 移除连接池管理器相关代码
2025-12-07 15:19:12 +08:00
tt-P607
1667bdc4c0 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-06 22:05:03 +08:00
tt-P607
b372cb8fe0 feat(tts): 动态加载动作参数的语音风格
重构 TTS 插件,以便根据配置文件动态更新 `voice_style` 参数描述。

之前,可用语音风格列表是在模块导入时静态加载的。如果在不重启服务器的情况下更改了配置,planer 可能会使用过时的列表。

此更改引入了两种动态更新机制:
- 现在 `TTSVoiceAction` 构造函数会为每个实例更新参数描述。
- 重写了 `get_action_info` 类方法,以便 planner 查询动作详情时可以获取最新的风格。

这确保 LLM 始终能够访问最新的可用语音风格列表,提高 TTS 功能调用的可靠性。

此外,TTS 插件现在在模板配置中默认为禁用,以防在新设置中意外启用。
2025-12-06 22:04:51 +08:00
minecraft1024a
2235920908 fix(plugin): 检查组件可用性时增加对其所属插件状态的判断
在 `is_component_enabled` 方法中,增加了对组件所属插件启用状态的检查。

此前,该方法仅检查组件自身的全局或局部状态,这可能导致一个已禁用插件下的组件仍然被错误地判断为“可用”,从而引发非预期行为。

本次修改确保在检查组件自身状态前,先验证其所属插件是否已启用。这使得组件的生命周期与其所属插件的状态保持一致,提高了系统的健壮性。
2025-12-06 19:03:32 +08:00
minecraft1024a
af59966d8b feat(plugin): 防止禁用最后一个启用的 Chatter 组件
为了确保系统的核心对话功能始终可用,在禁用插件时增加了保护机制。

该机制会检查目标插件是否包含 Chatter 组件。如果是,它会进一步判断禁用该插件是否会导致系统中没有任何已启用的 Chatter 组件。如果出现这种情况,禁用操作将被阻止并返回失败,从而避免因误操作导致系统核心功能失效。
2025-12-06 18:40:02 +08:00
minecraft1024a
70c8557e02 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-06 18:32:18 +08:00
minecraft1024a
b1e7b6972d feat(plugin): 添加动态加载插件的 API
新增 `load_plugin` 函数,允许在运行时加载一个已注册但未加载的插件。
这为更灵活的插件管理(例如热加载)提供了基础支持。
2025-12-06 18:32:15 +08:00
Eric-Terminal
2348dc1082 feat: 集成 AWS Bedrock 支持
- 新增 BedrockClient 客户端实现,支持 Converse API
- 支持两种认证方式:IAM 凭证和 IAM 角色
- 支持对话生成、流式输出、工具调用、多模态、文本嵌入
- 添加配置模板和完整文档
- 更新依赖:aioboto3, botocore
2025-12-06 17:26:40 +08:00
Eric-Terminal
c059c7a2f1 feat: 启动时记录可选依赖 objgraph/pympler 的可用性 2025-12-06 02:23:42 +08:00
Eric-Terminal
5b98038425 fix: 将 pympler 和 objgraph 改为可选依赖,修复 Docker 镜像启动失败问题 2025-12-06 02:16:00 +08:00
Eric-Terminal
67e33011ef chore: add pympler>=1.1 to dependencies 2025-12-05 19:22:27 +08:00
minecraft1024a
125c283d65 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-05 19:15:18 +08:00
minecraft1024a
b8bbd7228f feat(plugin): 调整插件路由前缀以避免组件冲突
将插件组件的路由前缀从 `/plugins/{plugin_name}` 修改为 `/plugins/{plugin_name}/{component_name}`。

此项更改旨在解决单个插件注册多个路由组件时可能出现的路径冲突问题,确保每个组件都拥有唯一的 API 端点。

此外,为了支持新的前端开发环境,已将端口 11451 和 3001 添加到 CORS 允许源列表中。

BREAKING CHANGE: 插件 API 的 URL 结构已发生变更。所有对插件接口的调用都需要更新为新的 `/plugins/{plugin_name}/{component_name}` 格式。
2025-12-05 19:15:14 +08:00
Eric-Terminal
5f2bf2f8f4 chore: add objgraph>=3.6.2 to dependencies 2025-12-05 19:01:54 +08:00
tt-P607
fa8555aeb7 docs(prompt): 完善用户资料工具使用指南
加强了 `UserProfileTool` 文档字符串中的规则,以确保语言模型捕获的数据更高质量、更准确。

此更改引入了明确且严格的标准,规定什么构成有效的 `alias`(别名)、`preference`(偏好)和 `key_info`(关键信息)。目标是防止模型将对话噪音、主观解读或临时互动存储为真实用户数据。

- **别名(Alias):** 必须是明确说明的昵称,不得为临时或开玩笑的称呼。
- **偏好(Preference):** 限于现实世界的爱好和兴趣,不包括对话中的动态内容。
- **关键信息(Key Info):** 限于客观且可验证的事实,不包括主观感受或关系描述。
2025-12-05 02:58:59 +08:00
tt-P607
5ecfb01552 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-05 02:15:59 +08:00
tt-P607
6081eeafea fix(prompt): 加强指令以防止伪造 @ 提及
大型语言模型(LLM)有时会在回复中生成无法使用的 `@username` 提及,这些提及以纯文本形式出现,造成不佳的用户体验。

此次提交更新了提示模板,更明确、强烈地禁止生成包含 `@` 符号的任何文本。新的指令还解释了模型 *为什么* 不能创建真实的提及,说明这是系统级显示格式,模型无法复制。这应当消除伪造提及的生成。
2025-12-05 02:15:14 +08:00
Windpicker-owo
06a45b3639 refactor: 移除对 MySQL 的支持,更新文档和配置以仅支持 SQLite 和 PostgreSQL 2025-12-04 23:30:43 +08:00
Windpicker-owo
63cb81aab6 fix: 更新配置文件,禁用身份压缩以提高回复性能
refactor: 移除日志信息以简化回复和响应动作
2025-12-04 22:49:56 +08:00
Windpicker-owo
2e7b434537 refactor: 使用异步生成器迁移到事件驱动模型以进行聊天流管理
- 用异步生成器替换了无限循环任务,以处理聊天流事件。
引入了`ConversationTick`数据模型来表示会话事件。
- 更新了`StreamLoopManager`,以使用新的基于生成器的方法来管理聊天流。
- 在聊天流处理过程中增强了错误处理和日志记录功能。
- 改进了聊天流的生命周期管理,包括启动和停止方法。
- 删除了与之前的循环工作线程实现相关的遗留代码。
2025-12-04 22:40:12 +08:00
Windpicker-owo
1dfa44b32b fix(config): 更新版本号至 0.13.1-alpha.1 2025-12-04 22:04:27 +08:00
Windpicker-owo
43e25378c8 feat(napcat): 添加事件处理过滤机制,支持黑白名单功能 2025-12-04 21:33:50 +08:00
Windpicker-owo
53bb77686b Revert "feat(chromadb): 添加全局锁以保护 ChromaDB 操作,确保线程安全"
This reverts commit e7cb04bfdd.
2025-12-04 21:04:55 +08:00