Skip to content

Custom Provider Configurations for Subagents #3938

@vibinash

Description

@vibinash

Please explain the motivation behind the feature request.
Currently, subagents inherit the parent agent's provider configuration.

However, not all models are made equal. Likewise, not all tasks are best performed by one model.

This feature will unlock use-cases that rely on the orchestrator-worker pattern. For example, the orchestrator can use a larger and slower model, while the workers can use a smaller and much faster model for execution.

Additionally, for use-cases that rely on subagents to do much of the underlying work, this can help lower the overall costs.

Describe the solution you'd like

  1. Provider configurations via environment variables:
  • GOOSE_PROVIDER env variable to configure the parent agent provider
  • GOOSE_SUBAGENT_PROVIDER env variable to configure the subagent provider
  1. Additional Subagent configurations:
  • max turns
  • timeouts
  1. Subagents can be spawned directly via natural language prompts. The main agent automatically configures the subagent based on it.

Describe alternatives you've considered
The existing lead/worker model configurations relies on turns or failure thresholds to switch between the lead or worker. While this might work for some use-cases, it does feel too rigid for many use-cases where the underlying tasks are ambiguous and not well defined.
Also, use-cases won't be able to use this configuration if they want to use this pattern for a single turn (one complete prompt-response interaction).

Additional context
slack discussion here

  • I have verified this does not duplicate an existing feature request

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions