Source code for veupath_chatbot.ai.tools.registry

"""Agent tool registration mixin (aggregator).

Composes category-specific mixins into a single ``AgentToolRegistryMixin``
that provides all @ai_function methods for the agent.
"""

from veupath_chatbot.ai.tools.catalog_registry import CatalogToolsMixin
from veupath_chatbot.ai.tools.research_registry import ResearchToolsMixin
from veupath_chatbot.ai.tools.strategy_registry import StrategyToolsMixin


[docs] class AgentToolRegistryMixin( CatalogToolsMixin, StrategyToolsMixin, ResearchToolsMixin, ): """Mixin for agent tool registration. Inherits ``web_search`` and ``literature_search`` from :class:`ResearchToolsMixin`. Inherits catalog lookup tools from :class:`CatalogToolsMixin`. Inherits strategy, execution, result, and conversation tools from :class:`StrategyToolsMixin` (auto-delegated to underlying tool instances). Classes using this mixin must provide these attributes: - site_id: str - catalog_tools: CatalogTools - catalog_rag_tools: CatalogRagTools - example_plans_rag_tools: ExamplePlansRagTools - strategy_tools: StrategyTools - execution_tools: ExecutionTools - result_tools: ResultTools - conversation_tools: ConversationTools - web_search_service: WebSearchService - literature_search_service: LiteratureSearchService """ pass