diff --git a/src/crewai/agents/agent_adapters/langgraph/langgraph_adapter.py b/src/crewai/agents/agent_adapters/langgraph/langgraph_adapter.py index 6cc03f289..d819e91c7 100644 --- a/src/crewai/agents/agent_adapters/langgraph/langgraph_adapter.py +++ b/src/crewai/agents/agent_adapters/langgraph/langgraph_adapter.py @@ -84,13 +84,21 @@ class LangGraphAgentAdapter(BaseAgentAdapter): self._memory = MemorySaver() converted_tools: List[Any] = self._tool_adapter.tools() - - self._graph = create_react_agent( - model=self.llm, - tools=converted_tools or [], - checkpointer=self._memory, - debug=self.verbose, - ) + if self._agent_config: + self._graph = create_react_agent( + model=self.llm, + tools=converted_tools or [], + checkpointer=self._memory, + debug=self.verbose, + **self._agent_config, + ) + else: + self._graph = create_react_agent( + model=self.llm, + tools=converted_tools or [], + checkpointer=self._memory, + debug=self.verbose, + ) except ImportError as e: self._logger.log( diff --git a/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py b/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py index 37c8e93e4..02a229c51 100644 --- a/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py +++ b/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py @@ -16,7 +16,7 @@ class LangGraphToolAdapter(BaseToolAdapter): Configure and convert CrewAI tools to LangGraph-compatible format. LangGraph expects tools in langchain_core.tools format. """ - from langchain_core.tools import StructuredTool + from langchain_core.tools import BaseTool, StructuredTool converted_tools = [] if self.original_tools: @@ -24,6 +24,9 @@ class LangGraphToolAdapter(BaseToolAdapter): else: all_tools = tools for tool in all_tools: + if isinstance(tool, BaseTool): + converted_tools.append(tool) + continue def tool_wrapper(*args, tool=tool, **kwargs): if len(args) > 0 and isinstance(args[0], str):