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) | |
| """ | |