Skip to content

Commit ac73f64

Browse files
committed
move:移动action的目录
1 parent 956af05 commit ac73f64

19 files changed

Lines changed: 120 additions & 70 deletions

File tree

File renamed without changes.

src/chat/focus_chat/planners/actions/__init__.py renamed to src/chat/actions/default_actions/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
from . import exit_focus_chat_action # noqa
55
from . import emoji_action # noqa
66

7-
# 在此处添加更多动作模块导入
7+
# 在此处添加更多动作模块导入

src/chat/focus_chat/planners/actions/emoji_action.py renamed to src/chat/actions/default_actions/emoji_action.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from src.common.logger_manager import get_logger
2-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
2+
from src.chat.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
33
from typing import Tuple, List
44
from src.chat.heart_flow.observation.observation import Observation
55
from src.chat.focus_chat.replyer.default_replyer import DefaultReplyer

src/chat/focus_chat/planners/actions/exit_focus_chat_action.py renamed to src/chat/actions/default_actions/exit_focus_chat_action.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import asyncio
22
import traceback
33
from src.common.logger_manager import get_logger
4-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, register_action, ChatMode
4+
from src.chat.actions.base_action import BaseAction, register_action, ChatMode
55
from typing import Tuple, List
66
from src.chat.heart_flow.observation.observation import Observation
77
from src.chat.message_receive.chat_stream import ChatStream

src/chat/focus_chat/planners/actions/no_reply_action.py renamed to src/chat/actions/default_actions/no_reply_action.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import traceback
33
from src.common.logger_manager import get_logger
44
from src.chat.utils.timer_calculator import Timer
5-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
5+
from src.chat.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
66
from typing import Tuple, List
77
from src.chat.heart_flow.observation.observation import Observation
88
from src.chat.heart_flow.observation.chatting_observation import ChattingObservation

src/chat/focus_chat/planners/actions/reply_action.py renamed to src/chat/actions/default_actions/reply_action.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env python3
22
# -*- coding: utf-8 -*-
33
from src.common.logger_manager import get_logger
4-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
4+
from src.chat.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode
55
from typing import Tuple, List
66
from src.chat.heart_flow.observation.observation import Observation
77
from src.chat.focus_chat.replyer.default_replyer import DefaultReplyer

src/chat/focus_chat/planners/actions/plugin_action.py renamed to src/chat/actions/plugin_action.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import traceback
22
from typing import Tuple, Dict, List, Any, Optional, Union, Type
3-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode # noqa F401
3+
from src.chat.actions.base_action import BaseAction, register_action, ActionActivationType, ChatMode # noqa F401
44
from src.chat.heart_flow.observation.chatting_observation import ChattingObservation
55
from src.chat.focus_chat.hfc_utils import create_empty_anchor_message
66
from src.common.logger_manager import get_logger

src/chat/focus_chat/planners/action_manager.py

Lines changed: 10 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from typing import Dict, List, Optional, Type, Any
2-
from src.chat.focus_chat.planners.actions.base_action import BaseAction, _ACTION_REGISTRY
2+
from src.chat.actions.base_action import BaseAction, _ACTION_REGISTRY
33
from src.chat.heart_flow.observation.observation import Observation
44
from src.chat.focus_chat.replyer.default_replyer import DefaultReplyer
55
from src.chat.focus_chat.expressors.default_expressor import DefaultExpressor
@@ -9,8 +9,8 @@
99
import pkgutil
1010
import os
1111

12-
# 导入动作类,确保装饰器被执行
13-
import src.chat.focus_chat.planners.actions # noqa
12+
# 不再需要导入动作类,因为已经在main.py中导入
13+
# import src.chat.actions.default_actions # noqa
1414

1515
logger = get_logger("action_manager")
1616

