В 2026 уже устарела старая схема "у каждого инструмента один свой файл правил". Current reality сложнее:
AGENTS.md как общий repo contract;Claude Code всё ещё опирается на CLAUDE.md;Cursor смещается в сторону .cursor/rules/ и AGENTS.md;GitHub Copilot использует repository instructions, prompt files и agent instructions;Windsurf тоже поддерживает свои rule/memory surfaces;Codex официально использует AGENTS.md.Поэтому лучший setup сегодня - это не выбрать один "магический файл", а собрать instruction stack, где есть общий слой и tool-specific overrides.
CLAUDE.md, .cursorrules, copilot-instructions.md и ещё трёх местах вручную. Это почти гарантированная рассинхронизация. Нужен один главный слой и минимальные tool-specific добавки.Раньше можно было написать статью в стиле:
CLAUDE.md для Claude Code;.cursorrules для Cursor;copilot-instructions.md для Copilot.Но current ecosystem уже ушла дальше:
AGENTS.md стал общим форматом для части coding agents;Cursor продвигает rule files в .cursor/rules/, а .cursorrules уже воспринимается как legacy path;GitHub Copilot поддерживает и repository instructions, и reusable prompt files, и agent instructions;Codex официально читает AGENTS.md;Windsurf использует собственные rule/memory surfaces.Именно поэтому в 2026 полезнее говорить не о "трёх отдельных файлах", а о layered repo instructions.
Если команда использует несколько agent tools, лучше всего вынести общий contract в AGENTS.md.
Туда обычно стоит положить:
dev, test, lint, build);Покажи минимальный AGENTS.md для TypeScript monorepo
Хороший AGENTS.md обычно краткий: stack, package layout, commands, code conventions, test rules, files not to touch without explicit request, and how to summarize changes after work.
# AGENTS.md
## Stack
- TypeScript strict
- Next.js 15
- Prisma + PostgreSQL
- Vitest + Playwright
## Structure
- app/ - routes and UI
- server/ - backend logic
- lib/ - shared utilities
- tests/ - automated tests
## Commands
- pnpm dev
- pnpm test
- pnpm lint
- pnpm build
## Rules
- do not use any
- do not add dependencies unless necessary
- prefer existing patterns over new abstractions
- keep changes scoped to the task
## Verification
- run relevant tests when modifying behavior
- summarize files changed, commands run, and residual risks
Claude Code по-прежнему официально работает с CLAUDE.md и собственной memory hierarchy.
Он особенно полезен, если команде нужны:
Практически хорошо работает такой подход:
AGENTS.md - shared repo contract;CLAUDE.md - Claude-specific clarification и local hierarchy.AGENTS.md в CLAUDE.md. Лучше держать в CLAUDE.md только то, что специфично для Claude Code: например, preferred workflow, commit conventions, terminal behavior и local overrides.Старая статья про .cursorrules уже неполная.
Current Cursor docs продвигают:
AGENTS.md;.cursor/rules/ для scoped rules;Это лучше старой модели "один гигантский .cursorrules файл", потому что позволяет разделить:
.cursor/
rules/
global.mdc
frontend.mdc
backend.mdc
tests.mdc
Такой setup обычно удобнее, чем один длинный prompt-file на всё сразу.
У GitHub Copilot current setup уже не сводится к одной записи про .github/copilot-instructions.md.
Сегодня practical stack может включать:
.github/copilot-instructions.md;.github/instructions/*.instructions.md для scoped instructions;Copilot coding agent;Spaces как curated context layer, если команда уже активно живёт в GitHub-native workflow.Это важно, потому что current Copilot now covers both:
agent mode в IDE;coding agent.И значит repo setup должен помогать не только autocomplete, но и agent tasks.
После появления отдельной статьи про GitHub Copilot в 2026 этот блок полезно читать точнее:
copilot-instructions.md и .github/instructions/* нужны для IDE/chat/edit surfaces;Copilot coding agent, который работает уже не в локальном editor loop, а в GitHub-native async flow;AGENTS.md остаётся хорошим shared truth source, если команда одновременно использует Copilot, Cursor, Claude Code, Codex и Windsurf.То есть current Copilot setup уже не про "один файл правил для плагина", а про layered guidance под несколько разных Copilot surfaces.
У Windsurf instruction surface тесно связана с Cascade и memories/rules.
Практически Windsurf полезно кормить:
Логика здесь похожа на Cursor: чем точнее разделены постоянные project rules и task-specific prompts, тем стабильнее agent behavior.
Для Codex current official docs уже делают AGENTS.md важной частью repo guidance.
Это ещё один аргумент за shared file: если у команды есть Codex, Cursor, Windsurf и часть GitHub/Copilot workflows, AGENTS.md становится естественным общим знаменателем.
Это особенно полезно для mixed-tool teams, где нельзя держать пять разных truth sources.
Лучшие repo instructions обычно содержат:
Хуже всего работают:
Практический template для mixed-agent команды:
AGENTS.md
CLAUDE.md
.cursor/
rules/
global.mdc
frontend.mdc
backend.mdc
.github/
copilot-instructions.md
instructions/
frontend.instructions.md
backend.instructions.md
prompts/
review.prompt.md
migration.prompt.md
debug.prompt.md
Здесь:
AGENTS.md - общий truth source;prompts/ - reusable task patterns;Это быстро ломается.
Слишком длинные rule files хуже читаются и хуже поддерживаются.
Разовые migration instructions не должны жить в главном repo contract.
Repo instructions должны быть безопасны для коммита.
В prompt files хорошо выносить повторяемые workflow-шаблоны:
Это уже не repo contract, а reusable task interfaces.
AGENTS.md и project rules описывают, как устроен repo. Prompt files описывают, как выполнять повторяемые задачи внутри этого repo.1. Что обычно лучше всего делать shared truth source для mixed-agent команды в 2026?
2. Почему .cursor/rules часто лучше старого .cursorrules?
3. Что не стоит класть в project instruction files?