Note
HydraFusion is in research preview and subject to change. During the research preview, there's no service level agreement (SLA), and HydraFusion isn't intended for production workloads. We're gathering feedback to shape the feature, so share your experience in the HydraFusion feedback discussion.
About HydraFusion
HydraFusion is an advanced runtime model orchestrator in Copilot. It chooses an execution pattern for your task and the models that run it, then returns a single response. For example, it can choose one model to draft a solution and a separate model for review.
You select HydraFusion in the model picker, but it isn't a model. It's a system that orchestrates models at runtime. You don't need to switch models during a task or decide which model suits each step. For each request, HydraFusion selects the right execution pattern, including the models that run it.
Where auto model selection picks the best model for each request, HydraFusion picks the best execution pattern for the task.
How HydraFusion works
HydraFusion treats this choice as an optimization problem. For each task, it uses capability signals for reasoning, code generation, debugging, and tool use to select the most efficient execution pattern that meets the quality bar.
HydraFusion currently chooses one of three execution patterns:
| Execution pattern | What happens |
|---|---|
| Single | One model completes the task. |
| Cascade | An efficient model drafts a solution, and a quality gate decides whether to accept it or escalate to a stronger model. |
| Critique | One model drafts a response, and a model from a different model family provides feedback on the draft. The first model then revises its response once, based on the feedback. |
The Critique execution pattern is similar to the rubber duck agent in Copilot CLI. See About the rubber duck agent.
HydraFusion only adds model passes when a task warrants them, so a straightforward task doesn't wait or pay for a review it doesn't need. The Single execution pattern behaves much like a request to one model. Cascade and Critique take longer, because they include review passes.
HydraFusion draws on a mix of models: faster models for straightforward work, and models with stronger reasoning for harder problems. The mix changes as new models become available and as GitHub evaluates which models perform best, so there isn't a fixed list of models.
While HydraFusion works, you can follow the progress of each step. Intermediate drafts might be revised or discarded, so HydraFusion only shows you the final response.
HydraFusion doesn't have a context window of its own. Each step runs within the context limits of the model running it. The context window shown for HydraFusion is a conservative value based on the smallest limits among the models it uses.
For more about how HydraFusion works and how it performs on benchmarks, see Project HydraFusion: frontier quality via multi-model orchestration on the GitHub Blog.
When HydraFusion chooses an execution pattern
HydraFusion chooses an execution pattern for each prompt, so different prompts in the same session can use different execution patterns. For example, if your first prompt uses Single, a follow-up prompt can use Critique.
Choosing an execution pattern is a lightweight step that adds little time, and it doesn't generate any part of your response.
Choosing between HydraFusion and Auto
- Use Auto for everyday work. It picks one model for each request, and paid plans get a discount on model costs.
- Use HydraFusion for substantial, well-scoped coding tasks, such as fixing a complex bug or making a change across several files, where additional model passes may be worth the extra time and AI credits.
Billing for HydraFusion
When you use HydraFusion, you're billed for each model it uses, at that model's standard rate. There's no separate charge for HydraFusion, and the discount for auto model selection doesn't apply. Because HydraFusion can use more than one model for a task, a task can consume more AI credits than it would with a single model. For per-model rates, see Models and pricing for GitHub Copilot.
HydraFusion keeps your main conversation on the same model whenever possible, so the conversation continues to benefit from cached tokens. Models that assist, such as a reviewer, receive only the context they need.
Availability and policies for HydraFusion
HydraFusion is available in Copilot CLI, Visual Studio Code, and the GitHub Copilot app.
HydraFusion only uses models that are available in your plan and allowed by your organization's or enterprise's model policies. If none of the models that HydraFusion uses are available to you, HydraFusion doesn't appear in the model picker. You can't choose which models HydraFusion uses.
Access to preview features is controlled by policy settings at the organization and enterprise level. See Managing policies and features for GitHub Copilot in your organization and Managing policies and features for GitHub Copilot in your enterprise.
Using HydraFusion in Copilot CLI
-
Update Copilot CLI to the latest version.
Shell copilot update
copilot update -
Start Copilot CLI with experimental features turned on.
Shell copilot --experimental
copilot --experimentalIf you're already in a session, enter
/experimental on, then restart Copilot CLI. -
Enter
/model, then select HydraFusion (Research Preview). -
Enter a prompt. While HydraFusion works, Copilot CLI shows:
- The execution pattern that HydraFusion chose: Single, Cascade, or Critique
- Each pass it plans to run, and whether the pass is done, running, or pending
- What the current pass is doing, such as running tools or receiving output
- How long the task has been running
To interrupt HydraFusion, press Esc. When the task is complete, the conversation keeps a summary of the execution pattern and its steps, including any warnings.
To use HydraFusion for a single prompt, for example in a script, use the --model option. Replace YOUR-PROMPT with your task.
copilot --experimental --model hydrafusion -p "YOUR-PROMPT"
copilot --experimental --model hydrafusion -p "YOUR-PROMPT"
Using HydraFusion in Visual Studio Code
To use HydraFusion, you need VS Code version 1.140 or later, or VS Code Insiders.
- Open the Settings editor by pressing Ctrl+, (Linux/Windows) / Command+, (Mac).
- Search for
chat.copilot.hydraFusion.enabled, then select the checkbox to turn on the setting. - Open Copilot Chat by clicking the chat icon in the title bar of Visual Studio Code.
- At the bottom of the chat view, select the CURRENT-MODEL dropdown menu, then click HydraFusion. It appears below Auto.
- Enter a prompt. The chat view shows each step of the execution pattern as HydraFusion works.
To see which models HydraFusion used, hover over the footer of a completed response.
Using HydraFusion in the GitHub Copilot app
- Update the Copilot app to the latest version.
- Open Settings, then click Experimental.
- Turn on HydraFusion.
- In the model picker, select HydraFusion.
To see which models HydraFusion used, hover over the response.
Checking your usage
To see the AI credits that each model consumed in a Copilot CLI session, enter /usage. To see your usage across Copilot, see Monitoring your GitHub AI Credits usage.
For a detailed record of the execution pattern and the models used for each step, for example to include in a bug report, enter /collect-debug-logs in Copilot CLI. This creates an archive of debug logs for the session.
Limitations of HydraFusion
- HydraFusion works separately from subagents and doesn't start them.
- If HydraFusion discards a draft, changes that the draft already made in your workspace, such as file edits, aren't undone automatically. Review changes before you commit them.
- The execution patterns and models that HydraFusion uses can change during the research preview.
Troubleshooting
If you run into problems with HydraFusion, check these common causes.
HydraFusion doesn't appear in the model picker
- In Copilot CLI: Make sure experimental features are on. If you turned them on with
/experimental on, restart Copilot CLI. If HydraFusion still doesn't appear, switch to the prerelease channel by entering/update prerelease. Prereleases are for early evaluation and might be less stable than regular releases. - In VS Code: Make sure you're on version 1.140 or later and the
chat.copilot.hydraFusion.enabledsetting is on. - In the Copilot app: Make sure you're on the latest version and HydraFusion is turned on in Settings > Experimental. If you don't see the setting, switch to the prerelease channel in the app's settings.
- Through an organization or enterprise: Ask your administrator whether preview features are enabled for you. HydraFusion also doesn't appear if your model policies don't allow any of the models it uses.
A task is slow or uses more AI credits than expected
The Cascade and Critique execution patterns run more than one model pass, so they take longer and can consume more AI credits. Choosing the execution pattern itself adds little time. In Copilot CLI, the progress display shows which execution pattern is running and each pass in it. For quick or routine tasks, select Auto instead.
You're asked to compact the conversation before switching to HydraFusion
The context window shown for HydraFusion is a conservative value based on the smallest limits among the models it uses. If your current conversation is larger than that, compact it before you switch. For more information about compaction in Copilot CLI, see Managing context in GitHub Copilot CLI.
Giving feedback
To share feedback about HydraFusion, comment in the HydraFusion feedback discussion in GitHub Community.