Document

Personal and Team Resources

Every Builders project and reusable resource has an ownership scope. Personal resources belong to one user. Team resources belong to a team that has access to Builders. A workflow can select only compatible resources visible through its project's scope.

Start with the project owner

The project is the workflow's primary access context. Its pipelines and versions operate under the project owner; a pipeline does not choose a separate personal or team owner.

Project settings showing a user-owned project and the Change ownership actionProject settings showing a user-owned project and the Change ownership action

Use a personal project when one account owns the workflow and its dependencies. Use a team project when eligible team members must collaborate on the workflow and operate its shared resources.

For a team-owned project, three conditions apply before a member can work with it:

  1. The person belongs to the team in the main Boilerplate Team workspace.
  2. The team has been granted access to Builders.
  3. The person's role allows the intended Builders action.

Roles govern what the member may do. Resource scope governs what the project may select. These are separate checks.

Match projects and resources

Use this matrix as the default visibility rule:

Project scopeResource scopeExpected selection behavior
Personal projectResource owned by the same userAvailable when its type and capability match the block
Personal projectTeam-owned resourceNot automatically available
Team projectResource owned by the same teamAvailable to compatible selectors for permitted team members
Team projectUser-owned resourceNot available as a private dependency of the shared workflow
Team projectResource owned by another teamNot available unless Builders explicitly provides a supported sharing relationship

Matching scope does not override other requirements. A team integration can still be absent when it has the wrong provider type or capability, and its external credential can still be rejected by the provider.

Understand which resources are scoped

ResourceHow scope is selectedWhat the workflow resolves
ProjectCurrent owner in Project settingsAccess context inherited by its pipelines and versions
IntegrationOwner type and owner during the Assign stepCompatible provider connection for triggers, blocks, files, or approved AI tools
Static DrivePersonal or team drive selectorPersistent paths inside the selected owner's drive
General VaultOwner type when the entry is createdAvailable Vault keys and secure executor-side values
Database connectionOwner type when the connection is createdConnections offered to DB Query
AI agent connectionOwner type when the connection is createdPrivate or team model sources offered to AI Agent blocks

Context Drive is isolated to a workflow run rather than managed as a reusable drive selected from the workspace. Its effective access follows the executing workflow.

Assign a reusable resource deliberately

Resource forms expose Owner type when ownership is chosen. The integration wizard uses its Assign step:

The integration Assign step with the Owner type fieldThe integration Assign step with the Owner type field

Choose the owner that will operate the dependency for its full lifecycle. Before creating a team resource, confirm:

  • which team-owned projects need it;
  • whether the team currently has Builders access;
  • who maintains or rotates its credential or data;
  • which provider account, database, drive, or model environment it targets;
  • whether test and production require separate resources;
  • which roles may configure the resource and dependent workflow.

Some resource edit forms keep their saved owner read-only. When no supported transfer action is available, create an equivalent resource in the destination scope, reconnect the workflows, test it, and only then remove the original.

Understand why a private integration is missing

A personal integration can be healthy and still remain unavailable to a team project. Builders excludes it to prevent a shared workflow from silently depending on a credential that belongs to one member's private scope.

The affected block can show an empty integration selector and a required-configuration warning:

A Read File block with no active Google Drive integration available in its project scopeA Read File block with no active Google Drive integration available in its project scope

Resolve this state by creating or selecting a compatible integration owned by the same team as the project. Do not paste the personal credential into the block, Code, a template, General Vault, or an exported schema to bypass the ownership boundary.

The same principle applies when selectors are empty for General Vault entries, database connections, Static Drive locations, and AI connections.

Keep Builders and provider access separate

Builders ownership answers whether the workflow may select a resource. The external provider decides what its credential may do.

Access layerExample failure
Team membershipThe user no longer belongs to the owning team
Team Builders accessThe group exists, but its access to Builders was removed
Member roleThe member can view the team but cannot perform the requested edit or administrative action
Project/resource scopeA team project cannot select a user-owned integration
Builders capabilityA read-only integration is not available to a write operation
Provider authorizationThe selected credential lacks access to the mailbox, drive, database, repository, or model

Check these layers in order. A successful connection test does not make a personal resource visible to a team project, and team ownership does not grant additional provider permissions.

Change a pipeline's scope safely

A pipeline inherits scope from its project. Moving it to another project or changing the project owner can therefore change every reusable resource available to its blocks.

Builders does not copy integrations, Vault values, databases, AI connections, or Static Drive files into the destination scope. Unavailable references can be removed or left as incomplete required configuration.

Before changing scope:

  1. Inventory every referenced resource and persistent file path.
  2. Create approved equivalents under the destination owner.
  3. Record provider callbacks that may change with a replacement integration.
  4. Move or change ownership only after the destination dependencies are ready.
  5. Reopen every affected block and select the destination resource.
  6. Save a draft, run controlled tests, and inspect external effects.
  7. Publish only after the destination workflow is complete.
  8. Remove the previous resources after all dependent pipelines have moved.

Do not rely on matching display names. Verify the owner, provider account, database, drive, model project, and environment of each replacement.

Troubleshoot resource visibility

  • A team is absent from an owner selector: verify membership, the team role, and whether the team has Builders access.
  • A personal resource is missing from a team block: create a compatible resource owned by that team and reconnect the block.
  • A team resource is missing from a personal project: use a personal equivalent or move the project through a supported ownership process.
  • A resource with matching ownership is still absent: check its connector type, read/write capability, MCP eligibility, and active status.
  • A project move left a required field empty: select an approved destination resource, apply the block settings, save, and test the draft.
  • Static Drive reports a missing file: confirm the selected drive scope and recreate or copy the file at the destination path.
  • The resource is selectable but execution is denied: inspect the external provider permissions, credential status, network access, and operation arguments.

Next steps

Boilerplate Wiki - Personal and Team Resources