3,583 papers
arXiv:2607.27250 71 28 июля 2026 г. FREE

Context-файлы для AI-агентов (AGENTS.md): почему инструкции не спасают от плохого кода

КЛЮЧЕВАЯ СУТЬ
Обнаружено: агент проваливает задачу не потому что не знает правил проекта. Он не умеет спроектировать решение — выбрать паттерн, состыковать код с архитектурой, поймать скрытый пограничный случай. Файл правил (AGENTS.md, CLAUDE.md) не поднимает процент успешных задач — ни постоянная загрузка в промпт, ни выборочное чтение по запросу. Даже когда агент был в одном шаге от финиша, правильный файл правил никогда не дотягивал результат до успеха.
Адаптировать под запрос

TL;DR

Файлы с правилами проекта — AGENTS.md, CLAUDE.md — которые автоматически подгружаются в память AI-агента при каждой сессии, не увеличивают процент успешно решённых задач. Ни постоянная загрузка всего файла, ни выборочное чтение по запросу не меняют результат — агент решает задачи одинаково хорошо (или плохо) с файлом и без него.

Причина неожиданная: агент проваливает задачи не потому что не знает правил проекта, а потому что не умеет спроектировать решение — выбрать правильный паттерн, точно состыковать код с существующей архитектурой, учесть скрытый эджкейс. Исследователи проверили это отдельно: даже когда агент был в одном шаге от успеха (1-4 несданных теста из многих), настоящий качественный файл с правилами проекта никогда не превращал "почти получилось" в "получилось" — ни на одном из двух протестированных агентов.

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

📌

Схема исследования

Тестировали 3 способа подать контекст агенту на одной и той же задаче:

СТРАТЕГИЯ 1 (NONE) — файла с правилами нет вообще → агент работает "с нуля"
СТРАТЕГИЯ 2 (ALWAYS ON) — весь файл правил вставляется в промпт каждый раз
СТРАТЕГИЯ 3 (SELECTIVE) — правила разбиты на темы, агент читает нужный кусок сам, когда решит, что он нужен

Каждую задачу прогоняли 3 раза на двух разных ИИ-агентах (Claude Code и Codex), результат проверяли скрытыми тестами — агент не видел, по каким критериям его оценят.


🚀

Пример применения

Задача: Вы настраиваете кастомные инструкции в Claude Projects для регулярной генерации отчётов по продажам в фирменном стиле компании. Написали подробный документ: "используй такую структуру, такой тон, такие обозначения метрик, не используй канцелярит" — и всё равно каждый третий отчёт получается не тем, что нужно: не так посчитана динамика, перепутаны разделы.

Промпт (то, что НЕ работает так, как ожидалось):

[Система]: Вот правила оформления отчётов компании: [длинный список правил на 2 страницы]
Составь отчёт по продажам за октябрь на основе данных: {данные}

Что вместо этого стоит попробовать:

Вот пример отчёта, который сделан ПРАВИЛЬНО (с нужной структурой и тоном):
{готовый пример отчёта}

Составь отчёт за октябрь по той же структуре и стилю, на основе этих данных:
{данные}

Сначала выпиши, какие разделы и цифры будут в отчёте — я проверю план,
потом пиши финальный текст.

Результат: Модель получит не абстрактное правило "как надо", а конкретный образец для копирования паттерна — это ближе к тому, в чём модель действительно сильна. Разбивка на "план → проверка → финальный текст" убирает ситуацию, когда модели приходится самой додумывать архитектуру решения за один шаг, где чаще всего и происходит ошибка.


🧠

Почему это работает

Языковая модель плохо придумывает архитектуру решения с нуля по абстрактным инструкциям — здесь она чаще ошибается не потому, что не знает нужный факт, а потому что не может правильно "спроектировать" правильную последовательность действий. Добавление ещё одного правила в инструкцию не лечит эту проблему — правило остаётся таким же абстрактным, как и предыдущие.

Зато модель хорошо копирует паттерн из конкретного примера. Показать готовое решение похожей задачи — это не про знания, а про имитацию структуры, а это модели удаётся куда лучше, чем самостоятельное проектирование.

Рычаг управления: если замечаете, что модель раз за разом ошибается в одном месте (структура, логика, стыковка частей) — не дописывайте ещё одно правило в system prompt. Замените абстрактное правило на конкретный пример правильного результата. Если задача сложная — разбейте её на этапы с промежуточной проверкой, вместо того чтобы отдавать модели всё сразу.


⚠️

Ограничения

