Эксперимент построен вокруг файла с четырьмя правилами дисциплины для агентов программирования. Эти правила — реконструкция сообщества по посту Андрея Карпати, который писал, что модели для программирования «делают за вас неверные предположения и просто продолжают действовать исходя из них, ничего не проверяя». Кто-то превратил эту мысль в файл для Claude Code, и теперь разные его версии вставляют во множество промптов. Логика кажется очевидной: агенты ошибаются, потому что несутся вперёд, не проверяя себя; значит, если заставить их притормозить, результат должен стать лучше.

Автор дал агенту этот файл целиком и сравнил с чистым базовым вариантом на сотне реальных задач по исправлению багов. Результат оказался хуже. В трёх прогонах базовый вариант решил 47, 49 и 45 багов из ста. С правилами тот же агент решил 40, 43 и 40. Изменение относительно базового результата каждый раз было отрицательным: минус 7, минус 6 и минус 5 задач. Автор подчёркивает, что это не погрешность и не один случайный прогон: в каждом запуске агент исправлял примерно на шесть багов из ста меньше. Причина, по его мнению, именно в самих советах.

ПрогонБазовый вариант (из 100)С правилами (из 100)Разница
14740−7
24943−6
34540−5

Что именно тестировалось. Файл взят из репозитория сообщества, где наблюдение Карпати превратили в четыре правила. Первое — думать перед тем, как писать код: не делать предположений, явно обозначать компромиссы, при неясности останавливаться и спрашивать. Второе — сначала простота: минимум кода, ничего «на будущее», не добавлять гибкость и настройки, которых никто не просил. Третье — точечные изменения: менять только необходимое, не улучшать попутно соседний код, не рефакторить то, что и так работает. Четвёртое — выполнение с ориентацией на результат: определить критерии успеха и повторять цикл, пока результат не будет проверен. «Исправить баг» превращается в «написать тест, который воспроизводит баг, а затем добиться, чтобы он проходил».

Правила — это реконструкция сообщества по посту Андрея Карпати о том, что модели для программирования делают неверные предположения и не проверяют себя.

Сравнение было попарным: каждая задача запускалась дважды — один раз с обычным агентом по умолчанию, второй раз с тем же агентом плюс эти правила. Единственное различие между вариантами — наличие правил в промпте. В качестве базового варианта использовался вполне способный агент с настройками по умолчанию, а не заведомо слабый соперник: набор инструкций легко выглядит полезным на фоне плохой базы, но в реальной конфигурации такой эффект быстро исчезает. Весь эксперимент провели трижды, потому что один прогон легко вводит в заблуждение: даже при нулевой температуре этот стек при повторном запуске даёт разброс в пару задач.

Конфигурация. Всё запускалось локально на обычном пользовательском железе: одна RTX 4090 (24 Гбайт) и одна RTX 3090 (24 Гбайт). Сервинг — llama.cpp, собранный из исходников с CUDA и поднятый как OpenAI-совместимый API-эндпоинт, не vLLM. Модель — Qwen3.6-27B с 4-битной квантизацией (Q4_K_M GGUF, около 17 Гбайт), плотная модель для программирования с рассуждением. Бенчмарк — SWE-bench Lite, тестовая выборка, первые 100 задач. Каждая задача основана на реальном баге из GitHub: скрытый тест должен перестать падать, а остальные тесты — продолжить проходить. Тестовый фреймворк — SWE-agent, который управляет моделью через встроенный вызов функций (function calling) и редактор str_replace. Бюджет на задачу: 30 вызовов инструментов, контекстное окно на 32 тыс. токенов, лимит вывода 4 тыс. токенов, температура 0. Прогоны: три попарных прогона. Первый — на RTX 4090; два повторных были распределены между обеими GPU через очередь задач, при этом базовый вариант и вариант с набором инструкций для каждой задачи всегда запускались на одной и той же карте.

Что это значит для практики. Файл с правилами дисциплины — это не бесплатное улучшение, а вмешательство в поведение агента, которое может снизить число решённых задач. Автор не называет точную причину, по которой советы вредят, но фиксирует сам эффект: в его конфигурации инструкции стабильно ухудшали результат. Для команд, которые вставляют такие файлы в промпты по умолчанию, это повод проверять эффект на своих задачах, а не полагаться на интуицию. Пока вывод ограничен одним стеком — Qwen3.6-27B, SWE-agent, SWE-bench Lite, — и не переносится автоматически на другие модели и бенчмарки. Но сам факт отрицательного lift в трёх прогонах делает тему чувствительной для тех, кто строит пайплайны на агентах для программирования.