# LibTmux.Workspace.WorkspaceBuilder.Validate

- **Module:** LibTmux.Workspace
- **Package:** LibTmux.Workspace
- **Language:** C#
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-dotnet/blob/cf34b255c896d19a97e7d7fabea58609c916012d/src/LibTmux.Workspace/WorkspaceBuilder.Plan.cs#L16
- **Page:** https://libtmux.org/en/csharp/latest/workspace/reference/libtmux-workspace-workspacebuilder-validate/

```
LibTmux.Workspace.WorkspaceBuilder.Validate(workspace: WorkspaceFile, options: WorkspacePlanOptions?) -> void
```

Checks declaration and policy constraints without reading tmux or executing scripts.

Reuse defers host-script admission until planning determines whether creation is needed.
Layout syntax, checksums and minimum cell counts are checked locally; version-specific
layout names are checked during planning. Endpoint identity, conflicts, paths on disk,
shell syntax and tmux option support are not checked by local validation.

## Parameters

- `workspace` (`WorkspaceFile`): The immutable declaration to check.
- `options` (`WorkspacePlanOptions?`): The policies that will be used for planning.

## Raises

- [`WorkspaceFormatException`](/en/csharp/latest/workspace/reference/libtmux-workspace-workspaceformatexception/): The declaration cannot be applied under the supplied policies.
- [`ArgumentException`](https://learn.microsoft.com/dotnet/api/system.argumentexception): A declaration argument or policy value is invalid.
