В VS Code 1.135 появилась команда /rubber-duck, и она намеренно использует другую модель
Экспериментальная команда /rubber-duck в VS Code 1.135 передает план, код и тесты агента на проверку модели из другого семейства. GPT-5.4 критикует Claude, и выбор между семействами здесь и есть главное.
VS Code 1.135 вышел 2026-08-26, а 2026-08-31 GitHub включил его в changelog “GitHub Copilot in VS Code, August 2026 releases”. Среди работ над раскладкой сессий спрятано самое интересное в этом выпуске: экспериментальная команда /rubber-duck, которая получает второе мнение о работе агента от модели из другого семейства.
Самопроверка не находит того, что модель уже упустила
Попросить модель проверить собственный вывод почти ничего не стоит, поэтому так делает практически любой агентский harness. Это же и слабое место. Те же веса, которые породили план, порождают и проверку, поэтому слепые зоны оказываются коррелированными: если модель не подумала о случае конкурентной записи, пока писала код, она не подумает о нем и при проверке кода.
Rubber Duck делает противоположную ставку. Оркестратором выступает любая модель семейства Claude, выбранная в переключателе моделей, а проверяющим служит GPT-5.4. Стратегия комплементарной модели заявлена явно, а не получилась случайно: проверяющий берется из семейства, отличного от основного, поэтому сессия на Claude получает критика GPT, а сессия на GPT получает обратное. В GitHub прямо говорят, что это эксперимент, и отмечают, что “исследуют другие семейства моделей для оркестратора и для Rubber Duck”.
Критик только на чтение с рассортированным выводом
Rubber Duck не умеет редактировать. Он читает план, diff и тесты и ищет содержательные проблемы: ошибки логики, изъяны проектирования, дыры в безопасности, недостающее покрытие тестами. Ответ приходит рассортированным, а не свалкой:
> /rubber-duck
Blocking
- RefreshTokenAsync writes the new token before the old one is revoked.
A crash between the two leaves both valid.
Non-blocking
- The retry loop has no jitter. Three clients failing together will
stay in lockstep.
Suggestions
- No test covers an expired token with a valid signature.
Разделение на блокирующее, неблокирующее и предложения стоит перенять, если вы строите собственный субагент для ревью. Неупорядоченный список из двенадцати замечаний просматривают по диагонали; три блокирующих пункта читают целиком.
Он срабатывает сам, но экономно
Вызвать его можно вручную, но Copilot обращается к нему еще и в четырех моментах наибольшей отдачи: после составления плана, после сложной реализации, после написания тестов, но до их запуска, и когда агент застрял в цикле. Последний триггер оправдывает себя лучше всех, поскольку зациклившийся агент это самый ясный сигнал того, что у основной модели закончились идеи насчет собственного вывода.
Внутри все идет через уже существующий task tool в Copilot, ту же машинерию, что и у остальных субагентов. Значит, это не бесплатно: каждый автоматический вызов это полноценный ход модели, списываемый с вашего premium-потребления, поверх токенов основного агента. В VS Code 1.135 также появился учет токенов по моделям в подвале каждого ответа чата, и именно оттуда вы узнаете, во что обходится утка.
Как включить
В VS Code команда /rubber-duck работает внутри сессии agent host в Copilot, то есть в режиме, где harness запускается в отдельном процессе поверх Agent Host Protocol. Если сессии agent host у вас еще не включены, это тот же набор возможностей, с которого в VS Code 1.128 начались сессии agent-host для Claude с несколькими чатами. В GitHub Copilot CLI функция открывается slash-командой /experimental.
Доступность условна: основная сессия должна работать на модели Claude или GPT, и должна быть доступна подходящая комплементарная модель. Если хотя бы одно условие не выполнено, команда просто не появляется.
Подробности приведены в заметках о выпуске VS Code 1.135 и в материале GitHub о том, как комбинировать семейства моделей ради второго мнения.
Comments
Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.