# tmuxp.workspace.builder.WorkspaceBuilderProtocol.__init__

- **Module:** tmuxp.workspace.builder
- **Package:** tmuxp
- **Language:** Python
- **Kind:** method
- **Source:** https://github.com/tmux-python/tmuxp/blob/153acdf6ff1268b14d3d03ed488f545a7123c8f1/src/tmuxp/workspace/builder/protocol.py#L80
- **Page:** https://libtmux.org/en/py/stable/workspace/reference/tmuxp-workspace-builder-workspacebuilderprotocol-__init__/

```
tmuxp.workspace.builder.WorkspaceBuilderProtocol.__init__(
    self,
    session_config: dict[str, t.Any],
    server: Server,
    plugins: list[t.Any] | None = None,
    on_progress: t.Callable[[str], None] | None = None,
    on_before_script: t.Callable[[], None] | None = None,
    on_script_output: t.Callable[[str], None] | None = None,
    on_build_event: t.Callable[[dict[str, t.Any]], None]
    | None = None,
) -> None
```

Construct a builder from an expanded workspace and a tmux server.

## Parameters

- `session_config` (`dict[str, t.Any]`)
- `server` (`Server`)
- `plugins` (`list[t.Any] | None`)
- `on_progress` (`t.Callable[[str], None] | None`)
- `on_before_script` (`t.Callable[[], None] | None`)
- `on_script_output` (`t.Callable[[str], None] | None`)
- `on_build_event` (`t.Callable[[dict[str, t.Any]], None] | None`)
