Setting up your Salesforce Org for Scratch Org Pools
Scratch org pool state — pool membership, credentials and allocation — lives on sfp server. The Dev Hub needs no metadata for pooling: no package to install, no custom fields, no sharing rules. Setting up a Dev Hub for pools is registering it with the server.
Register the Dev Hub with sfp server
Authenticate the Dev Hub locally, then register it:
sf org login web -a devhubsfp server org register -u devhub --devhub --defaultPrepare validates the Dev Hub's authentication before it starts. The Dev Hub must hold either a valid SFDX auth URL or an access token — auth:web, auth:store, auth:accesstoken:store or org login --server all qualify. A Dev Hub registered via External Client App JWT bearer also works; scratch org signup is pinned to the PlatformCLI connected app in that case, and the resulting orgs carry standard refresh-token credentials.
Store the Dev Hub's SFDX auth URL in a secrets manager rather than in the repository. The value grants full access to the Dev Hub.
Developer access to scratch orgs
Developers fetch scratch orgs through sfp server:
sfp pool fetch -r <owner>/<repo> -p <pool-tag> --assignment-id <id> --alias my-orgThe server holds each pooled org's credentials from the moment it is provisioned and returns them on fetch — the same applies to sfp scratch login and to fetching an environment in codev. A developer needs no access to the Dev Hub or to any of its objects.