tt-P607
a8dab4d648
完善本地图片配图功能并优化图片上传机制
2025-11-19 22:45:01 +08:00
雅诺狐
95bbce355a
Improve anti-injection detection logging and text extraction
...
Added detailed debug logs for text extraction and LLM detection input in the anti-injector module. Refactored message processing to only use user-added content for detection, avoiding duplicate text. Fixed import paths for command_skip_list in plugin manager and anti_injector_manager to reflect new module structure.
2025-11-19 22:45:01 +08:00
雅诺狐
31e028ab25
Refactor anti-injection system into modular subpackages
...
Split the anti-prompt-injector module into core, processors, management, and decision submodules for better maintainability and separation of concerns. Moved and refactored detection, shielding, statistics, user ban, message processing, and counter-attack logic into dedicated files. Updated imports and initialization in __init__.py and anti_injector.py to use the new structure. No functional changes to detection logic, but code organization is significantly improved.
2025-11-19 22:45:01 +08:00
minecraft1024a
b3174c4498
fix(bot): 移除加权随机彩蛋功能。(不要再闲的没事动那beyond的彩蛋了)
2025-11-19 22:45:00 +08:00
minecraft1024a
438bcc4f59
fix(chat): 修复主动思考范围配置及空用户ID问题
...
- 增加对 `proactive_thinking_chat_scope` 配置值的有效性验证,防止因无效配置导致意外行为。(乱填参数是吧,我跟你爆了)
- 修复了当 `user_id` 为 `None` 时可能引发的 `get_person_id` 调用错误,确保在这种情况下程序能够稳定运行。
2025-11-19 22:45:00 +08:00
minecraft1024a
f8bf0c7c1e
chore: 更新了配置文件
2025-11-19 22:44:59 +08:00
minecraft1024a
3777ec9d73
feat(chat): 实现可配置的主动思考范围并优化逻辑
...
- 将主动思考的prompt移至代码内部,并区分私聊和群聊场景。
- 增加`The_scope_that_proactive_thinking_can_trigger`配置项,允许用户将主动思考限制在“全部”、“私聊”或“群聊”范围。
- 删除了旧的`proactive_thinking_prompt_template`配置。
- 优化了主动思考的触发条件,现在会根据新的范围配置进行检查。
- 清理了代码中多余的空行和未使用的导入。
2025-11-19 22:44:59 +08:00
ikun-11451
35273ffc06
发现了乱改版本号会导致插件爆炸的猫猫喵~
2025-11-19 22:44:58 +08:00
ikun-11451
6abe119d21
修改了版本号喵~
2025-11-19 22:44:58 +08:00
tt-P607
fa32f48847
chore: 更新 .gitignore 忽略插件目录
2025-11-19 22:44:58 +08:00
tt-P607
1b15e23448
refactor(bot): 统一关闭逻辑到finally块
...
将优雅关闭(graceful_shutdown)的调用逻辑从`KeyboardInterrupt`异常处理块移动到`finally`块中。
这确保了无论程序是正常退出、收到中断信号,还是发生其他任何异常,都会尝试执行统一的、可靠的清理和关闭流程,从而增强了程序的健壮性。
2025-11-19 22:44:57 +08:00
雅诺狐
aefb3965d4
配置未和主框架耦合,移动到外部插件目录
2025-11-19 22:44:57 +08:00
tt-P607
2b0fd12f4b
refactor(maizone_refactored): 优化Cookie服务中备用HTTP获取逻辑
...
将获取Cookie的HTTP请求从GET改为POST,并增加domain参数,以适配更可靠的实现。同时,增强了对返回数据的解析和校验逻辑,确保能正确处理并转换Cookie字符串格式,提高了服务的健壮性和兼容性。
2025-11-19 22:44:57 +08:00
minecraft1024a
a31ee1ab5f
refactor(video): update config key from utils_video to video_analysis
2025-11-19 22:44:56 +08:00
Furina-1013-create
00eacc7570
改进focus模式下的回复逻辑,理论上现在focus模式下在bot被@ / 提及 时应该会回复了
...
采用的是在focus模式下移除no_reply动作的方式
同步更新bot_config_template里面的注释
2025-11-19 22:44:55 +08:00
minecraft1024a
4a3fc57e6f
refactor(antipromptinjector): 将每次输入都记录的 info 级别调至 debug
...
避免大量冗余信息在常规日志级别输出,保持日志整洁
2025-11-19 22:44:54 +08:00
minecraft1024a
7d13d0b6c2
fix(embedding): 彻底解决事件循环冲突导致的嵌入生成异常
...
通过以下改动修复嵌入生成过程中的事件循环相关问题:
- 在 EmbeddingStore._get_embedding 中,改为同步创建-使用-销毁的新事件循环模式,彻底避免嵌套事件循环问题
- 调整批量嵌入 _get_embeddings_batch_threaded,确保每个线程使用独立、短生命周期的事件循环
- 新增 force_new 参数,LLM 请求嵌入任务时强制创建新的客户端实例,减少跨循环对象复用
- 在 OpenAI 客户端的 embedding 调用处补充详细日志,方便排查网络连接异常
- get_embedding() 每次都重建 LLMRequest,降低实例在多个事件循环中穿梭的概率
此次改动虽然以同步风格“硬掰”异步接口,但对现有接口零破坏,确保了向量数据库及相关知识检索功能的稳定性。(还有就是把的脚本文件夹移回来了)
2025-11-19 22:44:54 +08:00
minecraft1024a
aa6e419fd0
feat(maizone_refactored): 在生成说说时融入当前时间信息
...
在生成说说的提示词中加入了当前的具体时间(年/月/日 时:分)和星期信息。同时,引导模型在生成内容时可以自然地提及当前时间,使得生成的说说更具时效性和真实感,更贴近用户发布那一刻的情境。
2025-11-19 22:44:53 +08:00
雅诺狐
f35d52401b
修复了专注错误
...
Updated logic in heartFC_chat.py and relationship_manager.py to prioritize 'chat_info_platform', then 'user_platform', and finally a default when determining platform information. Added a fallback to 'unknown' in get_person_id if platform is None, improving robustness when platform data is missing.
Co-Authored-By: tt-P607 <68868379+tt-P607@users.noreply.github.com >
2025-11-19 22:44:53 +08:00
minecraft1024a
64e3d6d56b
fix(cache): 兼容元组形式的 embedding_result
...
get_embedding 方法的返回值可能是一个包含向量和模型名称的元组
2025-11-19 22:44:52 +08:00
minecraft1024a
dcecd9cf7d
refactor(memory): 移除混合记忆模型,全面转向向量化瞬时记忆
...
删除了 `HybridInstantMemory` 模块及其复杂的策略判断、同步和检索逻辑。此举旨在简化记忆系统的架构,统一采用 `VectorInstantMemoryV2` 作为唯一的瞬时记忆解决方案。(虽然我也不知道效果好不好反正先转了再说,因为基于大模型的瞬时记忆有那么一点点慢)
2025-11-19 22:44:52 +08:00
minecraft1024a
f2e82cf82f
refactor(memory): 重构瞬时记忆为全量向量化存储模型
...
新系统采用“全量存储,定时清理”的设计理念,将所有聊天消息向量化并存入ChromaDB。通过后台线程定时清理过期消息,取代了之前基于“重要性模式”判断是否记忆的复杂逻辑。
主要变更:
- **全量存储**: 不再进行前置判断,所有消息均被向量化存储,简化了记忆创建流程。
- **定时清理**: 引入基于`threading`的后台任务,根据设定的`retention_hours`自动清理过期记忆,确保系统轻量高效。
- **简化检索**: 检索逻辑更新为直接查询相似消息,并增加了相似度阈值过滤和时间差格式化,提高了上下文的准确性和可读性。
在 `DefaultReplyer` 中,已切换至新的 `HybridInstantMemory`(其底层实现为V2),并优化了记忆上下文的构建逻辑,使其能更稳定地处理不同类型的记忆返回结果。
2025-11-19 22:44:50 +08:00
雅诺狐
1b81694373
Add aiohttp_gemini client type and update TaskConfig defaults
...
Added 'aiohttp_gemini' to allowed client types in APIProvider. Updated TaskConfig defaults: max_tokens to 800, temperature to 0.7, and concurrency_count to 1 for improved default behavior.
2025-11-19 22:44:49 +08:00
minecraft1024a
4fc7c51ee0
feat(memory): 引入基于向量的瞬时记忆系统
...
用基于 ChromaDB 和向量相似度的新瞬时记忆系统取代了原有的实现。此更改旨在提高记忆创建和检索的准确性和相关性。
主要变更:
- **向量化重要性判断**: 放弃了原有的 LLM 判断方法,通过将聊天记录与预定义的“重要性模式”进行向量相似度比较,来决定是否创建记忆。
- **高效去重**: 在存储新记忆之前,通过向量相似度检查,有效避免了内容重复。
- **精准检索**: 利用向量搜索,根据用户当前输入检索最相关的记忆,提高了上下文的连贯性。
- **双重存储**: 为了保持系统兼容性,记忆同时存储在 ChromaDB 向量数据库和现有的 SQLAlchemy 数据库中。
- **代码集成**: 在 `DefaultReplyer` 中将 `InstantMemory` 的实现切换为新的 `VectorInstantMemory`。
2025-11-19 22:44:49 +08:00
雅诺狐
0cb9705946
修复硬编码错误
2025-11-19 22:44:49 +08:00
雅诺狐
609bcb385b
修复硬编码错误
2025-11-19 22:44:48 +08:00
雅诺狐
b4fcdf5711
Add time and stream-based config for chat and expression
...
Introduces methods to dynamically determine talk frequency and expression learning settings based on current time and chat stream ID. Adds helper functions for parsing stream config strings, handling both global and stream-specific overrides for chat and expression configurations.
2025-11-19 22:44:48 +08:00
tt-P607
d78c449b37
修复AttributeError异常**:
...
- 在ChatConfig中添加get_current_talk_frequency()方法
- 在ExpressionConfig中添加get_expression_config_for_chat()方法,但是模型配置文件依旧被架空力😭 😭 😭 我解决不了,帮帮我!雅诺狐姐姐!😭 😭 😭
2025-11-19 22:44:47 +08:00
tt-P607
cd8fd47a91
修复qzone_service.py中缺失的pathlib.Path导入导致的无法查找到路径问题,还有host和端口的一些修改 👀 总之就是又混到提交了 😋
2025-11-19 22:44:47 +08:00
tt-P607
ce133bb9a1
修复了空间插件监控好友空间失败的问题
2025-11-19 22:44:47 +08:00
minecraft1024a
540e950a90
删除全新三层记忆系统架构 (V2.0) 设计文档,简化文档结构以便于后续更新和维护。
2025-11-19 22:44:46 +08:00
minecraft1024a
58f58144d0
refactor(chat): 调整消息选择的优先级
...
在确定 `action_message` 时,优先使用 `target_message` 而不是 `message_data`。
这一变更优化了消息处理流程,确保在存在明确的目标消息时,系统能够正确地选择它,从而避免了潜在的逻辑冲突,使行为更加符合预期。
Co-authored-by: 雅诺狐 <212194964+foxcyber907@users.noreply.github.com >
Co-authored-by: tt-P607 <68868379+tt-P607@users.noreply.github.com >
2025-11-19 22:44:46 +08:00
minecraft1024a
31b06fb4a3
~~哎呀,主人,你又在乱改代码了。这次的修改还真是……微妙呢。算了,看在你这么努力的份上,本小姐就帮你写个像样点的 commit message 吧。拿去用,不谢。~~
...
refactor(easter_egg): 简化彩蛋实现并移除未使用的选项
- 移除了 `bot.py` 中 `easter_egg` 函数内的加权随机选择逻辑,现在固定显示一个彩蛋。
- 删除了两个未被使用的彩蛋文本。
- 在 `src/main.py` 中为 `zip` 函数调用添加了 `strict=True` 参数,以增强代码的健壮性,确保彩蛋文本和权重列表长度严格匹配。
2025-11-19 22:44:46 +08:00
ikun两年半
35f3042d95
更新 bot.py
...
回调彩蛋喵~
2025-11-19 22:44:45 +08:00
雅诺狐
bb4592846c
Refactor config system to use Pydantic validation
...
Refactored configuration classes to inherit from a new ValidatedConfigBase using Pydantic for robust validation and error reporting. Updated api_ada_configs.py, config.py, config_base.py, and official_configs.py to replace dataclasses with Pydantic models, add field validation, and improve error messages. This change enhances configuration reliability and developer feedback for misconfigurations. Also includes minor code cleanups and removal of unused variables in other modules.
2025-11-19 22:44:45 +08:00
minecraft1024a
97ece6524c
refactor(utils): 移除自定义加权随机函数并改用 random.choices
...
将原先在 `bot.py` 中实现的 `weighted_choice` 函数移除,并在 `src/main.py` 中改用 Python 内置的 `random.choices` 函数来实现启动时彩蛋的加权随机选择。
这一更改简化了代码,提高了可读性,并利用了标准库的优化实现。同时调整了彩蛋文本和对应的权重。
2025-11-19 22:44:41 +08:00
雅诺狐
6e4047c807
Add rare easter egg message and adjust weights
...
Introduced a new rare easter egg message to the items list and updated the selection weights to make the new message extremely rare while adjusting the probabilities of the existing messages.
2025-11-19 22:44:41 +08:00
minecraft1024a
808954a372
refactor(chat): 禁用工具执行器的缓存功能(因为这玩意真的没几次命中过的)
2025-11-19 22:44:41 +08:00
ikun两年半
c1043ef50b
更新 bot.py
...
修改彩蛋权重喵~主打一个众生平等喵
2025-11-19 22:44:40 +08:00
雅诺狐
383f704b53
Remove unused imports across multiple modules
...
Cleaned up various files by removing unused or redundant import statements to improve code readability and reduce potential confusion. No functional changes were made.
2025-11-19 22:44:32 +08:00
雅诺狐
053bf81b25
Add weighted_choice utility and improve easter_egg randomness
...
Introduced a weighted_choice function for weighted random selection. Refactored the easter_egg function to use weighted_choice for more flexible and controlled message selection, replacing the previous randint-based logic.
2025-11-19 22:44:05 +08:00
ikun两年半
c2a8e9bd43
更新 bot.py
...
喵喵~修复了彩蛋概率问题喵~
2025-11-19 22:44:05 +08:00
minecraft1024a
46246d6f34
chore(deps): remove legacy gemini client and fix easter egg range
2025-11-19 22:44:04 +08:00
minecraft1024a
bd218db8e4
feat(彩蛋): 增加彩蛋文本的随机性
...
在 `easter_egg` 函数中引入了随机数生成逻辑。
现在有20%的概率显示猫娘文本,80%的概率显示一个原有的文本,增加了趣味性。
2025-11-19 22:44:04 +08:00
minecraft1024a
d355153a19
feat(video): 视频识别功能开关与日志优化
...
根据全局配置 `global_config.video_analysis.enable` 控制视频识别功能的启用与禁用。
- 当视频识别功能禁用时,收到视频消息将直接返回 `[视频]` 或空字符串,不再进行分析,以节约资源。
2025-11-19 22:44:04 +08:00
ikun-11451
be454303c5
喵喵~
2025-11-19 22:44:03 +08:00
雅诺狐
060fc24841
Create dependabot.yml
2025-11-19 22:44:03 +08:00
minecraft1024a
d20daaf3e2
新增反击模式支持,允许在检测到提示词注入攻击时生成反击响应并发送。更新相关配置和处理逻辑,增强系统的防护能力。
2025-11-19 22:44:03 +08:00
tt-P607
3e20d11eec
<Thinking>
...
我需要分析这个git diff,并生成一个与之前完全不同的commit message。
让我先分析变更内容:
1. **主要变更**:
- 在 `anti_injector.py` 中添加了新的 `auto` 处理模式
- 添加了命令跳过列表功能 (`command_skip_list`)
- 重构了反注入管理命令,从独立插件移动到核心动作插件
- 更新了配置文件以支持新功能
- 在插件管理器中添加了跳过列表刷新逻辑
2. **之前的commit message重点**:
- 强调了"advanced anti-injection capabilities"
- 重点描述了"intelligent 'auto' mode"
- 提到了"command skip list"
- 强调了"dynamically assesses threats"
- 提到了"refactored and integrated into core actions plugin"
3. **我需要完全不同的角度**:
- 可以从架构重构的角度
- 可以从用户体验改进的角度
- 可以从系统集成的角度
- 可以从性能优化的角度
让我从**系统架构优化和插件整合**的角度来写这个commit message,重点强调:
- 插件系统的重构和整合
- 管理命令的迁移和统一
- 跳过机制的实现
- 自动化决策系统的引入
这样就能避免使用之前message中的关键词和结构。
</Thinking>
refactor(plugins): 重构反注入插件架构并优化命令管理体系
将反注入管理功能从独立插件迁移至核心动作模块,实现更好的系统集成。新增智能跳过机制,允许已注册的插件命令绕过检测流程,有效减少误判。同时引入自适应处理策略,系统可根据威胁评估结果自主选择最适当的响应方式。
插件管理器现已集成自动刷新功能,确保跳过列表与插件状态保持同步。配置系统扩展支持多种跳过模式和自定义规则,提升了整体可维护性和用户体验。
ps:谢谢雅诺狐姐姐投喂的提交喵^ω^
2025-11-19 22:44:03 +08:00
minecraft1024a
b3d02ff1c3
feat(cache): 用文件修改时间替换源码哈希生成缓存键
...
BREAKING CHANGE: CacheManager 的 _generate_key/get/set 方法签名变更,现在需要传入 tool_file_path 而非 tool_class 实例,所有调用方需跟进适配。
2025-11-19 22:44:01 +08:00