# libtmux::Server::over

- **Module:** libtmux::Server
- **Package:** libtmux-cxx
- **Language:** C++
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-cxx/blob/393d4b0ad666f18a6581f1eb281741a75a7503f0/include/libtmux/server.hpp#L158
- **Page:** https://libtmux.org/en/cxx/latest/reference/libtmux-server-over/

```
libtmux::Server::over(executor: std::shared_ptr< const CommandExecutor >, options: ExecutorOptions = {}, observer: CommandObserver = {}, policy: ExecutionPolicy = {}) -> expected< Server, CommandFailure >
```

A Server over a transport the caller supplies.

`BackendKind::custom` named this possibility from the first release and nothing could reach it: the interface a backend had to satisfy lived in a header this package does not install, so the only transport a consumer could get was the one that launches a subprocess per command. An executor answers one command; the library keeps session routing, batching, attach preparation and the rest on its own side rather than making them a promise.
