Skip to content

CLI: expose --mcp-command and --env on buzz agents draft-create/draft-update (GUI Advanced parity) #3115

Description

@adamazad

Problem

buzz agents draft-create / draft-update can set channel, display_name,
system_prompt, runtime, provider, model, respond_to — but not the
harness's MCP command or extra env. Those are the two fields that let a managed
agent carry external tools (an app's own MCP server + the token it needs).

Today only Desktop's Create-agent → Advanced exposes them
(desktop/src/features/agents/channelAgents.ts:237runtime.mcpCommand,
plus env_vars in useGlobalAgentConfig.ts:18). The harness already supports
an arbitrary MCP:

  • crates/buzz-acp/src/config.rs:261#[arg(long, env = "BUZZ_ACP_MCP_COMMAND")] pub mcp_command: String
  • crates/buzz-acp/src/lib.rs:4141 build_mcp_servers() — takes any command (derives name from path), not hardcoded to buzz-cli; injects BUZZ_RELAY_URL / BUZZ_PRIVATE_KEY into its env.
  • crates/buzz-acp/src/lib.rs:3721extra_env passthrough already exists.

So the capability is there; the CLI just can't reach it. Anyone scripting agent
provisioning (CI, an app's own setup command) is forced through the Desktop GUI.

Ask

Add to buzz agents draft-create and draft-update:

--mcp-command <cmd>        # BUZZ_ACP_MCP_COMMAND for the harness
--env KEY=VALUE            # repeatable; merged into the MCP subprocess env (extra_env)

Wire them into the same request the Desktop Advanced panel already sends
(runtime.mcpCommand, env_vars) — no new harness behavior, just CLI parity
with the GUI.

Why

Lets an app provision a fully-configured managed agent from one scripted command
— e.g. a <app> mcp tool server + its <APP>_TOKEN — instead of walking a user
through the Advanced GUI. Same motivation as the install deep-link (#2911):
make the agent path scriptable end-to-end.

Happy to send the PR if the shape looks right.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions