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

# Pre-hooks

## Parameters

Running a pre-hook is handled automatically during the Agent or Team run. These are the parameters that will be injected. A hook receives only the parameters its signature declares:

| Parameter     | Type                            | Default  | Description                                                                                                      |
| ------------- | ------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------- |
| `agent`       | `Agent`                         | Required | The Agent that is running the pre-hook. Only present in Agent runs.                                              |
| `team`        | `Team`                          | Required | The Team that is running the pre-hook. Only present in Team runs.                                                |
| `run_input`   | `RunInput` or `TeamRunInput`    | Required | The input provided to the Agent or Team when invoking the run.                                                   |
| `run_context` | `RunContext`                    | Required | The context of the current run, carrying `session_state`, `dependencies`, `metadata`, and other run-scoped data. |
| `session`     | `AgentSession` or `TeamSession` | Required | The `AgentSession` or `TeamSession` object representing the current session.                                     |
| `metadata`    | `Optional[Dict[str, Any]]`      | `None`   | The metadata of the current run.                                                                                 |
| `user_id`     | `Optional[str]`                 | `None`   | The contextual user ID, if any.                                                                                  |
| `debug_mode`  | `Optional[bool]`                | `None`   | Whether the debug mode is enabled.                                                                               |