⚠️ Домен исследования: проверяли на автономных coding-агентах (Claude Code, Codex CLI), работающих с Python-репозиториями. В обычном диалоговом чате механика может отличаться — там нет "рабочей директории", которую агент читает сам.

⚠️ Не проверяли task-specific контекст: исследовали только общие файлы-гайды (стиль кода, архитектурные принципы). Возможно, узкоспециализированный контекст — конкретные примеры кода нужного паттерна — работает иначе. Именно это и советуют авторы вместо общих правил.

⚠️ Слабая статистическая мощность: задач было немного (15-17), поэтому исследование гарантированно не заметило бы эффект меньше 10-15 процентных пунктов. Небольшой позитивный эффект от контекстных файлов теоретически мог остаться незамеченным.


🔍

Как исследовали

Исследователь взял 3 настоящих репозитория с реальными файлами правил (пакетный менеджер, облачный SDK, компилятор) и 17 задач, вытащенных из реальных слитых pull request — то есть с настоящими тестами, которые агент никогда не видел. Каждую задачу прогнали 3 раза на двух разных агентах (Claude Code и Codex) под тремя стратегиями подачи контекста — итого 288 оценённых прогонов.

Самое интересное — "проверка на живучесть эффекта": исследователи специально отобрали задачи-пограничники, которые агент решает то так, то так (не 0% и не 100% успеха) — именно там манипуляция с контекстом теоретически должна проявиться сильнее всего. Даже там контекст не помог.

Отдельно проверили: а вдруг файл правил просто "не читается" моделью и поэтому эффекта нет? Взяли задачи, где агент был буквально в одном шаге от успеха, и подсунули настоящий файл правил высокого качества. Ни разу это не превратило провал в успех — значит, дело не в том, что контекст "не сработал технически", а в том, что он решает не ту проблему, которая мешает агенту.

Любопытная деталь: одна и та же задача может быть легкой для Claude и трудной для Codex, и наоборот (корреляция сложности между агентами всего 0.75) — это объясняет, почему предыдущие исследования на разных агентах приходили к противоположным выводам: они просто ловили разные модели в разных "зонах сложности".


🔗

Ресурсы

Prakhar Khatri, независимый исследователь. "Do Context Files Help Coding Agents? A Two-Agent Ablation Study on Real Repositories". Код, данные и анализ опубликованы автором в открытом доступе.


📋 Дайджест исследования

Ключевая суть

Обнаружено: агент проваливает задачу не потому что не знает правил проекта. Он не умеет спроектировать решение — выбрать паттерн, состыковать код с архитектурой, поймать скрытый пограничный случай. Файл правил (AGENTS.md, CLAUDE.md) не поднимает процент успешных задач — ни постоянная загрузка в промпт, ни выборочное чтение по запросу. Даже когда агент был в одном шаге от финиша, правильный файл правил никогда не дотягивал результат до успеха.

Принцип работы

Кажется логичным: подробнее распишешь правила проекта — меньше ошибок. Эксперимент показывает обратное. Агент одинаково лажает с файлом правил и без него. Модель не умеет проектировать архитектуру по абстрактным инструкциям, зато отлично копирует паттерн из готового примера. Замени правило примером — вот и весь принцип.

Почему работает

Тестировали 15-17 задач, по три прогона на каждой — на Claude Code и на Codex. Тесты были скрытыми — агент не знал критерии оценки заранее. Даже когда агент был на волосок от финиша — оставалось 1-4 несданных теста из многих — качественный файл правил не спасал. Ни на одном из двух агентов «почти получилось» не превращалось в «получилось». Ошибка агента — это пробел в умении спроектировать решение, а не в знании фактов — количеством правил это не лечится.

Когда применять

Автономные ИИ-агенты для написания кода на Python-репозиториях → применяй когда модель раз за разом ошибается в одном месте: не стыкует код с архитектурой, не видит пограничный случай. НЕ подходит как финальный вывод для узкого контекста — конкретные примеры кода нужного паттерна авторы не проверяли, но именно это советуют попробовать вместо общих правил.

Мини-рецепт

1. Замени правило примером: вместо текстового списка «как надо» дай готовый пример правильного решения похожей задачи — модель сильна в копировании паттерна, а не в проектировании с нуля.
2. Разбей задачу на шаги: не отдавай всё сразу — сначала попроси план решения, проверь его, потом дай добро на финальный код.
3. Ищи повторяющуюся ошибку: если модель раз за разом лажает в одном месте — архитектура, стыковка частей, пограничные случаи — не дописывай ещё одно правило в системную инструкцию, это не работает.
4. Не трать время на файл правил проекта: исследование показало — AGENTS.md и CLAUDE.md не поднимают процент решённых задач ни на пункт.

Примеры

[ПЛОХО] : Вот правила оформления кода компании: [список правил на 2 страницы]. Напиши функцию обработки заказов.
[ХОРОШО] : Вот пример функции, написанной правильно (с нужной структурой): {код-образец}. Напиши похожую функцию для обработки заказов. Сначала распиши план структуры — я проверю, потом пиши код.
Источник: Do Context Files Help Coding Agents? A Two-Agent Ablation Study on Real Repositories
ArXiv ID: 2607.27250 | Сгенерировано: 2026-07-31 04:28

Проблемы LLM

ПроблемаСутьКак обойти
Файл с правилами проекта не поднимает долю решённых задачЗагружаешь в контекст файл с правилами (стиль кода, архитектурные принципы). Не важно, грузится он каждый раз или агент читает выборочно. Процент решённых задач не растёт. Причина: агент проваливает задачу не потому что не знает правило. Он не умеет спроектировать решение — выбрать нужный паттерн, точно состыковать код с остальным проектом, учесть скрытый частный случай. Даже когда до успеха оставался один шаг, правильный файл правил не превращал "почти получилось" в "получилось"Не добавляй ещё одно правило в инструкцию. Дай конкретный пример правильного решения похожей задачи. Разбей задачу на шаги: сначала план, потом финальный результат — с проверкой между шагами

Методы

МетодСуть
Пример решения вместо правила + разбивка на шагиВместо абстрактного правила покажи готовый пример правильного результата на похожей задаче. Попроси сначала написать план (какие разделы, какая структура, какой подход) — проверь план — потом финальный текст или код. Пример: {готовое решение} составь по той же структуре: {новые данные} сначала план потом финал. Почему работает: модель хорошо копирует паттерн из образца. Плохо придумывает архитектуру решения с нуля по абстрактной инструкции. Разбивка на шаги не даёт модели проектировать всё сразу — там чаще всего происходит ошибка. Работает: модель раз за разом ошибается в одном месте — структура, стыковка частей, логика. Не работает: ошибка из-за отсутствия конкретного факта или данных, а не из-за неумения спроектировать
📖 Простыми словами

Do Context Files Help CodingAgents? A Two-AgentAblation Study on Real Repositories

arXiv: 2607.27250

Вся эта суета вокруг файлов типа AGENTS.md или CLAUDE.md, которые мы заботливо подсовываем AI-агентам как «библию проекта», на деле оказалась пшиком. Суть в том, что современные модели работают не как прилежные ученики, зазубрившие устав, а как опытные, но своенравные исполнители. Исследование показало, что автоматическая подгрузка правил в контекст вообще не влияет на итоговый результат: агент решает задачи с одинаковым успехом что с талмудом инструкций, что без него. Проблема не в нехватке знаний, а в том, как модель обрабатывает логику действий в реальном коде.

Это как если бы ты нанял строителя и выдал ему пятисотстраничный справочник «Как не косячить при укладке плитки». Формально инструкция у него в руках, но если он в принципе не понимает, как выставить уровень на кривой стене, чтение книжки в процессе работы ему не поможет. Он либо умеет класть плитку, опираясь на свой навык и то, что видит перед глазами, либо лажает, игнорируя любые бумажки. AI ведет себя так же: он смотрит на живой код, а не на твои пожелания о «чистой архитектуре», записанные в отдельном файле.

Исследователи проверили два подхода: постоянную загрузку всего файла с правилами и выборочное чтение по запросу (RAG). Результат в обоих случаях — нулевой профит. Выяснилось, что агенты спотыкаются на этапе проектирования решения, а не из-за того, что забыли название переменной из инструкции. Модель просто игнорирует абстрактные призывы «пиши эффективно» или «соблюдай стиль», потому что её внутренние веса и логика работы с конкретным репозиторием перевешивают любые внешние шпаргалки.

Тестировали это на реальных репозиториях и кодинг-агентах, но принцип универсален для любой сложной работы с LLM. Будь то настройка Claude Projects для генерации отчетов или кастомные GPTs для анализа данных — если модель не вывозит логику задачи, добавление «правил проекта» её не спасет. Это не значит, что инструкции бесполезны, просто они не являются «волшебной таблеткой», которая исправляет кривую архитектуру мысли нейронки. Контекст кода важнее контекста правил.

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

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с