{"record":{"id":"ef9fb36f259834a0","repo":"microsoft/autogen","slug":"tool-override-name-override-name-conflicts-wit","errorCode":null,"errorMessage":"Tool override name '{override.name}' conflicts with existing tool name. Override names must not conflict with any tool names.","messagePattern":"Tool override name '(.+?)' conflicts with existing tool name\\. Override names must not conflict with any tool names\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py","lineNumber":55,"sourceCode":"\n    component_provider_override = \"autogen_core.tools.StaticWorkbench\"\n    component_config_schema = StaticWorkbenchConfig\n\n    def __init__(\n        self, tools: List[BaseTool[Any, Any]], tool_overrides: Optional[Dict[str, ToolOverride]] = None\n    ) -> None:\n        self._tools = tools\n        self._tool_overrides = tool_overrides or {}\n\n        # Build reverse mapping from override names to original names for call_tool\n        self._override_name_to_original: Dict[str, str] = {}\n        existing_tool_names = {tool.name for tool in self._tools}\n\n        for original_name, override in self._tool_overrides.items():\n            if override.name and override.name != original_name:\n                # Check for conflicts with existing tool names\n                if override.name in existing_tool_names and override.name != original_name:\n                    raise ValueError(\n                        f\"Tool override name '{override.name}' conflicts with existing tool name. \"\n                        f\"Override names must not conflict with any tool names.\"\n                    )\n                # Check for conflicts with other override names\n                if override.name in self._override_name_to_original:\n                    existing_original = self._override_name_to_original[override.name]\n                    raise ValueError(\n                        f\"Tool override name '{override.name}' is used by multiple tools: \"\n                        f\"'{existing_original}' and '{original_name}'. Override names must be unique.\"\n                    )\n                self._override_name_to_original[override.name] = original_name\n\n    async def list_tools(self) -> List[ToolSchema]:\n        result_schemas: List[ToolSchema] = []\n        for tool in self._tools:\n            original_schema = tool.schema\n\n            # Apply overrides if they exist for this tool","sourceCodeStart":37,"sourceCodeEnd":73,"githubUrl":"https://github.com/microsoft/autogen/blob/027ecf0a379bcc1d09956d46d12d44a3ad9cee14/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py#L37-L73","documentation":"Error \"Tool override name '{override.name}' conflicts with existing tool name. Override names must not conflict with any tool names.\" thrown in microsoft/autogen.","triggerScenarios":"Thrown at python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py:55 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Choose a unique override name not used by any tool"],"exampleFix":"Rename the override so it does not collide with tool names","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"027ecf0a379bcc1d09956d46d12d44a3ad9cee14","analyzedAt":"2026-08-15T03:38:00.719Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}