# libtmux:pipe-pane

- **Package:** libtmux
- **Language:** Common Lisp
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-lisp/blob/c2e5fc4ed3befda21f45dfa5d5868c38fd138311/src/process-operations.lisp#L41
- **Public owner:** libtmux
- **Page:** https://libtmux.org/en/lisp/latest/reference/libtmux-pipe-pane/

```
(pipe-pane client pane &key shell-command format-p (direction :output) toggle cancel-token timeout output-limit)
```

Configure PANE's tmux-owned pipe and return a COMMAND-OUTCOME.
SHELL-COMMAND is shell source, literal to tmux by default; FORMAT-P explicitly
enables tmux format and time expansion before shell execution. DIRECTION is
:OUTPUT (pane to shell), :INPUT (shell to pane), or :BOTH. Omit SHELL-COMMAND,
or pass an empty string, to close the pipe. TOGGLE closes an existing pipe
without starting its replacement. Replacing a pipe closes the previous one.
Completion acknowledges configuration, not shell startup, success or output
consumption. The daemon owns the pipe child; closing CLIENT leaves it running.
Literal commands exceeding tmux's time-format capacity fail before I/O.
Signals STALE-TARGET or an operational condition; never retries configuration.

## Parameters

- `client`
- `pane`
- `shell-command?`
- `format-p?`
- `direction?`
- `toggle?`
- `cancel-token?`
- `timeout?`
- `output-limit?`

## tmux command

The tmux commands behind `pipe-pane`.

- [`pipe-pane`](/en/tmux/latest/manual/pipe-pane/)

## tmux C API

The C declarations in tmux that implement these commands.

- [`cmd_pipe_pane_entry`](/en/tmux/latest/reference/c-variable-cmd_pipe_pane_entry/) (attribute)
- [`cmd_pipe_pane_exec`](/en/tmux/latest/reference/c-function-cmd-pipe-pane-c-cmd_pipe_pane_exec/) (function)

## Guides

Pages that discuss `pipe-pane`.

- [Capabilities and limits](/en/lisp/latest/guides/capabilities/)
- [Explicit operations](/en/lisp/latest/guides/operations/)
- [REPL tutorial](/en/lisp/latest/guides/tutorial/)
