> ## Documentation Index
> Fetch the complete documentation index at: https://codexceed.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# avatar.tools.filesystem

Read-only filesystem tools: read\_file, list\_files (§10, tier 0).

## Classes

### `ListFilesInput`

Input for `list_files`: a glob pattern (defaults to the whole tree).

```python theme={null}
ListFilesInput(*, glob: str = '**/*') -> None
```

**Fields**

| Field  | Type  | Required |
| ------ | ----- | -------- |
| `glob` | `str` | no       |

### `ReadFileInput`

Input for `read_file`: a workspace path and optional 1-indexed line range.

`line_range` is a `list[int]` (`[start, end]`), not a `tuple` — a tuple renders to
JSON Schema as `prefixItems` *without* an `items` key, which Gemini's request validator
rejects (ADR-0019). A plain list emits a provider-agnostic `&#123;"type": "array", "items":
&#123;"type": "integer"&#125;&#125;`; the exactly-two / ordering contract is enforced by the validator.

```python theme={null}
ReadFileInput(*, path: str, line_range: list[int] | None = None) -> None
```

**Fields**

| Field        | Type         | Required |    |
| ------------ | ------------ | -------- | -- |
| `path`       | `str`        | yes      |    |
| `line_range` | \`list\[int] | None\`   | no |
