From b1960ecb4c5f994d72b7df3fc3aafa4a8e6549c3 Mon Sep 17 00:00:00 2001 From: Brandon Hancock Date: Thu, 9 Jan 2025 16:55:23 -0500 Subject: [PATCH] Revert tool validation --- src/crewai/tools/tool_usage.py | 12 +++++++++--- tests/test_manager_llm_delegation.py | 1 - 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/crewai/tools/tool_usage.py b/src/crewai/tools/tool_usage.py index 4fe8bd47c..a59ed7b50 100644 --- a/src/crewai/tools/tool_usage.py +++ b/src/crewai/tools/tool_usage.py @@ -409,9 +409,15 @@ class ToolUsage: def _validate_tool_input(self, tool_input: str) -> Dict[str, Any]: try: - # Replace 'None', 'True', 'False' with their JSON equivalents - tool_input = tool_input.replace('"None"', "null") - tool_input = tool_input.replace("True", "true").replace("False", "false") + # Replace Python literals with JSON equivalents + replacements = { + r"'": '"', + r"None": "null", + r"True": "true", + r"False": "false", + } + for pattern, replacement in replacements.items(): + tool_input = re.sub(pattern, replacement, tool_input) arguments = json.loads(tool_input) except json.JSONDecodeError: diff --git a/tests/test_manager_llm_delegation.py b/tests/test_manager_llm_delegation.py index cf23d109a..0cab92d43 100644 --- a/tests/test_manager_llm_delegation.py +++ b/tests/test_manager_llm_delegation.py @@ -12,7 +12,6 @@ class InternalAgentTool(BaseAgentTool): return "Test response" -# new comment @pytest.mark.parametrize( "role_name,should_match", [