- A tenant, workspace, or customer account ID
- A regional URL or environment name
- A shared folder path
- Shared credentials or API keys used by that pool
Pool parameters are not desktop display settings. They are workflow inputs that can satisfy prompt variables such as
{region} or sensitive prompt variables such as {$shared_api_key}.Mental Model
Think of pool parameters as the bottom layer of the run input stack:- Pool parameters fill in shared defaults when a selected pool provides them.
- Desktop parameters override those defaults after Cyberdesk knows which desktop will run the workflow.
- Run inputs override both when you pass an ad hoc value for a single run.
When They Apply
Pool parameters apply only when the run explicitly selects a pool throughpool_ids or the dashboard’s pool-based machine selection.
They do not apply just because the assigned desktop belongs to a pool. If you choose a specific desktop for the run, Cyberdesk uses that desktop’s parameters, but it does not automatically pull parameters from every pool that desktop belongs to.
This rule keeps runs predictable. A desktop can belong to multiple pools for routing, organization, or access control without accidentally changing workflow inputs.
Basic Example
Suppose a pool namedWest Coast Claims has these pool parameters:
West Coast Claims pool, Cyberdesk includes those values in the effective input payload. You do not need to pass them again as run inputs unless you want to override them for that run.
Priority And Overrides
When the same key exists in more than one place, Cyberdesk uses this priority order:- Run input or sensitive run input
- Desktop parameter or sensitive desktop parameter on the assigned desktop
- Pool parameter or sensitive pool parameter from the selected pool
sandbox, because run input wins. If the run omits region, the workflow sees us-west-2. If the assigned desktop also omits region, the workflow sees us-west.
An explicit run-level
__EMPTY__ value is still an override. Omitted, null, or blank values allow lower-priority defaults to fill in. To actively clear a populated field during desktop entry, use __CLEAR__.Plain And Sensitive Values
Pool parameters come in two forms:- Plain parameters are stored as normal structured values and referenced as
{key}. - Sensitive parameters are stored securely and referenced as
{$key}.
$ prefix:
$ prefix:
$-prefixed root keys, such as $shared_api_key.
Multiple Selected Pools
A run can select more than one pool. Cyberdesk merges parameters from all selected pools before the run starts. If two selected pools define the same parameter key, Cyberdesk rejects the run instead of choosing one silently:Validation Behavior
When a run selects pools, Cyberdesk loads those pool parameters during create-time validation. This means required workflow inputs can be satisfied by selected pool parameters before a desktop has been assigned. If the final desktop is not known yet, Cyberdesk still validates the concrete values it already has:- Run inputs
- Sensitive run inputs
- Selected pool parameters
- Selected sensitive pool parameters
Dashboard Setup
- Go to the dashboard and open the Desktops area.
- Click View Pools.
- Create or edit a pool.
- Add plain or sensitive pool parameters in the pool parameter editor.
- Start a run and choose pool-based machine selection.
- Select the pool whose defaults should apply.
SDK Setup
pool_ids instead of a specific machine_id:
Choosing The Right Parameter Type
Use pool parameters when a value is shared across every desktop in a selected pool. Use desktop parameters when a value depends on the assigned desktop, such as machine-specific credentials, local file paths, or desktop-specific account IDs. Use run inputs when a value belongs to a specific run, such as a claim number, invoice ID, customer name, or any value that should be supplied by the caller.Common Gotchas
- Pool membership alone does not apply pool parameters; the run must explicitly select the pool.
- Selecting a specific desktop bypasses pool parameters.
- Duplicate keys across selected pools fail fast.
- Run inputs override pool parameters, even when the pool value exists.
- Sensitive parameter keys are configured without
$and referenced with$in prompts and schemas.