> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Przerywanie działania narzędzi

## Omówienie

Domyślnie użytkownik może przerwać agenta w dowolnym momencie, także podczas działania narzędzia. W przypadku
niektórych narzędzi jest to niepożądane: potwierdzenie płatności lub informacja prawna odczytana po
wyszukaniu powinny zostać przekazane w całości.

Pole `interruption_mode` pozwala ustawić to dla każdego narzędzia. Jest dostępne w narzędziach webhook,
narzędziach klienckich, narzędziach systemowych i serwerach MCP.

## Tryby przerywania

| Wartość                        | Etykieta w panelu        | Działanie                                                                                           |
| ------------------------------ | ------------------------ | --------------------------------------------------------------------------------------------------- |
| `allow`                        | Zezwalaj                 | Użytkownik może przerwać agenta w dowolnym momencie. To ustawienie domyślne.                        |
| `disable_during_tool`          | Wyłącz podczas działania | Przerwania są blokowane tylko podczas działania narzędzia. Kolejną odpowiedź agenta można przerwać. |
| `disable_during_tool_and_turn` | Wyłącz w całej turze     | Przerwania są blokowane podczas działania narzędzia i następującej po nim odpowiedzi agenta.        |

Gdy kilka narzędzi działa równolegle, w tej turze obowiązuje najbardziej restrykcyjny z ich trybów.

> **Note**
>
> Boolean `disable_interruptions` jest przestarzały. Zamiast niego używaj `interruption_mode`. Te dwa
> pola są synchronizowane, więc `disable_interruptions: true` odpowiada `interruption_mode:
>   "disable_during_tool_and_turn"`, a obecne integracje nadal działają bez zmian.

## Konfiguracja

#### Aktualizacja w panelu

#### Przejdź do konfiguracji narzędzia

Na karcie **Narzędzia** wybierz narzędzie, które chcesz skonfigurować.

#### Ustaw tryb przerywania

Otwórz **Ustawienia zaawansowane** i wybierz opcję w sekcji **Przerwania**.

#### Zapisz konfigurację

Kliknij **Zapisz**, aby zastosować zmianę.

#### Aktualizacja przez CLI

#### Pobierz konfigurację narzędzia

```bash
elevenlabs tools pull
```

#### Edytuj \`tool_configs/\<tool-name>.json\`

Ustaw `interruption_mode` w narzędziu:

```json
{
  "type": "webhook",
  "name": "confirm_payment",
  "description": "Confirms a pending payment",
  "interruption_mode": "disable_during_tool_and_turn"
}
```

#### Wyślij zmiany

```bash
elevenlabs tools push
```

#### Aktualizacja przez API

```python
from elevenlabs import ElevenLabs, ToolRequestModel

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.tools.update(
    tool_id="tool_7101k5zvyjhmfg983brhmhkd98n6",
    request=ToolRequestModel(
        tool_config={
            "type": "webhook",
            "name": "confirm_payment",
            "description": "Confirms a pending payment",
            "interruption_mode": "disable_during_tool_and_turn",
            "api_schema": {
                "url": "https://api.example.com/payments/confirm",
                "method": "POST",
            },
        },
    ),
)
```

```typescript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.tools.update("tool_7101k5zvyjhmfg983brhmhkd98n6", {
  toolConfig: {
    type: "webhook",
    name: "confirm_payment",
    description: "Confirms a pending payment",
    interruptionMode: "disable_during_tool_and_turn",
    apiSchema: {
      url: "https://api.example.com/payments/confirm",
      method: "POST",
    },
  },
});
```

## Serwery MCP

[Serwer MCP](/docs/pl/eleven-agents/customization/tools/mcp) ma własne `interruption_mode`,
które dotyczy każdego udostępnianego przez niego narzędzia. Poszczególne narzędzia mogą je nadpisać przez
`tool_config_overrides` serwera — wartość ustawiona w narzędziu ma pierwszeństwo przed domyślną wartością serwera.

## Dobre praktyki

* Użyj `disable_during_tool`, gdy samo wywołanie narzędzia musi się zakończyć, na przykład przy przelewie lub sekwencji
  klawiszy, ale użytkownik powinien móc potem przerwać odpowiedź.
* Użyj `disable_during_tool_and_turn`, gdy odpowiedź po użyciu narzędzia musi zostać wysłuchana w całości,
  na przykład informacja prawna lub odczytane potwierdzenie.
* W pozostałych przypadkach zostaw domyślne `allow`, ponieważ blokowanie przerwań sprawia, że
  rozmowa wydaje się mniej responsywna.