diff --git a/app/flow/planning.py b/app/flow/planning.py index b60596a88..afb56e4a0 100644 --- a/app/flow/planning.py +++ b/app/flow/planning.py @@ -183,6 +183,11 @@ async def _create_initial_plan(self, request: str) -> None: args = tool_call.function.arguments if isinstance(args, str): try: + # Intercepting a valid JSON string + start = args.find("{") + end = args.rfind("}") + 1 + if start != -1 and end != -1: + args = args[start:end] args = json.loads(args) except json.JSONDecodeError: logger.error(f"Failed to parse tool arguments: {args}")