Skip to content

Managed modules#

A managed module is a community module (such as googleapis or protovalidate) that Buf keeps in sync on your private BSR instance, so developers can depend on it from buf.yaml without leaving the instance. This applies to private BSR instances (Pro, Enterprise, and on-prem); managed modules aren’t relevant to the public buf.build, where the upstream lives.

What’s included#

The canonical list of managed modules is the bufbuild/modules GitHub repository. Each entry there is a community Protobuf module Buf has set up to mirror to private BSR instances.

How syncing works#

Buf syncs managed modules to your instance automatically. The default cadence is hourly; on-prem operators can configure the interval between 10 minutes and 24 hours.

The instance carries the synced version history, not just the latest commit, so existing module references in consumer projects keep resolving as new commits arrive upstream.

On-prem operators can opt into a subset of the supported list rather than syncing every entry; the configuration takes an explicit list of modules.

Reference a managed module#

Developers reference a managed module by your instance hostname, not buf.build. For example, in buf.yaml:

buf.yaml
version: v2
deps:
  - your-bsr-instance.example.com/googleapis/googleapis

Request a new managed module#

To request that Buf add a new managed module to the supported list, open an issue on bufbuild/modules.

Get help#

For problems with an existing managed module sync on your instance (missing versions, stale data, sync errors), contact Support or your Buf representative.