Skip to content

Add azd ai toolbox create/update/show/list/delete (plus connection and tag subcommands) to manage Foundry Toolboxes from any directory #8143

@therealjohn

Description

@therealjohn

Feature Request

Please add azd ai toolbox commands to the agent extension that provide full CRUD on Toolboxes in a Foundry Project, following the design specifications in foundrysdk_specs PR #165. This issue is part of the umbrella consolidation effort tracked in #8135 and is a sibling to the connection work in #8139 and project-context work in #8124.

Design Highlights

  • Command surface: azd ai toolbox create | update | delete | show | list, azd ai toolbox connection add | remove | list, azd ai toolbox tag set | remove | list
  • Versioned resource: azd ai toolbox create <name> auto-detects -- creates a new toolbox (v1) if <name> does not exist on the project, or publishes a new version of the existing toolbox if it does.
  • Connection composition: Toolboxes contain connection-backed tools only. Connections must already exist on the project (created via azd ai connection create); standalone built-in tools (e.g., code interpreter) are wired directly on the agent, not via toolboxes.
  • Tag management: Mutates Azure resource tags on the toolbox via tag set | remove | list.
  • Endpoint resolution: Inherits the standard 5-level resolution order (flag, azd env, global config, env var, structured error) from the umbrella surface.
  • Standalone operation: Works outside an azd project given a resolvable project endpoint.
  • Cross-cutting flags: --output json, --no-prompt, --debug, -p / --project-endpoint, --force (delete confirmation skip), per the umbrella spec.

Open design questions (from the spec, Open Question 3)

  1. Per-version targeting on show / list / delete (default to latest? --version <n> flag? list --all-versions?)
  2. Whether update mutates the latest version in place or always publishes a new version
  3. Whether connection add / connection remove mutate the latest version in place or publish a new version
  4. --force semantics on a versioned create (force-publish identical version? overwrite latest? error if no diff?)

These need Toolboxes-service alignment before implementation.

API dependencies

  • Toolbox data-plane API (versioned resource): create / publish-new-version, update, delete, show, list -- to be confirmed by the Toolboxes service team.
  • Toolbox connections collection API: add / remove / list -- collection mutation semantics to be confirmed.
  • Tag operations ride the standard ARM resource-tag surface.

Please refer to the full design spec (foundrysdk_specs PR #165) -- specifically the Toolboxes sub-section under Requirements, the API Surface table (rows 4-6), and Open Question 3 -- for implementation guidance.

Additional Context

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions