feat(plugin): 允许在Action内部调用其他Action
在`BaseAction`中新增`call_action`方法,使得一个Action可以方便地调用并执行另一个已注册的Action。 该方法会: - 从组件注册中心查找并获取目标Action类。 - 复用当前Action的上下文信息(如`chat_stream`, `cycle_timers`等)来实例化目标Action。 - 执行目标Action并返回其执行结果。 这为创建更复杂、可组合的插件逻辑提供了基础,提高了代码的复用性和模块化程度。
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
import time
|
||||
import traceback
|
||||
import orjson
|
||||
import re
|
||||
from typing import TYPE_CHECKING, Dict, Any
|
||||
|
||||
from src.common.logger import get_logger
|
||||
@@ -12,7 +10,6 @@ from src.plugin_system.apis import generator_api
|
||||
from src.plugin_system.apis.generator_api import process_human_text
|
||||
from src.schedule.schedule_manager import schedule_manager
|
||||
from src.plugin_system import tool_api
|
||||
from src.plugin_system.base.component_types import ComponentType
|
||||
from src.config.config import global_config
|
||||
from src.chat.utils.chat_message_builder import get_raw_msg_before_timestamp_with_chat, build_readable_messages_with_id
|
||||
from src.mood.mood_manager import mood_manager
|
||||
|
||||
Reference in New Issue
Block a user