Как объединить инструкции Claude Code, Codex и Cursor в одном файле в 2026 году
MarkdownКак использовать единый AGENTS.md для Claude Code, Codex и Cursor в 2026 году: встроенное чтение, импорт в CLAUDE.md, символьная ссылка и команда /init.
Читать статью полностью
Работу с сервисом описывает документация Ailoot.
Что меняется, если вы работаете сразу с Claude Code, Codex и Cursor?
Главное
В 2026 году разработчики, работающие с ИИ, часто используют не один инструмент, а три—пять. Например, Claude Code — как основной, Codex — для длительных автономных задач, а Cursor — для быстрых изменений в IDE. У каждого есть собственный файл инструкций: CLAUDE.md, AGENTS.md или .cursorrules. Если синхронизировать их вручную, одну и ту же строку приходится менять в нескольких местах. Легко забыть обновить файл для Cursor, и через неделю Claude и Codex могут по-разному выполнить одинаковый запрос.
В этом примере Claude Code — основной инструмент, а Codex и Cursor используются для отдельных задач. В моём CLAUDE.md примерно 250 строк: там указано, что и в каком порядке читать, какие файлы нельзя менять, какими командами развёртывать проект и как оформлять коммиты. Когда я впервые запустил Codex CLI в проекте, он не знал этих правил: пытался выполнить git push --force, открывал .env и небрежно переименовывал файлы.
Сначала я вручную скопировал CLAUDE.md в AGENTS.md. Через две недели в проекте оказалось уже четыре версии одних и тех же инструкций: в CLAUDE.md, AGENTS.md, .cursorrules и .windsurf/rules/. Они немного различались. Причина не в конкретной программе, а в типичной проблеме нескольких источников правды. Подробнее об этом — в руководстве по работе с несколькими агентами.
В июне 2026 года документация Anthropic о памяти Claude Code предлагала одно решение: общий файл и его импорт. С сентября 2026 года Claude Code самостоятельно читает AGENTS.md, если в проекте нет CLAUDE.md. Импорт по-прежнему нужен, если для Claude есть отдельные правила. Ниже рассмотрим, когда достаточно одного AGENTS.md, как настроить импорт и как отделить общие правила от инструкций для Claude.
Читает ли Claude Code файл AGENTS.md самостоятельно?
Главное
Да, начиная с версии 2.1.277, выпущенной 18 сентября 2026 года, если в рабочей папке и её родительских папках нет CLAUDE.md, .claude/CLAUDE.md или CLAUDE.local.md. Если CLAUDE.md существует, Claude Code по умолчанию читает только его. Чтобы подключить AGENTS.md, добавьте в CLAUDE.md строку @AGENTS.md или создайте символьную ссылку. Поведение можно изменить в /config, в разделе Project instructions. До сентября Claude Code вообще не читал AGENTS.md, и импорт был единственным способом подключить его.
До сентября 2026 года ответ был отрицательным. Запрос № 6235 о поддержке AGENTS.md оставался открытым с августа 2025 года и был закрыт 17 августа 2026 года. Всё это время документация по памяти предлагала завести CLAUDE.md и импортировать в него AGENTS.md. Начиная с версии 2.1.277 в документации описано новое поведение:
Claude Code может использовать
AGENTS.mdкак файл инструкций проекта. Поэтому репозиторий, уже подготовленный для других агентов, будет работать и безCLAUDE.md, импорта и дополнительной настройки.
Какие файлы прочитает Claude Code, зависит от их наличия в проекте:
| Файлы проекта | Что прочитает Claude Code |
|---|---|
Есть AGENTS.md, но нет CLAUDE.md и CLAUDE.local.md ни в рабочей папке, ни выше | AGENTS.md |
В рабочей папке или выше есть AGENTS.md и CLAUDE.md (либо CLAUDE.local.md) | Только CLAUDE.md |
В CLAUDE.md есть строка @AGENTS.md | CLAUDE.md и подключённый через импорт AGENTS.md |
При этой проверке учитываются CLAUDE.md, .claude/CLAUDE.md и CLAUDE.local.md в рабочей папке и во всех её родительских папках. Личный ~/.claude/CLAUDE.md, корпоративный управляемый файл и правила из .claude/rules/ не учитываются: они загружаются наряду с AGENTS.md.
Если CLAUDE.md отсутствует, при запуске Claude Code читает все AGENTS.md и .claude/AGENTS.md в рабочей папке и её родительских папках. Файл AGENTS.md во вложенной папке загружается, когда Claude Code обращается к файлу в этой папке. Импорты @path внутри AGENTS.md также поддерживаются. Файлы AGENTS.local.md, AGENTS.override.md и содержимое папки .agents/ Claude Code не читает.
Обратите внимание: личный CLAUDE.local.md тоже влияет на выбор файла. Если создать его для незакоммиченных личных правил, Claude Code перестанет читать AGENTS.md. Решение — настройка ниже.
Изменить поведение можно через /config, в разделе Project instructions:
| Значение | Какие файлы читает Claude Code |
|---|---|
claude-md-or-agents-md (по умолчанию) | CLAUDE.md, а если нет ни его, ни CLAUDE.local.md — AGENTS.md |
claude-md-and-agents-md | Оба файла: в каждой папке сначала CLAUDE.md, затем AGENTS.md |
claude-md | Только CLAUDE.md |
managed-only | Только корпоративный управляемый CLAUDE.md и автоматическая память |
Если вы хотите сохранить CLAUDE.local.md и при этом подключать AGENTS.md, выберите claude-md-and-agents-md. Повторной загрузки не произойдёт: файл AGENTS.md, уже подключённый строкой @AGENTS.md или символьной ссылкой, Claude Code не загружает во второй раз — независимо от выбранного режима.
Проверить, что файл загружен, можно командой /memory: начиная с версии 2.1.280, путь к AGENTS.md отображается в списке. В версиях ниже 2.1.277 и в сеансах с отключённым встроенным плагином agents-md Claude Code читает только CLAUDE.md; пункта Project instructions в /config там нет. До версии 2.1.281 так же работали сеансы через Amazon Bedrock и сеансы с отключённой телеметрией. В первом сеансе после обновления со старой версии AGENTS.md может ещё не загрузиться; в следующем сеансе поведение должно быть штатным.
Для схемы с общим файлом это означает следующее. Если отдельных правил для Claude нет, достаточно AGENTS.md: его прочитают Claude Code, Codex и Cursor. Если такие правила нужны — например, для планирования работы в рискованных папках, навыков или хуков, — потребуется CLAUDE.md, а Claude Code перестанет самостоятельно загружать AGENTS.md. В этом случае добавьте в CLAUDE.md строку @AGENTS.md. Такой вариант также подходит для старых версий Claude Code. Разберём его подробнее.
Как импортировать AGENTS.md в CLAUDE.md?
Главное
Импорт нужен, когда в проекте присутствует CLAUDE.md: по умолчанию Claude Code не читает одновременно и AGENTS.md. В начало CLAUDE.md добавьте строку @AGENTS.md. При запуске сеанса Claude Code подставит содержимое AGENTS.md вместо этой строки и обработает результат как единый текст. Ниже можно добавить раздел «Claude Code» с правилами только для этого инструмента. Импорт поддерживает относительные и абсолютные пути и вложенность до четырёх уровней.
Минимальный пример из официальной документации:
@AGENTS.md
## Claude Code
Use plan mode for changes under `src/billing/`.
Первая строка — директива импорта. В начале сеанса Claude Code находит её в CLAUDE.md и помещает на это место весь текст из AGENTS.md. Следом идёт заголовок ## Claude Code: это обычный Markdown-раздел, в котором можно описать дополнительные инструкции для Claude. Например, приведённое правило предписывает использовать режим планирования при изменениях в папке биллинга. Codex CLI и Cursor CLAUDE.md не открывают: они используют AGENTS.md.
В документации сказано следующее о работе импортов:
Файлы CLAUDE.md могут подключать другие файлы с помощью синтаксиса
@path/to/import. Содержимое таких файлов раскрывается и загружается в контекст при запуске сеанса вместе с ссылающимся на них CLAUDE.md.
Несколько особенностей, которые стоит учесть:
- Относительные и абсолютные пути.
@AGENTS.mdуказывает путь относительно файла с директивой. Для абсолютного пути подойдут, например,@/Users/me/shared/rules.mdили@~/.claude/personal.md. Последний вариант позволяет хранить личные предпочтения вне репозитория. - Вложенность до четырёх уровней.
AGENTS.mdможет подключить@docs/coding-style.md, а тот — ещё один файл. Допускается до четырёх уровней вложенности, чего достаточно для обычных структур проекта. - Обратные кавычки отменяют импорт. Запись
`@README`— это упоминание имени файла, а не команда подключить его. Так можно объяснить синтаксис, не запуская импорт. - Подтверждение для файлов вне проекта. При первом обращении к пути за пределами рабочей папки, например
@~/.claude/personal.md, Claude Code показывает список таких файлов и запрашивает подтверждение. Если отказаться, внешние импорты останутся отключёнными, а диалог больше не появится. Для@AGENTS.mdиз корня проекта подтверждение не нужно. Это снижает риск случайно включить в контекст посторонний файл.
После перехода на эту схему мой CLAUDE.md в описанном проекте сократился с 250 до 60 строк: в нём осталась ссылка @AGENTS.md и пять—семь правил только для Claude Code, например о режиме планирования для рискованных папок, работе с административным интерфейсом и оформлении коммитов. Общие инструкции собраны в AGENTS.md, который читают Codex и Cursor.
Когда использовать символьную ссылку, а когда импорт?
Главное
Anthropic описывает два способа подключить общие правила: импорт через @AGENTS.md и символьную ссылку ln -s AGENTS.md CLAUDE.md. Ссылка проще: это псевдоним файла, который не требует его редактировать. Но у неё есть три ограничения: в Windows могут понадобиться права администратора, в CLAUDE.md нельзя добавить собственные правила для Claude, а Git иногда отображает ссылку в diff неудобным образом. Импорт подходит для разных платформ. Если специальных правил для Claude нет, начиная с версии 2.1.277 можно обойтись без обоих вариантов: Claude Code прочитает AGENTS.md самостоятельно.
В документации приведена такая команда для создания символьной ссылки:
ln -s AGENTS.md CLAUDE.md
Также Anthropic отдельно предупреждает о нюансах Windows:
Если вы или участник, который клонирует репозиторий, работаете в Windows, используйте импорт
@AGENTS.md. Создание символьной ссылки требует прав администратора или режима разработчика. Если в Git не включён параметрcore.symlinks, закоммиченная ссылка будет извлечена как обычный текстовый файл; в рабочей копии вместо инструкций окажется файлCLAUDE.mdс одной строкой.
Сравнение вариантов:
| Критерий | Импорт @AGENTS.md | Символьная ссылка ln -s |
|---|---|---|
| Работа в Windows без прав администратора | Да | Нет (нужен Developer Mode) |
| Можно добавить правила только для Claude | Да, после импорта | Нет, содержимое файла совпадает |
| Отображение в Git как обычного Markdown-файла | Да | Как ссылка (зависит от core.symlinks) |
| Можно подключить несколько файлов | Да, до четырёх уровней | Нет, связь один к одному |
| Кэширование и обновление в Claude Code | Стандартное для CLAUDE.md | Работает, но возможны дополнительные нюансы со ссылкой |
| Подходящий вариант по умолчанию | Подходит для большинства | Только если совместимость между платформами не важна |
В описанном проекте я выбрал импорт по трём причинам:
- В команде используются разные операционные системы. Я работаю на Mac, а участники команды примерно поровну используют Windows и Mac. Если добавить в репозиторий символьную ссылку, то на Windows без Developer Mode она может превратиться в обычный текстовый файл с единственной строкой
AGENTS.md. Из-за этого правила иногда работают, а иногда нет. - Нужны отдельные правила для Claude. Под строкой
@AGENTS.mdв моёмCLAUDE.mdнаходится раздел «Claude Code». В нём указано, например, применять--effort highдля архитектурных задач, запускатьnpm run buildдоgit pushи не вызывать вручную/api/v1/deploy. Codex эти инструкции не использует. - Так проще разбираться с настройками. Если что-то работает не так, в
CLAUDE.mdсразу видно, где подключены общие инструкции и где заданы переопределения. Дополнительные сведения о настройке Claude Code — в руководстве по безопасному режиму.
Если отдельных правил для Claude нет, начиная с версии 2.1.277 символьная ссылка тоже не требуется: достаточно удалить CLAUDE.md, и Claude Code сам прочитает AGENTS.md. Оставляйте ссылку, если участники команды используют версию старше 2.1.277 и не могут обновиться. Если нужны правила именно для Claude, импорт обычно удобнее.
Какие файлы читают Codex, Cursor, Copilot, Windsurf и Gemini CLI?
Главное
У каждого инструмента есть свой основной файл инструкций; некоторые умеют читать несколько форматов. Claude Code использует CLAUDE.md, а с сентября 2026 года читает и AGENTS.md, если в проекте нет CLAUDE.md. Codex CLI — AGENTS.md и AGENTS.override.md. Cursor — старый формат .cursorrules или новый .cursor/rules/*.mdc; с лета 2026 года он также читает AGENTS.md. Copilot использует .github/copilot-instructions.md или .github/instructions/*.instructions.md. Для Windsurf предусмотрены .windsurfrules и .windsurf/rules/, для Gemini CLI — GEMINI.md. Aider и Cline тоже поддерживают AGENTS.md.
Сопоставление основных инструментов по их официальной документации:
| Инструмент | Основной файл инструкций | Другие варианты | Поддерживает AGENTS.md? |
|---|---|---|---|
| Claude Code | CLAUDE.md | ~/.claude/CLAUDE.md, ./.claude/CLAUDE.md, управляемая политика | Да, если в проекте нет CLAUDE.md (с версии 2.1.277); иначе — через импорт |
| Codex CLI (OpenAI) | AGENTS.md | AGENTS.override.md | Да, встроенная поддержка |
| Cursor | .cursor/rules/*.mdc | .cursorrules (устаревший формат) | Да |
| GitHub Copilot | .github/copilot-instructions.md | .github/instructions/*.instructions.md | Через расширения |
| Windsurf | .windsurf/rules/ | .windsurfrules (устаревший формат) | Да |
| Gemini CLI | GEMINI.md | — | Нет |
| Aider, Cline, opencode | AGENTS.md | — | Да, встроенная поддержка |
Если в репозитории есть AGENTS.md, а при необходимости и CLAUDE.md с импортом, пять из семи перечисленных инструментов получают актуальные общие инструкции автоматически. У Cursor и Windsurf есть собственные форматы правил; можно сохранить их, поскольку они также читают AGENTS.md, или настроить импорт. Синтаксис импорта различается и поддерживается не везде.
Для нового проекта подойдёт такая схема:
- Соберите общие правила в
AGENTS.md. В нём будет основная часть инструкций. - Добавьте
CLAUDE.md, если Claude нужны отдельные правила. В первой строке укажите@AGENTS.md, а ниже перечислите инструкции только для Claude. Если таких инструкций нет, этот файл не нужен: с версии 2.1.277 Claude Code читаетAGENTS.mdсамостоятельно. - Оставьте
.cursor/rules/для редких требований именно к Cursor, например для его команд@Codebaseи@Docs. - Аналогично настройте Windsurf. Старый файл
.windsurfrulesлучше не использовать; применяйте.windsurf/rules/, только если нужны правила с его особым синтаксисом.
Так можно получить большую часть преимуществ общей системы без множества копий. По моему опыту работы в смешанных командах, больше двух источников правды — общих правил и дополнений для Claude — уже сложно поддерживать. Если кто-то добавит инструкцию только в .cursorrules и забудет внести её в AGENTS.md, через неделю Cursor и Codex могут начать действовать по-разному.
Как команда /init использует существующий AGENTS.md?
Главное
Команда /init формирует CLAUDE.md на основе файлов, уже находящихся в репозитории, и помогает сэкономить 20–30 минут ручной настройки. Обычно она учитывает правила Cursor (.cursor/rules/, .cursorrules) и Copilot (.github/copilot-instructions.md). Файлы AGENTS.md, .windsurfrules и .clinerules обрабатываются, если включить режим CLAUDE_CODE_NEW_INIT=1. Он запускает интерактивный многоэтапный сценарий: задаёт вопросы, исследует код с помощью субагента и предлагает план перед сохранением. С сентября 2026 года создание CLAUDE.md командой /init в проекте с AGENTS.md имеет последствие: Claude Code перестаёт автоматически читать AGENTS.md, а инструкции могут оказаться в двух файлах.
Anthropic описывает работу /init следующим образом:
Команда
/initчитает файлы инструкций других инструментов и переносит подходящие сведения в созданныйCLAUDE.md: правила Cursor из.cursor/rules/или.cursorrulesи правила Copilot из.github/copilot-instructions.md. При установленной переменнойCLAUDE_CODE_NEW_INIT=1учитываются такжеAGENTS.md,.devin/rules/,.windsurf/rules/,.windsurfrulesи.clinerules.
На практике это означает, что /init может перенести действующие правила из поддерживаемых файлов в новый CLAUDE.md. После генерации стоит проверить результат: удалить устаревшие пункты, объединить повторы и разложить инструкции по заголовкам.
Интерактивный режим, в котором /init также читает AGENTS.md, включается переменной среды:
CLAUDE_CODE_NEW_INIT=1 claude
После запуска /init Claude задаёт вопросы об артефактах, которые нужно настроить (CLAUDE.md, навыки, хуки), стеке проекта и командах для тестирования. Затем субагент изучает кодовую базу: например, читает package.json, README.md и конфигурационные файлы. На основе найденного он предлагает недостающие сведения. В конце появляется план, который можно отредактировать до сохранения. Подробнее о подготовке Claude Code к работе над проектом — в отдельном руководстве.
Есть важный нюанс: если в проекте уже используется AGENTS.md, после /init рядом появится CLAUDE.md с копией его правил. С этого момента Claude Code по умолчанию читает только CLAUDE.md. Если изменить AGENTS.md, а копию не обновить, Claude продолжит следовать старым инструкциям. Команда /import может привести к тому же результату: она добавляет в CLAUDE.md копию содержимого AGENTS.md. Чтобы сохранить единый источник, поставьте в начало CLAUDE.md строку @AGENTS.md и удалите из него повторяющиеся правила.
/init удобно запускать при создании проекта или переходе на Claude Code с Cursor или Copilot. Нет необходимости искать шаблон CLAUDE.md: команда учитывает файлы, уже находящиеся в репозитории. Если проект уже содержит рабочий AGENTS.md, а особые правила для Claude не нужны, /init не требуется — Claude Code самостоятельно прочитает этот файл.
Как отделить общие инструкции от правил для Claude?
Главное
В AGENTS.md записывайте правила, подходящие любому ИИ-агенту: какие файлы нельзя менять, как называть ветки, где хранятся секреты и какими командами запускать тесты. В CLAUDE.md, после импорта общего файла, размещайте инструкции, относящиеся только к Claude Code: режим планирования, навыки, хуки, ссылки на навыки и настройки моделей. Простой ориентир: правило «Claude должен» относится к CLAUDE.md, а правило «инструмент должен» — к AGENTS.md.
Я распределяю инструкции по этому принципу. В AGENTS.md можно поместить общие правила:
- Запреты на изменения. Не трогать
.env,node_modules,.next/и.git/; менятьprisma/migrationsтолько черезprisma migrate. - Соглашения об именах. Использовать префиксы
feat/,fix/иchore/для веток. Начинать сообщения коммитов сfeat:,fix:илиdocs:, а затем кратко описывать изменение. Имена файлов компонентов писать вkebab-case. - Команды тестирования и проверки стиля. Например,
npm run build,npm run lintиnpm test, а также команда, которую нужно запускать передgit push. - Архитектурные договорённости. Определить, что хранится в
src/lib/иsrc/components/, где находится бизнес-логика и где — интерфейс. - Безопасность. Не добавлять секреты в коммиты. Запросы к рабочей базе выполнять только через
prod-psql. Для подключения к рабочему серверу по SSH использовать алиасprod, а неroot@IP.
В CLAUDE.md после @AGENTS.md можно указать правила, специфичные для Claude:
- Режим планирования. Использовать
plan modeдля изменений в рискованных папках, напримерsrc/billing/. - Уровень усилий. Для архитектурных задач задавать
--effort high, для обычной работы —medium. - Навыки и агенты. Указать, каких ИИ-агентов и навыки запускать в разных ситуациях. Например: «Работая над руководством, запусти навык
build-guide». - Память Claude. Описать, что сохранять в автоматической памяти, а что — в
CLAUDE.local.md. Подробнее о памяти Claude — в руководстве по Memory и CLAUDE.md. - Хуки. Если в
.claude/settings.jsonнастроены хуки, объяснить их назначение. Codex и Cursor не используют эти настройки. - Команды. Перечислить часто используемые slash-команды, например
/init,/cd,/memoryи/plan.
Граница иногда зависит от контекста. Правило «не выполнять git push --force в main» общее, поэтому его следует поместить в AGENTS.md. А требование «перед отправкой изменений в hot-branch сначала использовать plan mode» относится к Claude и должно находиться в CLAUDE.md. Задайте вопрос: «Если завтра я перестану пользоваться Claude Code и оставлю только Codex, это правило всё ещё будет актуально?» Если да — поместите его в AGENTS.md; если нет — в CLAUDE.md.
Что хранить в AGENTS.md, CLAUDE.md и .claude/rules?
Главное
Для крупного проекта одного AGENTS.md может быть недостаточно: файл разрастается, а каждый агент загружает в контекст правила, не относящиеся к текущей работе. В Claude Code инструкции можно распределить по тематическим файлам в .claude/rules/ и ограничить их области действия с помощью YAML-поля paths:. Например, указать, что правила API применяются, только когда Claude работает с src/api/. Это помогает не расходовать контекстное окно на неактуальные сведения. Похожие каталоги правил есть у Cursor (.cursor/rules/) и Windsurf (.windsurf/rules/).
Если файл с правилами превысил 200 строк, рассмотрите разделение на тематические части. В документации Anthropic рекомендуется ориентироваться на 200 строк на файл: длинный CLAUDE.md может хуже влиять на соблюдение инструкций.
Пример структуры крупного проекта:
my-project/
├── AGENTS.md # 100-150 строк, общие правила
├── CLAUDE.md # 30-50 строк: @AGENTS.md и правила для Claude
└── .claude/
├── CLAUDE.md # альтернатива корневому файлу, тот же файл
└── rules/
├── api.md # с paths: ['src/api/**']
├── components.md # с paths: ['src/components/**']
├── testing.md # без paths, действует всегда
└── security.md # без paths, действует всегда
Файл в .claude/rules/ может содержать frontmatter:
---
paths:
- "src/api/**/*.ts"
---
# Правила API
- Проверяйте входные данные каждого endpoint через zod
- Возвращайте ошибки в стандартном формате `{error, code}`
- Добавляйте комментарии OpenAPI
Claude загружает эти инструкции, только когда работает с файлами, соответствующими шаблону. Если он изменяет src/components/Button.tsx, правила для API не добавляются в контекст. Так в контекстном окне остаются сведения, нужные для текущей задачи. Каталог .claude/rules/ действует и без CLAUDE.md: если в проекте есть только AGENTS.md, правила из него загружаются рядом с общим файлом и не отключают прямое чтение AGENTS.md.
Cursor и Windsurf предлагают похожую организацию правил в .cursor/rules/ и .windsurf/rules/. Стандарт AGENTS.md позволяет ссылаться на эти каталоги, однако синтаксис для совместной работы между инструментами пока поддерживается не везде. Поэтому общие инструкции надёжнее хранить в AGENTS.md, а редкие правила, привязанные к путям, при необходимости дублировать в .claude/rules/ и .cursor/rules/.
Расположения CLAUDE.md, от общих настроек к локальным:
| Уровень | Расположение | Назначение |
|---|---|---|
| Управляемая политика | /Library/Application Support/ClaudeCode/CLAUDE.md (Mac), /etc/claude-code/CLAUDE.md (Linux) | Корпоративные требования для IT и DevOps |
| Пользовательский | ~/.claude/CLAUDE.md | Личные предпочтения для всех проектов |
| Проектный | ./CLAUDE.md или ./.claude/CLAUDE.md | Общие правила проекта |
| Локальный | ./CLAUDE.local.md (в .gitignore) | Личные правила для конкретного проекта |
Например, в ~/.claude/CLAUDE.md можно записать два требования: отвечать на языке, выбранном пользователем, и писать название Ailoot именно таким образом. Они будут действовать во всех проектах без повторения в каждом репозитории.
Из этих четырёх уровней прямое чтение AGENTS.md отключают только проектный CLAUDE.md и CLAUDE.local.md. Личный ~/.claude/CLAUDE.md и корпоративная управляемая политика этому не мешают: Claude Code загружает их одновременно с AGENTS.md.
Что делать, если AGENTS.md в проекте устарел?
Главное
Если AGENTS.md давно создан для Codex или Aider и с тех пор не обновлялся, попросите Claude Code проверить его на устаревшие, повторяющиеся и неясные правила. Формат AGENTS.md продолжает развиваться под эгидой Linux Foundation. При актуализации оставляйте правила, которые отвечают на вопрос: «Что мне приходится постоянно повторять Claude или Codex?» Остальные можно убрать или перенести в архив.
Чтобы обновить устаревший файл, сначала попросите Claude составить перечень проблем, не меняя текст. После проверки удалите устаревшие команды и сведения, объедините дубли, добавьте инструкции о повторяющихся ошибках и попросите провести итоговую проверку на противоречия и неоднозначности. Такой порядок помогает сохранить контроль над содержимым AGENTS.md.
Основные принципы поддержки файла:
- Фиксируйте повторяющиеся ошибки. Если за месяц правило ни разу не понадобилось, возможно, оно не должно занимать место в файле.
- Формулируйте правила как команды. «Использовать два пробела» — конкретная инструкция. «Писать аккуратный код» — слишком расплывчатая.
- Добавляйте конкретные действия. «Запускайте
npm run buildпередgit push» полезнее общего совета «тестируйте изменения».
Что в этой схеме не работает?
Главное
Импорт @AGENTS.md не делает разные инструменты одинаковыми. У каждого остаются собственные особенности. Codex CLI не использует .claude/rules/ и хуки Claude Code. Автодополнение Cursor работает отдельно и не читает CLAUDE.md при подстановке текста. Copilot ориентируется на .github/copilot-instructions.md, поэтому ему могут потребоваться отдельные настройки. Общий файл становится источником базовых правил, а для отдельных инструментов сохраняются дополнительные инструкции.
Вот несколько ограничений, на которые стоит обратить внимание:
1. Автодополнение Cursor не использует AGENTS.md. При предложении продолжения строки редактор не загружает AGENTS.md в реальном времени: для этого используется отдельный механизм. Инструкции из файла учитываются в чате Cursor. Поэтому правило «не использовать var, применять const» не обязательно повлияет на автодополнение. Для такого требования настройте ESLint или конфигурацию TypeScript.
2. Хуки Claude Code не действуют в Codex. Например, хук PreToolUse в .claude/settings.json может запрещать определённое действие. Codex не знает о таком хуке. Общее правило о запрете действия укажите в AGENTS.md, а наличие механизма, который блокирует его в Claude Code, — в CLAUDE.md.
3. Для Copilot может понадобиться отдельный файл. GitHub Copilot использует .github/copilot-instructions.md, а поддержку AGENTS.md следует сверять с его актуальной документацией и настройками расширений. Если в команде активно используется Copilot, добавьте отдельный файл с нужной частью общих правил или проверьте доступные расширения для AGENTS.md. Поддержка меняется со временем, поэтому проверяйте её перед настройкой.
4. Изменение AGENTS.md не меняет текст символьной ссылки. Если CLAUDE.md создан командой ln -s AGENTS.md CLAUDE.md, изменения в общем файле будут видны через ссылку. Git покажет изменение AGENTS.md, но не обязательно отдельный diff для CLAUDE.md. Чтобы участникам ревью было понятно, укажите в описании запроса на слияние, что Claude Code использует обновлённый файл через символьную ссылку.
5. Вложенные импорты усложняют диагностику. Если AGENTS.md подключает @docs/coding-style.md, а тот импортирует @docs/typescript.md, при конфликте правил сложнее найти источник. Для простоты можно ограничиться схемой CLAUDE.md → AGENTS.md. В Anthropic описан хук InstructionsLoaded, который записывает сведения о загруженных файлах и помогает разбирать сложные конфигурации. Учтите: при импорте или символьной ссылке на AGENTS.md хук срабатывает, а при самостоятельной загрузке AGENTS.md Claude Code — нет.
Источники
- Документация Claude Code: память и поддержка AGENTS.md — самостоятельная загрузка
AGENTS.md, настройка Project instructions, импорт и символьные ссылки. - Документация Claude Code об импорте файлов — синтаксис
@path/to/file, вложенность до четырёх уровней, относительные и абсолютные пути. - AGENTS.md — открытый формат Agentic AI Foundation — описание формата и перечень инструментов, которые его поддерживают.
- Документация Cursor о правилах — форматы
.cursor/rules/*.mdcи поддержкаAGENTS.md. - Пользовательские инструкции GitHub Copilot — настройка
.github/copilot-instructions.md. - Проект AGENTS.md в Agentic AI Foundation — сведения о развитии спецификации.
Познакомьтесь с Ailoot.
Подробнее
Вопросы и ответы
Когда использовать импорт вместо символической ссылки?
Используйте @AGENTS.md в CLAUDE.md для отдельных дополнений Claude или команды с Windows. Символическая ссылка делает содержимое обоих имён общим и не позволяет хранить отдельный раздел только для Claude.
Как проверить загрузку общих инструкций?
Откройте /memory и проверьте список файлов инструкций. Если CLAUDE.md или CLAUDE.local.md подавляет прямую загрузку AGENTS.md, добавьте импорт либо выберите загрузку обоих файлов в настройках. Затем начните новую сессию.