Skip to content
← All guides

Agency setup · 10 min read

Set up Build for your team

Prepare your connections, host the builder, become the administrator, and invite people with separate logins.

Applies to Build 1.1.0 · Updated September 15, 2026

Download this guide (.md)

Know the six milestones

  1. Prepare the Agency configuration.
  2. Review and deploy your Cloudflare hosting.
  3. Complete sign-in to this installation.
  4. Grant your Build account administrator access.
  5. Create a workspace, assign a plan, and invite teammates.
  6. Test a real build with a second account.
Build 1.1.0 supports separate accounts and explicit shared projects with one editor at a time. Existing projects stay private. Use the shared-project guide after your team can sign in; upgrade first if you have the original 1.0.0 ZIP.

1. Prepare your connections

Run these commands in the extracted Build folder. Enter credentials through the installer’s masked prompts. Choose manual billing for internal access or payments handled outside Build.

The wizard saves a private file at .build-local/install/agency.env. It does not deploy Build or automatically change the settings of an app that is already running. A prepared result means the saved values passed format checks—not that sign-in or generation has been tested.

Run in your Build folder
node scripts/install.mjs --profile agency
bun run doctor -- --profile agency

You’re ready to continue when: You have a private configuration file and a report showing any missing values. An admin ID can remain unset until your first successful sign-in.

2. Configure and deploy your hosting

Open docs/AGENCY-INSTALL.md and docs/RELEASE.md in your downloaded folder. These contain the resource configuration and deployment procedure. Your coding assistant should help review the required Cloudflare resources, permissions, domain, and costs before making changes.

Prepare your own wrangler.production.jsonc. Connect the Clerk keys and issuer for the same Clerk application/environment, and include your exact app origin in CLERK_AUTHORIZED_PARTIES. A local test on http://127.0.0.1:5173 must explicitly allow that origin.

Run in your Build folder
bun run deploy -- --plan --bootstrap --config wrangler.production.jsonc --env-file .build-local/install/agency.env
This command reviews the plan; it does not publish. The --bootstrap option allows the initial admin list to be empty, while keeping authentication required. Follow the reviewed apply procedure in docs/RELEASE.md, including --bootstrap for that first apply.

You’re ready to continue when: After the reviewed deployment, your hosted Build URL opens. Other computers can reach that URL.

3. Create or sign into your Build account

Open your Build installation and sign up or sign in using an enabled method. Complete email verification. Your Clerk dashboard account and a user account inside your Clerk application are different things.

Check that Build recognizes your session. Returning from Google is not enough if the page still asks you to sign in. If it does, use the sign-in troubleshooting guide before changing administrator settings.

You’re ready to continue when: The app’s authenticated /api/auth/profile request succeeds.

4. Make yourself the administrator

  1. While signed into Build, open your browser’s developer tools and select Network. Reload the page.
  2. Select the app’s /api/auth/profile request. In its response, find data.user.id. Ask your coding assistant to guide you if you have not used developer tools before.
  3. Place that Build user ID in BUILD_AGENCY_ADMIN_USER_IDS in your private agency configuration. Do not use a Clerk user_* ID.
  4. Run the deployment plan again without --bootstrap and apply the reviewed update using docs/RELEASE.md. Editing the local file alone does not update the deployed app.
  5. Reload Build and check that Agency settings is available.
Use the ID from the same installation you are configuring. A local database ID may differ from production. Do not share request headers, cookies, tokens, or a full network export.

5. Invite your team

  1. Open Agency → Clients and create a workspace. This label also serves internal teams.
  2. Assign a plan with the models, seats, and usage allowances the team needs. Use manually managed access if you do not need subscriptions.
  3. Open the workspace’s Members tab and choose Invite member. Use Builder for someone creating projects; use an administrative role only when needed.
  4. Send the generated invitation through your own communication channel. This workflow does not automatically email it.
  5. Have the teammate sign in with the matching verified email, redeem the invitation, and select the workspace.

You’re ready to continue when: A second person can access the intended workspace with their own login.

6. Verify the complete workflow

Have the second person create a project using an allowed model, request a follow-up edit, open the preview, and export source. Confirm that their private projects are isolated from other users.

Complete the acceptance checks in docs/AGENCY-INSTALL.md. Payment tests apply when you enable online subscriptions. Hosting, model usage, storage, and other connected services are billed by their respective providers.

A prompt for your coding assistant

Copy and adapt this prompt
Help me set up Build for my team with separate logins. Read AGENTS.md, docs/INSTALL.md, docs/AGENCY-INSTALL.md, and docs/RELEASE.md in this download. Preserve my existing installation, data, and credentials. Identify my current milestone, then help complete the next one. Use manual billing unless I request subscriptions. Verify actual sign-in errors before changing settings. Do not switch to Personal or ask me to paste secrets into chat. Explain and review the Cloudflare deployment plan with me before applying it. Confirm the project-sharing limits of my version before we invite the team.

Keep going