gastownhall/beads · error

--proxied-server-log-path must be an absolute path, got %q

Error message

--proxied-server-log-path must be an absolute path, got %q

What it means

Like the config path, --proxied-server-log-path must be absolute so the server writes logs to a stable location independent of the init working directory; relative paths are rejected.

Source

Thrown at cmd/bd/init.go:463

			return fmt.Errorf("--team-server requires --proxied-server")
		}
		if serverConfigPath != "" {
			if !initProxiedServer {
				return fmt.Errorf("--proxied-server-config-path requires --proxied-server")
			}
			if !filepath.IsAbs(serverConfigPath) {
				return fmt.Errorf("--proxied-server-config-path must be an absolute path, got %q", serverConfigPath)
			}
			if err := validateProxiedServerConfig(serverConfigPath); err != nil {
				return fmt.Errorf("--proxied-server-config-path %v", err)
			}
		}
		if serverLogPath != "" {
			if !initProxiedServer {
				return fmt.Errorf("--proxied-server-log-path requires --proxied-server")
			}
			if !filepath.IsAbs(serverLogPath) {
				return fmt.Errorf("--proxied-server-log-path must be an absolute path, got %q", serverLogPath)
			}
			if err := validateProxiedServerLogPath(serverLogPath); err != nil {
				return fmt.Errorf("--proxied-server-log-path %v", err)
			}
		}
		if serverRootPath != "" {
			if !initProxiedServer {
				return fmt.Errorf("--proxied-server-root-path requires --proxied-server")
			}
			if !filepath.IsAbs(serverRootPath) {
				return fmt.Errorf("--proxied-server-root-path must be an absolute path, got %q", serverRootPath)
			}
			if err := validateProxiedServerRootPath(serverRootPath); err != nil {
				return fmt.Errorf("--proxied-server-root-path %v", err)
			}
		}
		if serverProxyPort != 0 {
			if !initProxiedServer {

View on GitHub (pinned to 71377f2769)

Solutions

  1. Use an absolute path for the log file
  2. Expand ~ to $HOME explicitly

Example fix

// before
bd init --proxied-server --proxied-server-log-path logs/bd.log
// after
bd init --proxied-server --proxied-server-log-path /var/log/bd/bd.log
Defensive patterns

Strategy: validation

Validate before calling

LOG=/var/log/bd/bd.log
case "$LOG" in /*) ;; *) echo "must be absolute: $LOG"; exit 1;; esac

Prevention

When it happens

Trigger: Running `bd init --proxied-server --proxied-server-log-path logs/bd.log` (path not starting with /).

Common situations: Relative log paths in scripts executed from varying directories; ~-prefixed paths mistaken for absolute.

Related errors


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