An agent defines how work is done; a session is one piece of work. You define an agent with the Anthropic shape: name, model, system, tools, mcp_servers, skills, description, metadata.
  • model is the name of a model configured in your project; an object {id, effort} is also accepted.
  • Every update creates a new version; version on update is an optimistic lock (409 on mismatch).
  • Agent names are unique in a project.
  • See Use the official Anthropic SDK for the fields BMA rejects.

Models

BMA calls models through model providers configured in your organization; an agent names one of the project’s configured models. The hosted deployment provides the models; ask the BMA team which names are configured for your project. Per-session model changes are possible through agent_with_overrides on session create (model, reasoning effort, system prompt, and a session-lifetime credential with api_url/api_key/api_format). The key is write-only and never echoed.

Tools

The Anthropic bash tool maps to run_command. The Anthropic read, write, edit, glob and grep tools are not available yet; the agent edits files with bash. When a config has machine sources, BMA adds the command, process and machine tools automatically; attaching skills adds skill.

Permissions

Each tool has a permission mode: MCP tools default to always_ask. auto is treated as always_ask. With always_ask, BMA asks before creating a machine, so a denied call never provisions anything.