aidputils.agents.tools.base_tool¶
- class aidputils.agents.tools.base_tool.BaseTool[source]¶
Bases:
ABC- tool_class_registry = {'HttpTool': <class 'aidputils.agents.tools.http_tool.HttpTool'>, 'MCPTool': <class 'aidputils.agents.tools.mcp_tool.MCPTool'>, 'PromptTool': <class 'aidputils.agents.tools.prompt.PromptTool'>, 'RAGTool': <class 'aidputils.agents.tools.rag.RAGTool'>, 'SQLTool': <class 'aidputils.agents.tools.sql.SQLTool'>, 'WebSearchTool': <class 'aidputils.agents.tools.experimental.web_search.WebSearchTool'>}¶
- tool_function_registry = {}¶
- final classmethod register(subclass)[source]¶
Decorator for automatic tool registration.
- Usage:
@BaseTool.register class HttpTool(BaseTool):
…
This will automatically add HttpTool to the global tool registry, allowing it to be discovered and invoked without explicit manual registration.
Implementors should use this decorator on any new tool class they want to make available for agent usage.
- classmethod logger(tool_name=None)[source]¶
Returns a logger for the given tool name (or class).
- Parameters:
tool_name (str) – Optional. If provided, used as logger name and for caching. If not provided, uses the class name.