Skip to main content

INDUSTRY · AUGUST 31, 2026 · 6 MIN READ

Rubber Duck Confirms What Scan-Time Review Still Has to Do

VS Code 1.135's Rubber Duck puts a second AI model inside the IDE session. Here is what it catches, what it misses, and why repo-level review still matters.

By the Hyrax team


Rubber Duck Confirms What Scan-Time Review Still Has to Do

VS Code 1.135, released August 26, ships Rubber Duck: an experimental mode that runs a second AI model against the first model's plans, code, and tests before a human sees the result. Microsoft has now embedded cross-model review inside the IDE session. That move validates the structural argument for independent review, and it also clarifies exactly where IDE-level critique stops and repo-level audit begins.

What Rubber Duck Actually Does#

Rubber Duck is triggered by running /rubber-duck in any Copilot agent host session. A complementary model , different from the one driving the session , reviews the primary agent's output and reports findings without modifying anything. According to byteiota.com, when Claude is the orchestrator, GPT-5.4 runs the review. Cross-provider critique, read-only, baked into the authoring workflow.

The feature debuted in GitHub Copilot CLI in April and is now in the IDE. Microsoft describes it as surfacing "missed details or edge cases." That framing is precise and important: Rubber Duck operates on the session's intent and plan, not on the committed artifact.

The Vendor-Loop Problem Rubber Duck Addresses#

The scale of same-vendor review is measurable. A study of 248,641 agent-authored pull requests found 208,145 were reviewed by the same product that wrote them. Roughly five in six closed-loop reviews counted one vendor twice. Rubber Duck directly attacks that pattern by forcing the review to cross a model boundary. That is not a minor UX improvement. It is an architectural acknowledgment that reviewer independence matters.

Cross-model critique also addresses self-attribution bias. Research published in March 2026 found that a model judging its own output shows AUROC falling from 0.99 to 0.89 compared to judging another model's output. A different model, reading the same code cold, removes a measured source of leniency. Rubber Duck imports that principle into the authoring session.

What the Session Cannot See#

The review surface for Rubber Duck is the session , the plan, the code, the tests as they exist in the agent's conversational context. That is the right place to catch a misunderstood requirement or a faulty approach before it hardens into a commit. It is not the right place to catch a cross-file regression introduced three PRs ago, a secret that drifted into a config file in a branch that merged last week, or a reliability pattern that only becomes visible when two files are read together without the session's framing.

The Agent Host Protocol, released alongside Rubber Duck, deepens this distinction. AHP is an open, MIT-licensed standard that decouples agent sessions from editor windows. Sessions survive the editor closing, run on remote machines, and allow multiple clients to observe the same session simultaneously. The practical result: the session is now a first-class artifact, portable across Claude Code, Copilot CLI, the GitHub Copilot app, and VS Code. The review surface has shifted from "the PR" to "the session that produced it."

That shift makes session-time review more valuable. It also makes the PR artifact , the thing that actually enters the repository , harder to trace back to a single context.

Two Review Layers, Different Jobs#

Rubber Duck sees intent. It reviews the agent's reasoning and output while the session is still active, while the author is still present, while corrections cost the least. That is a genuinely useful place to intervene.

Scan-time review sees the artifact. Hyrax reads the entire codebase, not the session log, and looks across six domains: security, code quality, reliability, API and data, ops, and UX. It runs 13 verification steps before submitting a fix PR. The session may have been perfectly coherent; the committed code may still introduce a vulnerability, break an implicit contract, or carry a dependency the session never considered.

These are not competing approaches. They address different failure modes at different points in time. A second opinion at authoring time catches what the primary agent's framing missed. A scan after commit catches what the session's context could not see. The CodeRabbit vs Qodo vs Hyrax comparison covers why reviewer independence , not just reviewer presence , determines whether a finding is reliable.

What Microsoft's Move Means for the Field#

Microsoft shipping Rubber Duck into VS Code 1.135 is a signal, not a feature. The signal is that one model reviewing its own output is no longer acceptable as a default, even at the IDE layer. The ntcompatible.com writeup notes Rubber Duck closed 74.7% of the performance gap to flagship models on SWE-Bench Pro when used in this configuration. That number suggests real quality impact, not cosmetic differentiation.

The AHP architecture compounds the implication. When sessions are portable and persistent , when a Claude Code session from Tuesday is continued in VS Code on Thursday , the history of how code was produced becomes harder to audit from the PR alone. Scan-time review that reads the committed artifact, independent of session provenance, becomes more structurally necessary, not less.

Rubber Duck is the right intervention at author time. The artifact still needs independent eyes.

Hyrax is live at hyrax.dev.


Sources

  1. 01infoworld.com
  2. 02byteiota.com
  3. 03ntcompatible.com
  4. 04beri.net
  5. 05visualstudiomagazine.com