# libtmux.Server.detach_all_clients

- **Module:** libtmux
- **Package:** libtmux
- **Language:** Python
- **Kind:** method
- **Source:** https://github.com/tmux-python/libtmux/blob/38e368c11117fb4aeb2f082d552cd4f210eae06a/src/libtmux/server.py#L1055
- **Page:** https://libtmux.org/en/py/stable/reference/libtmux-server-detach_all_clients/

```
libtmux.Server.detach_all_clients(
    self,
    keep_client: str | None = None,
    shell_command: str | None = None,
) -> None
```

Detach every client on this server via [`$ tmux detach-client -a`](/en/tmux/latest/manual/detach-client/).

tmux's ``-a`` always preserves one client; when *keep_client* is
omitted, the most-recently-active client survives.

## Examples

```python
>>> with control_mode() as ctl:
...     server.detach_all_clients(keep_client=ctl.client_name)
```

## Parameters

- `keep_client` (`str | None`): Client to preserve (``-t`` flag). All other clients on the
server, regardless of which session they are attached to,
are detached.
- `shell_command` (`str | None`): Run a shell command on the detached client(s) after detach
(``-E`` flag).

## In other ports

### Detach every client on the server

- Go: [`tmux.Server.DetachAllClients`](/en/go/latest/reference/tmux-server-detachallclients/) (method)
- C#: [`LibTmux.Server.DetachAllClientsAsync`](/en/csharp/latest/reference/libtmux-server-detachallclientsasync/) (method)
