def __init__(self, tools, tool_specs=[]) -> None:
        """
        Initialize the ToolImporter with tools and tool specifications.

        Args:
            tools (list): A list of tools.
            tool_specs (list, optional): A list of tool specifications. Defaults to [].

        """
        self.tool_functions = {}
        # Load individual tools
        self.tools = tools
        self.tool_name_obj_dict = {tool.metadata.name: tool for tool in tools}
        self.tool_functions = {
            tool.metadata.name: [tool.metadata.name] for tool in tools
        }

        # Load tool specs
        for tool_spec in tool_specs:
            tool_list = tool_spec.to_tool_list()
            self.tools.extend(tool_list)
            spec_tool_name_obj_dict = {tool.metadata.name: tool for tool in tool_list}
            self.tool_name_obj_dict.update(spec_tool_name_obj_dict)
            self.tool_functions[tool_spec.__class__.__name__] = list(
                spec_tool_name_obj_dict.keys()
            )

        Initialize the ToolImporter with tools and tool specifications.

        Args:
            tools (list): A list of tools.
            tool_specs (list, optional): A list of tool specifications. Defaults to [].

        
llama-index-packs/llama-index-packs-secgpt/llama_index/packs/secgpt/tool_importer.py