diff --git a/praisonai_tools/video/motion_graphics/agent.py b/praisonai_tools/video/motion_graphics/agent.py index f73c56d..11953af 100644 --- a/praisonai_tools/video/motion_graphics/agent.py +++ b/praisonai_tools/video/motion_graphics/agent.py @@ -6,7 +6,7 @@ try: from praisonaiagents import Agent - from praisonaiagents.tools import FileTools + from praisonaiagents.tools.file_tools import FileTools except ImportError: # Fallback for development Agent = None @@ -193,8 +193,10 @@ def create_motion_graphics_agent( Workspace directory: {workspace} """ - # Create tools - file_tools = FileTools(base_dir=str(workspace)) + # Create tools. + # FileTools is a utility class with bound methods; pass the instance so the + # Agent can register read_file/write_file/list_files as callable tools. + file_tools = FileTools() render_tools = RenderTools(render_backend, workspace, max_retries) # Create agent diff --git a/praisonai_tools/video/motion_graphics/team.py b/praisonai_tools/video/motion_graphics/team.py index e20c0d7..9d0d75a 100644 --- a/praisonai_tools/video/motion_graphics/team.py +++ b/praisonai_tools/video/motion_graphics/team.py @@ -6,9 +6,11 @@ try: from praisonaiagents import Agent, AgentTeam - from praisonaiagents.tools import FileTools, search_web -except ImportError: - # Fallback for development + from praisonaiagents.tools.file_tools import FileTools + # search_web is lazily resolved via praisonaiagents.tools.__getattr__ + from praisonaiagents.tools import search_web +except (ImportError, AttributeError): + # Fallback for development / partial installs Agent = None AgentTeam = None FileTools = None diff --git a/pyproject.toml b/pyproject.toml index 7ca2f13..b18d027 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "praisonai-tools" -version = "0.2.24" +version = "0.2.25" description = "Extended tools for PraisonAI Agents" authors = [ {name = "Mervin Praison"}