Skip to content
IFAI

AI tools

GitHub Copilot pairs Claude with GPT-5.4 for a second opinion

Published Reach 42

GitHub just launched Rubber Duck in experimental mode for Copilot CLI, a cross-model review agent that taps another model family to critique coding plans and implementations. When Claude orchestrates, GPT-5.4 steps in at key checkpoints to spot blind spots. On SWE-Bench Pro, pairing Sonnet 4.6 with Rubber Duck closed 74.7% of the gap to Opus alone.

Image: github.blog

When developers get stuck on a tricky bug, they often talk to a yellow plastic duck on their desk. Half the time, just saying the problem out loud reveals the flaw. But when today's coding agents talk to themselves, they usually just confirm their own biases.

GitHub introduced Rubber Duck in experimental mode for Copilot CLI. Instead of having an AI double-check its own work with the same training blind spots, GitHub brought in an independent reviewer from an entirely different model family. If you use Claude as your primary driver, Rubber Duck assigns GPT-5.4 to critique its moves.

GPT critiques Claude

Standard coding agents follow a straightforward loop: assess the issue, write a plan, implement, and run tests. The danger lies in early planning. When an agent starts with a bad assumption, downstream code turns into technical debt before anyone notices.

Self-reflection helps, but a model reviewing its own output shares the exact same blind spots. GitHub tackled this by pairing Anthropic's Claude with OpenAI's GPT-5.4 to deliver an objective second opinion.

Tested against the SWE-Bench Pro benchmark of complex real-world repository tasks, pairing Claude Sonnet 4.6 with Rubber Duck powered by GPT-5.4 closed 74.7% of the performance gap between Sonnet and the flagship Opus 4.6 running alone.

Rubber Duck proved most effective on thorny tasks spanning three or more files and requiring over 70 steps. On those jobs, the combined setup scored 3.8% higher than Sonnet alone, and jumped 4.8% higher on the hardest problems across three evaluation trials.

GitHub shared a few practical catches from the benchmark runs. In the OpenLibrary repository, Rubber Duck spotted that a proposed async scheduler would immediately exit without executing any jobs, while one of the scheduled tasks was stuck in an infinite loop. In a Solr query implementation, it caught a loop silently overwriting the same dictionary key, which would have dropped three out of four search facets without throwing an error. In NodeBB, it flagged three separate files reading from a Redis key that the new code had stopped writing, preventing silent production breakages.

Where the duck steps in

Running two frontier models at every single step would destroy response times and drain API budgets. GitHub solved this by having the orchestrator summon Rubber Duck sparingly at high-leverage checkpoints.

The first trigger is immediately after drafting a plan. Catching a architectural mistake here prevents the agent from writing hundreds of lines of doomed code.

The second checkpoint fires after a complex implementation, bringing fresh eyes to hunt for subtle edge cases.

The third happens right after generating tests but before executing them. This catches flawed assertions and hollow coverage before the agent falsely celebrates that everything passed.

Copilot CLI can also summon Rubber Duck reactively when it gets stuck in an execution loop, or developers can trigger it manually on demand. You can access it today by running the /experimental slash command in Copilot CLI with a Claude model selected and GPT-5.4 access enabled.

Why it matters

For everyday developers, this is a massive efficiency boost. You can run the faster and cheaper Sonnet model for the heavy lifting while letting GPT-5.4 catch high-stakes blunders, effectively unlocking Opus-tier output without the full overhead. For multi-file refactors where silent breakages ruin your deploy, that second opinion is worth trying right away.

For the wider AI industry, this marks a shift away from the solitary model race. Every frontier model has idiosyncratic blind spots shaped by its pre-training data and alignment recipes. Instead of waiting for a single model to become flawless, chaining complementary architectures together solves real-world software engineering far more reliably. Rival tools like Cursor and Windsurf will likely have to build similar multi-vendor pipelines.

We think GitHub’s tactical placement of Rubber Duck is clever because it avoids token bloat by restricting reviews to three high-signal moments. That said, relying on two separate model APIs naturally adds network latency, and it remains to be seen how gracefully the primary agent resolves genuine disagreements when two frontier models clash over system design.

Sources (1)

  1. [1]
    github.blog(opens in a new tab)Originalgithub.blog

Best of AI, daily