FileTools enable an Agent to read and write files on the local file system.

Example

The following agent will generate an answer and save it in a file.

cookbook/tools/file_tools.py
from phi.agent import Agent
from phi.tools.file import FileTools

agent = Agent(tools=[FileTools()], show_tool_calls=True)
agent.print_response("What is the most advanced LLM currently? Save the answer to a file.", markdown=True)

Toolkit Params

NameTypeDefaultDescription
base_dirPath-Specifies the base directory path for file operations.
save_filesboolTrueDetermines whether files should be saved during the operation.
read_filesboolTrueAllows reading from files during the operation.
list_filesboolTrueEnables listing of files in the specified directory.

Toolkit Functions

NameDescription
save_fileSaves the contents to a file called file_name and returns the file name if successful.
read_fileReads the contents of the file file_name and returns the contents if successful.
list_filesReturns a list of files in the base directory