Spaces:
Sleeping
Sleeping
# coding: utf-8 | |
# Copyright (c) 2025 inclusionAI. | |
HOOK_TEMPLATE = """ | |
import traceback | |
from aworld.core.context.base import Context | |
from aworld.core.event.base import Message, Constants, TopicType | |
from aworld.runners.hook.hooks import * | |
from aworld.runners.hook.hook_factory import HookFactory | |
from aworld.logs.util import logger | |
from aworld.utils.common import convert_to_snake | |
@HookFactory.register(name="{name}", | |
desc="{desc}") | |
class {name}({point}Hook): | |
def name(self): | |
return convert_to_snake("{name}") | |
async def exec(self, message: Message) -> Message: | |
{func_import}import {func} | |
try: | |
res = {func}(message) | |
if not res: | |
raise ValueError(f"{func} no result return.") | |
return Message(payload=res, | |
session_id=Context.instance().session_id, | |
sender="{name}", | |
category=Constants.TASK, | |
topic="{topic}") | |
except Exception as e: | |
logger.error(traceback.format_exc()) | |
return Message(payload=str(e), | |
session_id=Context.instance().session_id, | |
sender="{name}", | |
category=Constants.TASK, | |
topic=TopicType.ERROR) | |
""" | |