# LibTmuxWorkspace.main

- **Module:** LibTmuxWorkspace
- **Package:** LibTmuxWorkspace
- **Language:** Julia
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxWorkspace/src/cli.jl#L253
- **Page:** https://libtmux.org/en/julia/latest/workspace/reference/libtmuxworkspace-main/

```
main(arguments; out, err)

main(; ...)
```

## Methods

### `main(arguments; out, err)`

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxWorkspace/src/cli.jl#L262).

Run the installed CLI protocol. Pure commands need no server. `load` and `freeze` require one explicit socket selector; there is no default-server fallback. Only `--attach` opens an interactive client. Return a documented exit code. The supplied streams remain borrowed and open; their writes must return promptly. The installed launcher separately owns bounded, cancellable stdout/stderr writes.

```julia
main(args=ARGS; out=stdout, err=stderr) -> Int
```

### `main(; ...)`

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxWorkspace/src/cli.jl#L262).

Run the installed CLI protocol. Pure commands need no server. `load` and `freeze` require one explicit socket selector; there is no default-server fallback. Only `--attach` opens an interactive client. Return a documented exit code. The supplied streams remain borrowed and open; their writes must return promptly. The installed launcher separately owns bounded, cancellable stdout/stderr writes.

```julia
main(args=ARGS; out=stdout, err=stderr) -> Int
```

## Parameters

- `arguments` (`Any`) (for `main(arguments, out, err)`)
  Default: `ARGS`.
- `out` (`IO`) (for `main(arguments, out, err)`)
  Default: `stdout`.
- `err` (`IO`) (for `main(arguments, out, err)`)
  Default: `stderr`.
- `argument1` (for `main(argument1)`)
