diff --git a/src/crewai_tools/tools/file_read_tool/file_read_tool.py b/src/crewai_tools/tools/file_read_tool/file_read_tool.py index 384b97f40..55fb5d490 100644 --- a/src/crewai_tools/tools/file_read_tool/file_read_tool.py +++ b/src/crewai_tools/tools/file_read_tool/file_read_tool.py @@ -46,10 +46,11 @@ class FileReadTool(BaseTool): this becomes the default file path for the tool. **kwargs: Additional keyword arguments passed to BaseTool. """ - super().__init__(**kwargs) if file_path is not None: - self.file_path = file_path - self.description = f"A tool that reads file content. The default file is {file_path}, but you can provide a different 'file_path' parameter to read another file." + kwargs['description'] = f"A tool that reads file content. The default file is {file_path}, but you can provide a different 'file_path' parameter to read another file." + + super().__init__(**kwargs) + self.file_path = file_path def _run( self, @@ -67,18 +68,4 @@ class FileReadTool(BaseTool): except PermissionError: return f"Error: Permission denied when trying to read file: {file_path}" except Exception as e: - return f"Error: Failed to read file {file_path}. {str(e)}" - - def _generate_description(self) -> None: - """Generate the tool description based on file path. - - This method updates the tool's description to include information about - the default file path while maintaining the ability to specify a different - file at runtime. - - Returns: - None - """ - self.description = ( - f"A tool that can be used to read {self.file_path}'s content." - ) + return f"Error: Failed to read file {file_path}. {str(e)}" \ No newline at end of file