Source code for tooluniverse.tools.ToolCompatibilityAnalyzer

"""
ToolCompatibilityAnalyzer

Analyzes two tool specifications to determine if one tool's output can be used as input for anoth...
"""

from typing import Any, Optional, Callable
from ._shared_client import get_shared_client


[docs] def ToolCompatibilityAnalyzer( source_tool: str, target_tool: str, analysis_depth: str, *, stream_callback: Optional[Callable[[str], None]] = None, use_cache: bool = False, validate: bool = True, ) -> Any: """ Analyzes two tool specifications to determine if one tool's output can be used as input for anoth... Parameters ---------- source_tool : str The source tool specification (JSON string with name, description, parameter ... target_tool : str The target tool specification (JSON string with name, description, parameter ... analysis_depth : str Level of analysis depth - quick for basic compatibility, detailed for paramet... stream_callback : Callable, optional Callback for streaming output use_cache : bool, default False Enable caching validate : bool, default True Validate parameters Returns ------- Any """ # Handle mutable defaults to avoid B006 linting error return get_shared_client().run_one_function( { "name": "ToolCompatibilityAnalyzer", "arguments": { "source_tool": source_tool, "target_tool": target_tool, "analysis_depth": analysis_depth, }, }, stream_callback=stream_callback, use_cache=use_cache, validate=validate, )
__all__ = ["ToolCompatibilityAnalyzer"]