Skip to content

Enhance agent teams/subagents orchestration: config-driven, hot-reload, no hardcoded NL routing #2419

@chumyin

Description

@chumyin

Background

Current agent delegation needed deeper separation and intelligence between synchronous agent teams and asynchronous subagents, with runtime configurability and natural-language operability.

Goals

  • Separate orchestration semantics for team delegation vs background subagents.
  • Ensure natural-language driven updates are configuration-driven (no hardcoded keyword triggers for specific toggles/counts).
  • Support hot apply for enable/disable and count limits without restart.
  • Keep defaults enabled.

Proposed scope

  • Add explicit runtime config sections:
    • [agent.teams]: enabled, auto_activate, max_agents
    • [agent.subagents]: enabled, auto_activate, max_concurrent
  • Extend delegate agent profile metadata for non-hardcoded selection:
    • enabled, capabilities, priority
  • Introduce shared agent selection strategy used by both delegate and subagent_spawn.
  • Add model_routing_config action set_orchestration for NL-driven config mutation.
  • Keep tools registered and enforce toggles at execution-time so config updates hot-apply.
  • Add tests for runtime toggle/concurrency hot apply and metadata persistence.

Acceptance criteria

  • delegate and subagent_spawn both support agent omitted/auto when corresponding auto-activation is enabled.
  • Runtime disable for teams/subagents is enforced immediately from config.
  • Subagent concurrent limit is runtime-configured (not fixed constant).
  • Selection favors metadata/capability/priority rather than hardcoded agent names.
  • Tests cover new behavior and pass.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions