read_file#

Build typed tools from annotations and docstrings. See the guide.

Read a line range from a UTF-8 text file.

Parameters#

{
  "additionalProperties": false,
  "properties": {
    "path": {
      "minLength": 1,
      "type": "string",
      "description": "Absolute path or a path relative to the current working directory."
    },
    "start_line": {
      "minimum": 1,
      "type": "integer",
      "default": 1,
      "description": "One-based first line to return."
    },
    "line_count": {
      "maximum": 2000,
      "minimum": 1,
      "type": "integer",
      "default": 200,
      "description": "Maximum number of lines to return."
    },
    "start_column": {
      "minimum": 1,
      "type": "integer",
      "default": 1,
      "description": "One-based character column on start_line, used to resume a long line."
    }
  },
  "required": [
    "path"
  ],
  "title": "ToolInput",
  "type": "object"
}

Model-facing snippet#

read_file(path="src/app.py", start_line=1, line_count=200)

Guidelines#

  • Use line ranges for large files.

  • Inspect the current content before editing a file.

  • A trailing hint gives the next start_line and start_column when more content remains.

zett_agent.tools.coding.read_file#

A tool is a name, an input schema, and an async callable.

Parameters:

arguments (Mapping[str, Any])

Return type:

ToolResult

Direct Python calls use await tool(arguments_mapping). The snippet above describes model-facing invocation syntax, not the Python call signature.