diff --git a/src/plugins/built_in/proactive_thinker/proacive_thinker_event.py b/src/plugins/built_in/proactive_thinker/proacive_thinker_event.py index 020a07798..88fa169e8 100644 --- a/src/plugins/built_in/proactive_thinker/proacive_thinker_event.py +++ b/src/plugins/built_in/proactive_thinker/proacive_thinker_event.py @@ -1,6 +1,7 @@ import asyncio import random import time +import traceback from datetime import datetime from maim_message import UserInfo @@ -199,6 +200,7 @@ class ProactiveThinkingTask(AsyncTask): logger.info("日常唤醒任务被正常取消。") break except Exception as e: + traceback.print_exc() # 打印完整的堆栈跟踪 logger.error(f"【日常唤醒】任务出现错误,将在60秒后重试: {e}", exc_info=True) await asyncio.sleep(60) diff --git a/src/plugins/built_in/proactive_thinker/proactive_thinker_executor.py b/src/plugins/built_in/proactive_thinker/proactive_thinker_executor.py index f268aea32..74c23eba4 100644 --- a/src/plugins/built_in/proactive_thinker/proactive_thinker_executor.py +++ b/src/plugins/built_in/proactive_thinker/proactive_thinker_executor.py @@ -158,7 +158,12 @@ class ProactiveThinkerExecutor: ) # 2. 构建基础上下文 - mood_state = mood_manager.get_mood_by_chat_id(stream_id).mood_state + if global_config.mood.enable_mood: + try: + mood_state = mood_manager.get_mood_by_chat_id(stream.stream_id) + except Exception as e: + logger.error(f"获取情绪失败,原因:{e}") + mood_state = "暂时没有" base_context = { "schedule_context": schedule_context, "recent_chat_history": recent_chat_history, @@ -473,4 +478,4 @@ class ProactiveThinkerExecutor: if global_config.debug.show_prompt: logger.info(f"主动思考回复器原始提示词:{prompt}") - return prompt \ No newline at end of file + return prompt