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

# Tool Decorator

> Reference for the @tool decorator.

| Parameter                   | Type             | Description                                                                  |
| --------------------------- | ---------------- | ---------------------------------------------------------------------------- |
| `name`                      | `str`            | Override for the function name                                               |
| `description`               | `str`            | Override for the function description                                        |
| `strict`                    | `bool`           | If True, enforces strict parameter checking on the function schema           |
| `instructions`              | `str`            | Instructions for using the tool                                              |
| `add_instructions`          | `bool`           | If True, adds the tool instructions to the system message (default: True)    |
| `show_result`               | `bool`           | If True, shows the result after the function call                            |
| `stop_after_tool_call`      | `bool`           | If True, the agent will stop after the function call                         |
| `tool_hooks`                | `list[Callable]` | List of hooks that wrap the function execution                               |
| `pre_hook`                  | `Callable`       | Hook to run before the function is executed                                  |
| `post_hook`                 | `Callable`       | Hook to run after the function is executed                                   |
| `requires_confirmation`     | `bool`           | If True, requires user confirmation before execution                         |
| `requires_user_input`       | `bool`           | If True, requires user input before execution                                |
| `user_input_fields`         | `list[str]`      | List of fields that require user input                                       |
| `external_execution`        | `bool`           | If True, the tool will be executed outside of the agent's control            |
| `external_execution_silent` | `bool`           | If True (with `external_execution=True`), suppresses verbose paused messages |
| `cache_results`             | `bool`           | If True, enable caching of function results                                  |
| `cache_dir`                 | `str`            | Directory to store cache files                                               |
| `cache_ttl`                 | `int`            | Time-to-live for cached results in seconds (default: 3600)                   |
