gastownhall/beads · error

--contributor is not supported with --proxied-server

Error message

--contributor is not supported with --proxied-server

What it means

runInitProxiedServer rejects --contributor combined with --proxied-server. Contributor mode auto-configures fork routing and a planning repo, which is incompatible with the proxied-server lifecycle, so init returns this validation error before touching .beads/.

Source

Thrown at cmd/bd/init_proxied_server.go:56

	externalConfig         *configfile.ExternalDoltConfig
	quiet                  bool
	stealth                bool
	skipHooks              bool
	skipAgents             bool
	reinitLocal            bool
	contributor            bool
	team                   bool
	teamServer             bool
	fromJSONL              bool
	nonInteractive         bool
}

func runInitProxiedServer(cmd *cobra.Command, ctx context.Context, in initProxiedServerInput) error {
	if in.fromJSONL {
		return fmt.Errorf("--from-jsonl is not supported with --proxied-server")
	}
	if in.contributor {
		return fmt.Errorf("--contributor is not supported with --proxied-server")
	}
	if in.team {
		return fmt.Errorf("--team is not supported with --proxied-server")
	}

	// Preflight the external dolt binary before any .beads/ write below
	// (checkExistingBeadsData onward). This only applies to managed
	// proxied-server mode (in.externalConfig == nil): external mode talks
	// to a remote/pre-existing dolt sql-server over the network and never
	// spawns a local dolt binary, so it has nothing to preflight here.
	// Failing here means a missing/broken dolt produces a clean preflight
	// error instead of a half-initialized .beads/ directory from a later
	// failure in newManagedProxiedServerUOWProvider.
	//
	// Shares resolveAndProbeDolt (uow_factory.go) with
	// newManagedProxiedServerUOWProvider, which this same `bd init
	// --proxied-server` invocation goes on to call a few lines below via
	// newProxiedServerUOWProvider: the shared doltVersionWarnOnce means the

View on GitHub (pinned to 71377f2769)

Solutions

  1. Remove --contributor when using --proxied-server.
  2. If you want fork-contributor setup, drop --proxied-server and run `bd init --contributor`.
  3. Configure contributor routing manually after proxied-server init if truly needed, via config keys.

Example fix

// before
bd init --proxied-server --contributor
// after
bd init --proxied-server   # or: bd init --contributor
Defensive patterns

Strategy: validation

Validate before calling

if proxiedServer && contributor {
    return errors.New("--contributor cannot be combined with --proxied-server")
}

Prevention

When it happens

Trigger: `bd init --proxied-server --contributor` — the contributor flag is set and rejected as the second check in the function.

Common situations: Initializing a fork-contributor workspace while also pointing at a proxied dolt server, or combining flags from two different init workflows in a script.

Related errors


AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30). Data as JSON: /api/errors/ecf24eb43c6ecbef. Report an issue: GitHub.