FileWriterTool
Descrição
OFileWriterTool escreve conteúdo de texto em um arquivo. Diretórios
ausentes são criados automaticamente. A codificação de texto padrão é UTF-8.
As escritas ficam confinadas a um diretório sandbox. Por padrão, esse
diretório é o diretório de trabalho atual. Passe base_dir para alterá-lo.
Instalação
Exemplo
Code
Argumentos
O agente fornece estes em tempo de execução:filename: Nome do arquivo a escrever, relativo adirectory. Pode incluir subdiretórios. Esses subdiretórios são criados se não existirem.content: Conteúdo de texto a escrever.directory(opcional): Diretório no qual escrever. Um caminho relativo é resolvido dentro do diretório permitido da ferramenta (base_dirquando definido; caso contrário, o diretório de trabalho atual) e tem como padrão a raiz desse diretório (./). É criado se não existir.overwrite(opcional): Se um arquivo existente deve ser substituído. Aceita um booleano ou as stringsy/yes/t/true/on/1en/no/f/false/off/0. O padrão éfalse. Quando éfalsee o arquivo já existe, a ferramenta retorna um erro e não modifica o arquivo.
base_dir(opcional): Diretório dentro do qual as escritas devem permanecer. O padrão é o diretório de trabalho atual. Um caminho relativo é resolvido quando a ferramenta é construída, então uma mudança posterior do diretório de trabalho não move o sandbox.encoding(opcional): Codificação de texto usada para escrever o arquivo. O padrão éutf-8.
Caminhos permitidos
Os valores dedirectory e filename em tempo de execução costumam ser
escolhidos por um LLM. A ferramenta rejeita caminhos que escapam do sandbox:
- O
directoryresolvido deve estar dentro debase_dir(o diretório de trabalho atual por padrão). - O caminho do arquivo resolvido deve estar dentro desse
directory. - Segmentos
.., caminhos absolutos e symlinks são resolvidos antes das duas verificações.
base_dir:
Code
Anteriormente, um
directory absoluto podia escrever em qualquer lugar em que
o processo tivesse permissão. Se você dependia disso, defina base_dir para a
árvore que deseja permitir. Definir CREWAI_TOOLS_ALLOW_UNSAFE_PATHS=true
restaura o comportamento antigo, mas desativa verificações de caminho e URL em
todo o processo para todas as ferramentas do crewai-tools. Prefira base_dir.