If a tool definition has an error during import (e.g., bad import) the framework continues without registering the tool and shows no warning or error. This makes misconfigurations easy to miss.
Steps to Reproduce
- Start from the “Advanced Orchestration” example: https://xaibo.ai/tutorial/advanced-orchestration/
- In a tool module, introduce an import error (e.g. typo
import request instead of requests) or raise an exception at module import time.
- Run the agent and load/register the tool per the docs.
# tools/example.py
import request # typo to trigger ImportError
def run(x: str) -> str:
return x
Expected Behavior
Actual Behavior
- No error or warning is emitted.
- The tool simply isn’t registered (and the agent runs without it).
If a tool definition has an error during import (e.g., bad import) the framework continues without registering the tool and shows no warning or error. This makes misconfigurations easy to miss.
Steps to Reproduce
import requestinstead ofrequests) or raise an exception at module import time.Expected Behavior
The framework should surface the failure:
Option to run in
strict=Truemode to make any tool registration failure fatal.Actual Behavior