Skip to content

Sub-agents cannot run hydrafusion or hydrafusion-max, both offered by the task tool #5413

Open

Description

@MattPD

Describe the bug

In an interactive 1.0.109 session with experimental features on, the task tool's model parameter lists hydrafusion and hydrafusion-max among its values, and /model with an unsupported name lists both under "Available models:". A sub-agent launched with either one does not run HydraFusion:

  • In 1.0.109, the launch fails before the sub-agent makes any model request, with Model "hydrafusion" is not available.
  • In 1.0.105 and 1.0.108, the sub-agent completes, but its request goes to the saved default model from settings.json. Its subagent.completed event reports "model":"hydrafusion" and names the default model only in firstDispatchedModel. The task tool result does not mention the substitution.

With the same account, hydrafusion works as the session model in 1.0.109: copilot --experimental --model hydrafusion -p "..." returns an answer.

The 1.0.109 changelog entry "Show an error when a selected or saved model is unavailable instead of silently switching to another model" seems to explain why 1.0.109 reports an error where 1.0.105 and 1.0.108 substituted the default model.

Affected version

1.0.109 (error); 1.0.105 and 1.0.108 (substitution). Linux x86-64.

Steps to reproduce the behavior

  1. Run a prompt-mode session launching one sub-agent with the model under test:

    copilot --experimental --model claude-haiku-4.5 --no-custom-instructions --no-auto-update --available-tools task --output-format json -p 'Call the task tool exactly once with these arguments: agent_type "general-purpose", name "probe", description "model probe", mode "sync", model "hydrafusion", prompt "Reply with exactly one word: ok". Then output the tool result verbatim and stop. Do not call any other tool and do not retry.'
  2. On 1.0.109, the subagent.failed event in the output has these fields, among others:

    {"error": "Model \"hydrafusion\" is not available.", "model": "hydrafusion", "explicitModelOverride": "hydrafusion", "modelSelectionSource": "explicit_override", "totalToolCalls": 0, "durationMs": 40}

    With model "hydrafusion-max" the launch fails the same way. With model "gpt-6-luna" the sub-agent completes and returns ok.

  3. For the earlier builds, I ran that command with three environment variables: COPILOT_CLI_DIST_DIR set to the cached 1.0.105 or 1.0.108 package under ~/.cache/copilot/pkg/linux-x64/, COPILOT_AUTO_UPDATE=false, and COPILOT_HOME set to a directory holding only a settings.json with {"model":"gpt-6.1-sol","experimental":true}. Adding --usage-output-file <path> shows the models used. On both builds, the subagent.completed event had "model":"hydrafusion" and "firstDispatchedModel":"gpt-6.1-sol", and the usage file listed one request to gpt-6.1-sol next to the session model's two requests. With model "hydrafusion-max" on 1.0.105, the event had "model":"hydrafusion-max" and the same firstDispatchedModel.

  4. With "model":"gemini-3.8-flash" in that settings.json, on 1.0.108, the request went to gemini-3.8-flash instead, for hydrafusion and for hydrafusion-max. On 1.0.109 with the same directory, the hydrafusion launch fails as in step 2.

  5. On 1.0.109, I also tried fusion (the Copilot Fusion alias) and auto. Neither is in the task tool's list in the interactive session, so I added this sentence to the prompt after the argument list: Pass the model value exactly as given even if it is not among the listed values. With model "fusion" the launch fails the same way (Model "fusion" is not available.), although --model fusion returns an answer as the session model. With model "auto" the sub-agent completes with one request to gpt-6-luna, so absence from the list does not by itself cause the rejection.

Expected behavior

Either a sub-agent can run HydraFusion, or the task tool does not offer hydrafusion and hydrafusion-max and the documentation states the limitation. The HydraFusion documentation says only that "HydraFusion works separately from subagents and doesn't start them", without saying whether a sub-agent can run HydraFusion.

Activity

  1. added
    area:agentsSub-agents, fleet, autopilot, plan mode, background agents, and custom agents
    area:modelsModel selection, availability, switching, rate limits, and model-specific behavior
    and removed on Nov 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:agentsSub-agents, fleet, autopilot, plan mode, background agents, and custom agentsarea:modelsModel selection, availability, switching, rate limits, and model-specific behavior

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions