Bug
Buzz Desktop 0.5.23 on macOS (Apple Silicon) starts an authenticated managed Claude agent in setup-listener mode when the agent uses a separate CLAUDE_CONFIG_DIR and the desktop's default Claude account is logged out. The agent never starts its normal model pool; mentions produce setup nudges instead of normal replies.
Reproduction
- Configure a managed Claude agent with its own
CLAUDE_CONFIG_DIR in its effective environment.
- Authenticate that account. Leave the default Claude configuration logged out.
- Compare the same CLI under the two environments:
claude auth status: loggedIn: false, exit 1.
CLAUDE_CONFIG_DIR=/path/to/agent-account claude auth status: loggedIn: true, authMethod: claude.ai, exit 0.
- Start/restart the agent in Buzz.
Observed on a live installation: the runtime received the correct agent-specific CLAUDE_CONFIG_DIR, but also received a BUZZ_ACP_SETUP_PAYLOAD containing surface: cli_login, availability: available, and probe_args: ["claude", "auth", "status"]. Its log then recorded:
buzz-acp: setup payload present, entering setup-listener mode
buzz-acp entering setup mode ... requirements=1
The relay connection and channel subscriptions succeeded. Other Claude agents using separate account directories were affected as well. This is a local startup readiness failure, not evidence of a relay delivery failure.
Expected
The startup readiness check uses the same account environment as the agent being launched. An authenticated isolated account should start the normal agent pool even if the desktop's default account is logged out.
Root cause
In desktop/src-tauri/src/managed_agents/:
runtime.rs constructs EffectiveAgentEnv from descriptor.env for readiness and later applies that environment to the launched process.
readiness.rs::collect_missing_requirements does not pass the effective environment to cli_login::requirements for Claude/Codex.
readiness/cli_probe.rs::login_probe only overrides PATH; the auth subprocess otherwise inherits the desktop's environment.
Thus the startup probe and the actual agent consult different account configurations. The same omission affects CODEX_HOME routing, although the reported live failure was reproduced with Claude.
Fix direction
Pass the effective environment through cli_login::requirements into login_probe, applying it to the child process with the same precedence as agent startup. Keep failed-account and invalid-config classification intact. Add regression coverage for account-specific config paths (including spaces) and logged-out accounts.
A local patch and regression test are prepared; deployment validation is in progress. No upstream PR yet.
Related: #5460 describes CLI/adapter credential-store disagreement. This report isolates the additional per-agent environment omission in the startup readiness path, reproducible with the same CLI binary simply by changing CLAUDE_CONFIG_DIR.
Bug
Buzz Desktop 0.5.23 on macOS (Apple Silicon) starts an authenticated managed Claude agent in
setup-listenermode when the agent uses a separateCLAUDE_CONFIG_DIRand the desktop's default Claude account is logged out. The agent never starts its normal model pool; mentions produce setup nudges instead of normal replies.Reproduction
CLAUDE_CONFIG_DIRin its effective environment.claude auth status:loggedIn: false, exit 1.CLAUDE_CONFIG_DIR=/path/to/agent-account claude auth status:loggedIn: true,authMethod: claude.ai, exit 0.Observed on a live installation: the runtime received the correct agent-specific
CLAUDE_CONFIG_DIR, but also received aBUZZ_ACP_SETUP_PAYLOADcontainingsurface: cli_login,availability: available, andprobe_args: ["claude", "auth", "status"]. Its log then recorded:The relay connection and channel subscriptions succeeded. Other Claude agents using separate account directories were affected as well. This is a local startup readiness failure, not evidence of a relay delivery failure.
Expected
The startup readiness check uses the same account environment as the agent being launched. An authenticated isolated account should start the normal agent pool even if the desktop's default account is logged out.
Root cause
In
desktop/src-tauri/src/managed_agents/:runtime.rsconstructsEffectiveAgentEnvfromdescriptor.envfor readiness and later applies that environment to the launched process.readiness.rs::collect_missing_requirementsdoes not pass the effective environment tocli_login::requirementsfor Claude/Codex.readiness/cli_probe.rs::login_probeonly overridesPATH; the auth subprocess otherwise inherits the desktop's environment.Thus the startup probe and the actual agent consult different account configurations. The same omission affects
CODEX_HOMErouting, although the reported live failure was reproduced with Claude.Fix direction
Pass the effective environment through
cli_login::requirementsintologin_probe, applying it to the child process with the same precedence as agent startup. Keep failed-account and invalid-config classification intact. Add regression coverage for account-specific config paths (including spaces) and logged-out accounts.A local patch and regression test are prepared; deployment validation is in progress. No upstream PR yet.
Related: #5460 describes CLI/adapter credential-store disagreement. This report isolates the additional per-agent environment omission in the startup readiness path, reproducible with the same CLI binary simply by changing
CLAUDE_CONFIG_DIR.