LiveKit docs › Components › Session management › AgentDisconnectButton

---

# Agent Disconnect Button

> A button for disconnecting the agent session.

## Usage

**[AgentDisconnectButton](https://docs.livekit.io/reference/components/agents-ui/component/agent-disconnect-button.md)** preview:

```tsx
'use client';

import { AgentSessionProvider } from '@/components/agents-ui/agent-session-provider';
import { AgentDisconnectButton } from '@/components/agents-ui/agent-disconnect-button';

const TOKEN_SOURCE = TokenSource.endpoint('/api/token');

export default function Demo({ session }) {
  const session = useSession(TOKEN_SOURCE);

  return (
    <AgentSessionProvider session={session}>
      <AgentDisconnectButton
        size={{size}}
        variant={{variant}}
        disabled={{disabled}}
      >
        End Call
      </AgentDisconnectButton>
    </AgentSessionProvider>
  );
}
```

## Features

- Customizable with `icon` and `children` props
- Calls `session.end()` when clicked

## Installation

```bash
pnpm dlx shadcn@latest add @agents-ui/agent-disconnect-button

```

## Props

| Prop name | Type | Default |
| --------- | ---- | ------- |
| `icon?` | ReactNode | – |
| `size?` | enum | `default` |
| `variant?` | enum | `destructive` |
| `children?` | ReactNode | – |
| `onClick?` | (event: MouseEvent<HTMLButtonElement, MouseEvent>) => void | – |
| `ref?` | Ref<HTMLButtonElement> | – |
| `...props?` | ComponentProps<'button'> | |

---

This document was rendered at 2026-06-07T11:34:59.372Z.
For the latest version of this document, see [https://docs.livekit.io/reference/components/agents-ui/component/agent-disconnect-button.md](https://docs.livekit.io/reference/components/agents-ui/component/agent-disconnect-button.md).

To explore all LiveKit documentation, see [llms.txt](https://docs.livekit.io/llms.txt).