⚠️ Deprecated Package

bun-workspaces has been deprecated and is now developed as pacwich, which supports Bun, npm, and pnpm workspaces, with a mostly backwards compatible CLI and API. Users can expect little to no disruption beyond the package name change and config file name changes.

A full migration guide covering all differences between the packages is available at https://pacwich.dev/intro/bun-workspaces-migration

Installation docs are available at https://pacwich.dev/intro/getting-started

You can also instruct an LLM agent to read https://pacwich.dev/intro/bun-workspaces-migration/index.md to assist with migration.

Read the launch blog post about the motivations and development strategy.

bun-workspaces will not receive further releases save for critical security patches, if necessary. This website will stay up at least through 2026. Once decommissioned, documentation will be consolidated to the package README.

Configuration: Environment Variables

Settable Environment Variables

Set these environment variables to override default values used. The root configuration will take precedence over environment variables, and any values set explicitly in CLI or API arguments will take precedence over both.

  • BW_PARALLEL_MAX_DEFAULT
    The default parallel max for running scripts, when no value is provided to the CLI or API arguments.
    If config.defaults.parallelMax is set in the root configuration, it will take precedence.
  • BW_SHELL_DEFAULT
    The default shell for running inline scripts, when no value is provided to the CLI or API arguments.
    If config.defaults.shell is set in the root configuration, it will take precedence.
  • BW_INCLUDE_ROOT_WORKSPACE_DEFAULT
    Whether to include the root workspace as a normal workspace.
    If config.defaults.includeRootWorkspace is set in the root configuration, it will take precedence.
  • BW_AFFECTED_BASE_REF_DEFAULT
    The default git base ref for affected workspace resolution. This is main when not overridden.
    If config.defaults.affectedBaseRef is set in the root configuration, it will take precedence.
  • BW_DISABLE_EXECUTABLE_CONFIGS_DEFAULT
    Whether to disable executable configs (TS/JS) for the CLI. This is false when not overridden.