Predefined Tools Package¶
The azad.predefined_tools package provides built-in tools for common operations. These tools are available to the agent without requiring additional setup.
Core Components¶
Task Entry¶
The Task Entry module provides tools for starting new tasks. It includes:
TaskEntryToolSchemaclass for defining task entry tools- Methods for applying task entry parameters to a task
Task Exit¶
The Task Exit module provides tools for completing tasks. It includes:
TaskExitToolSchemaclass for defining task exit tools- Methods for applying task exit parameters to a task
Browser Use Tool¶
The Browser Use Tool module provides tools for interacting with web browsers. It includes:
- Tools for navigating to URLs
- Tools for interacting with web pages
- Tools for extracting information from web pages
How Predefined Tools Work¶
Predefined tools are registered with the agent and made available to the language model through the prompt. When the language model calls a tool, the agent:
- Validates the tool call
- Requests approval from the user (if required)
- Executes the tool
- Returns the result to the language model
Tool Metadata¶
Each predefined tool includes metadata that describes:
- The tool's name and description
- The tool's parameters and their descriptions
- Which parameters are required
- Example usages of the tool
- Whether the tool is a task entry or exit tool
- Whether the tool supports parallel execution
Creating Custom Tools¶
To create a custom tool:
- Define a tool schema class
- Implement the tool's execution logic
- Register the tool with the agent
See the Extending Azad guide for more details.