File Read Tool
Read raw file contents with line-based pagination. Uses the workspace-contained native filesystem backend.
Path sandbox: all paths resolve inside the per-workflow workspace root. Use workspace-relative paths (e.g. reports/data.csv); .. and ~ segments are rejected, and absolute paths are remapped into the workspace. Use fs_search with mode: "ls" to discover what exists.
file_read Tool
Schema Fields
| Field | Type | Required | Description |
|---|---|---|---|
| file_path | string | Yes | Path to the file to read |
| offset | int | No | Line number to start from, 0-indexed (default: 0) |
| limit | int | No | Maximum lines to read (default: 2000, max: 10000) |
Examples
Read a file:
{"file_path": "/path/to/file.py"}
Read with pagination:
{"file_path": "/path/to/large_file.py", "offset": 100, "limit": 50}
Response Format
{
"content": "line one\nline two\n...",
"line_count": 2,
"file_path": "/path/to/file.py"
}
Guidelines
- Use offset/limit for large files instead of reading everything
contentis the selected text slice, without added line numbers; text line endings are normalized to LFline_countcounts the lines in the returned slice, not the whole filefile_pathis the normalized virtual path inside the workflow workspace- Non-UTF-8 files are returned as base64 text in
content; the tool result does not include a separateencodingfield, and line pagination is not applied to that base64 representation