@@ -114,42 +114,13 @@ def _load_registered_actions(self) -> None:
114114
def _load_plugin_actions(self) -> None:
115115
"""
116116
加载所有插件目录中的动作
117+
118+
注意:插件动作的实际导入已经在main.py中完成,这里只需要从_ACTION_REGISTRY获取
117119
"""
118120
try:
119-
# 检查插件目录是否存在
120-
plugin_path = "src.plugins"
121-
plugin_dir = plugin_path.replace(".", os.path.sep)
122-
if not os.path.exists(plugin_dir):
123-
logger.info(f"插件目录 {plugin_dir} 不存在,跳过插件动作加载")
124-
return
125-
126-
# 导入插件包
127-
try:
128-
plugins_package = importlib.import_module(plugin_path)
129-
except ImportError as e:
130-
logger.error(f"导入插件包失败: {e}")
131-
return
132-
133-
# 遍历插件包中的所有子包
134-
for _, plugin_name, is_pkg in pkgutil.iter_modules(
135-
plugins_package.__path__, plugins_package.__name__ + "."
136-
):
137-
if not is_pkg:
138-
continue
139-
140-
# 检查插件是否有actions子包
141-
plugin_actions_path = f"{plugin_name}.actions"
142-
try:
143-
# 尝试导入插件的actions包
144-
importlib.import_module(plugin_actions_path)
145-
logger.info(f"成功加载插件动作模块: {plugin_actions_path}")
146-
except ImportError as e:
147-
logger.debug(f"插件 {plugin_name} 没有actions子包或导入失败: {e}")
148-
continue
149-
150-
# 再次从_ACTION_REGISTRY获取所有动作(包括刚刚从插件加载的)
121+
# 插件动作已在main.py中加载,这里只需要从_ACTION_REGISTRY获取
151122
self._load_registered_actions()
152-
123+
logger.info(f"从注册表加载插件动作成功")
153124
except Exception as e:
154125
logger.error(f"加载插件动作失败: {e}")
155126

@@ -251,7 +222,7 @@ def get_using_actions_for_mode(self, mode: str) -> Dict[str, ActionInfo]:
251222
else:
252223
logger.debug(f"动作 {action_name} 在模式 {mode} 下不可用 (mode_enable: {action_mode})")
253224

254-
logger.info(f"模式 {mode} 下可用动作: {list(filtered_actions.keys())}")
225+
logger.debug(f"模式 {mode} 下可用动作: {list(filtered_actions.keys())}")
255226
return filtered_actions
256227

257228
def add_action_to_using(self, action_name: str) -> bool:
@@ -291,7 +262,7 @@ def remove_action_from_using(self, action_name: str) -> bool:
291262
return False
292263

293264
del self._using_actions[action_name]
294-
logger.info(f"已从使用集中移除动作 {action_name}")
265+
logger.debug(f"已从使用集中移除动作 {action_name}")
295266
return True
296267

297268
def add_action(self, action_name: str, description: str, parameters: Dict = None, require: List = None) -> bool:
@@ -358,7 +329,7 @@ def _add_system_core_actions(self) -> None:
358329
for action_name in system_core_actions:
359330
if action_name in self._registered_actions and action_name not in self._using_actions:
360331
self._using_actions[action_name] = self._registered_actions[action_name]
361-
logger.info(f"添加系统核心动作到使用集: {action_name}")
332+
logger.debug(f"添加系统核心动作到使用集: {action_name}")
362333

363334
def add_system_action_if_needed(self, action_name: str) -> bool:
364335
"""

src/chat/focus_chat/planners/modify_actions.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from src.chat.message_receive.chat_stream import chat_manager
77
from src.config.config import global_config
88
from src.llm_models.utils_model import LLMRequest
9-
from src.chat.focus_chat.planners.actions.base_action import ActionActivationType, ChatMode
9+
from src.chat.actions.base_action import ActionActivationType, ChatMode
1010
import random
1111
import asyncio
1212
import hashlib
@@ -560,9 +560,9 @@ async def analyze_loop_actions(self, obs: HFCloopObservation) -> Dict[str, List[
560560
reply_sequence.append(action_type == "reply")
561561

562562
# 检查no_reply比例
563-
if len(recent_cycles) >= (5 * global_config.chat.exit_focus_threshold) and (
563+
if len(recent_cycles) >= (4 * global_config.chat.exit_focus_threshold) and (
564564
no_reply_count / len(recent_cycles)
565-
) >= (0.8 * global_config.chat.exit_focus_threshold):
565+
) >= (0.7 * global_config.chat.exit_focus_threshold):
566566
if global_config.chat.chat_mode == "auto":
567567
result["add"].append("exit_focus_chat")
568568
result["remove"].append("no_reply")

src/chat/focus_chat/planners/planner_simple.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@
1515
from src.chat.utils.prompt_builder import Prompt, global_prompt_manager
1616
from src.individuality.individuality import individuality
1717
from src.chat.focus_chat.planners.action_manager import ActionManager
18-
from src.chat.focus_chat.planners.modify_actions import ActionModifier
19-
from src.chat.focus_chat.planners.actions.base_action import ChatMode
18+
from src.chat.actions.base_action import ChatMode
2019
from json_repair import repair_json
2120
from src.chat.focus_chat.planners.base_planner import BasePlanner
2221
from datetime import datetime

0 commit comments

Comments
 (0)