Commit Graph

56 Commits

Author SHA1 Message Date
tt-P607
200cad4630 feat(schedule): 引入弹性睡眠与睡前通知机制
新增了弹性睡眠功能,使AI的入睡行为更加自然。AI现在会根据睡眠压力决定是否延迟入睡,而不是严格按日程表时间立即休眠。

主要更新包括:
- **弹性睡眠逻辑**: 在进入理论睡眠时间时,会有一段5-10分钟的准备缓冲期。如果睡眠压力低于阈值,AI会推迟入睡,以增加互动时间。
- **睡前通知**: 在决定入睡后,AI可以自动向指定群组发送晚安消息。
- **配置选项**: 在配置文件中增加了相关选项,允许用户启用/禁用这些功能,并自定义睡眠压力阈值、最大延迟时间、通知群组和提示词。
- **代码重构**: 对 `is_sleeping` 方法进行了重构,将其拆分为理论睡眠时间判断和核心弹性逻辑,提高了代码的可读性和可维护性。
2025-11-19 22:49:07 +08:00
tt-P607
ed720c1218 feat(monthly_plan): 增加月度计划数量上限并自动清理
style: 优化月度计划相关日志输出

- 在数据库模块中新增物理删除月度计划的函数 `delete_plans_by_ids`
- 在月度计划管理器中引入 `max_plans_per_month` 配置,用于限制每月计划数量
- 当检测到计划数量超出上限时,自动按创建时间删除最旧的计划以维持数量限制
- 优化了标记计划完成和删除计划时的日志记录,使其输出更详细的计划内容
- 调整了检查现有计划时的日志信息,使其更清晰
2025-11-19 22:48:58 +08:00
minecraft1024a
3948fbacbe refactor(schedule): 重构日程与月度计划管理模块
将 `schedule_manager` 和 `monthly_plan_manager` 从 `src/manager` 移动到 `src/schedule` 目录,以更好地组织与日程和计划相关的功能。

主要变更:
- 将 `schedule_manager` 和 `monthly_plan_manager` 移动到新的 `src/schedule` 目录。
- 更新了所有对这两个模块的导入路径,以反映新的文件位置。
- 删除了旧的 `src/manager` 目录下的模块文件。
- `monthly_plan_manager` 内部实现被重构,取代了原有的 `plan_generator.py`,简化了计划生成逻辑。
2025-11-19 22:48:42 +08:00
雅诺狐
ab3a36bfa7 全面更换orjson 2025-11-19 22:47:10 +08:00
minecraft1024a
fcb7a85e69 refactor(schedule): 重构月度计划生成器以增强稳定性和可维护性
将计划生成逻辑重构为使用统一的 `LLMRequest` 类,以简化模型调用流程。此更改消除了原有的手动选择模型、构建客户端和处理响应的复杂逻辑。

引入了 Pydantic 模型 `PlanResponse` 对 LLM 的 JSON 输出进行严格的验证和解析,并集成了 `json_repair` 库来自动修复格式错误的 JSON。这些措施显著提高了计划生成功能的健壮性和对 LLM 异常输出的容错能力。
2025-11-19 22:45:17 +08:00
minecraft1024a
92179478b5 feat:添加了月度计划 # 我要混提交 2025-11-19 22:45:06 +08:00