# tmux.Session.Start

- **Module:** tmux.Session
- **Package:** github.com/libtmux/libtmux-go/tmux
- **Language:** Go
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-go/blob/52968a3181c1c9e6d1b26c565d4b170968ae61c0/tmux/session_run.go#L103
- **Page:** https://libtmux.org/en/go/latest/reference/tmux-session-start/

```
tmux.Session.Start(ctx: context.Context, command: string, options: RunOptions) -> (running *Running, err error)
```

Start runs command in a new window of this session and returns once it is under way, without waiting for it to finish. The returned [Running] reports the pane it runs in and blocks on demand: [Running.Wait] waits for the exit status and screen [Session.Run] would have returned, and [Running.Kill] stops the command. Options are exactly Run's.

Before tmux 3.7, Start attempts to install an output pipe running cat
unless the pane already has a pipe; a failed attempt only forfeits that
compatibility help. [Running.Wait] stops a pipe Start installed once the
outcome is read, whether or not Keep leaves the window itself in place.

If Wait is never called, the window Start created is never removed.
