Разработка и запуск

AGENTS.md и SKILL.md для AI coding agents: что хранить в Markdown, а что отдавать через MCP

Создано 16.06.2026

Обновлено 12.07.2026

Что такое AGENTS.md, SKILL.md и MCP для AI coding agents: что хранить в Markdown, когда выносить повторяемую процедуру в Skill и как ограничивать доступ через MCP, права доступа и подтверждение действий.

Короткий ответ

AGENTS.md — это файл инструкций для coding agent внутри репозитория: он объясняет проект, команды проверки, стиль, ограничения и правила работы. SKILL.md — файл внутри переиспользуемого Skill: он описывает повторяемая процедура, входы, выходы, скрипты и reference-материалы. MCP — протокол и набор серверов, через которые агент получает управляемый доступ к инструментам, данным и ограниченным директориям.

Главная граница такая: Текстовые инструкции задают намерение и порядок работы, но не выдают полномочия. Доступ к Jira, GitLab, Confluence, CI, файлам, командам, секретам и внешним API нужно ограничивать через MCP, разрешенные директории, изолированную среду, права доступа, подтверждение действий и журналирование.

Если коротко: AGENTS.md нужен для общих правил проекта; SKILL.md — для повторяемой процедуры; MCP — для подключения источников и действий; изолированная среда и права доступа — для технических ограничений.

Что выбратьКогда подходитГлавная проверка

AGENTS.md

Нужно дать агенту правила конкретного репозитория.Файл короткий, понятный и не содержит секретов.

SKILL.md

Процедура повторяется и требует шагов, скрипты или reference-файлов.У Skill есть владелец, входы, выходы и ревью как у рабочего инструмента.

MCP

Нужен доступ к внешней системе, файлам, CI, поиску или внутреннему API.Доступ границыd: чтение и запись разделены, roots не шире задачи.

Права доступа и подтверждения

Агент запускает команды, меняет файлы или может затронуть внешние системы.Опасные действия требуют подтверждение, секреты не попадают в контекст.
Схема показывает, где проходят границы между правилами проекта, повторяемой процедурой, подключенными источниками и правами доступа.
agents-md-skill-md-mcp-layers-plantuml.svg

AGENTS.md / SKILL.md / MCP: что где хранить

Эта таблица помогает не смешивать правила, процедуры и доступы в одном большом Markdown-файле. Чем ближе слой к действиям и внешним системам, тем строже нужны ревью, технические ограничения и журналирование.

СлойЧто хранитьЧто не хранитьПримерКто ревьюит

AGENTS.md

Правила проекта, команды проверки, стиль кода, архитектурные ограничения.Секреты, длинные runbook, обходы прав доступа.“Запусти typecheck перед PR”, “не менять runtime contract без ревью”.Владелец репозитория или tech lead.

SKILL.md

Повторяемая процедура, скрипты, reference-файлы, критерии результата.Общие правила всех проектов и постоянные учетные данные.Проверка DOCX, публикация Strapi payload, аудит API-контракта.Владелец процесса и инженер, который понимает скрипты.

MCP-инструменты

Jira, GitLab, Confluence, CI, поиск, внутренние API и другие tool calls.Неограниченный доступ на запись “на всякий случай”.Read-only поиск задач или отдельный tool для создания PR.Владелец системы и security/ops при доступ на записье.

MCP-доступ к директориям

Ограниченные директории, документы только для чтения, рабочие артефакты.Весь домашняя папка, соседние репозитории, хранилища учетных данных.Только текущий репозиторий и папка tmp/ для результата.Владелец рабочая область или platform engineer.

Права доступа и подтверждения

Правила shell, network, write-действий, подтверждениеs и audit.Полный доступ к хост-машине без логирования.Команды проверки разрешены, публикация и deploy требуют подтверждения.Engineering lead, DevOps или security владелец.

Vault / secrets

Техническое хранение токенов и границыd учетные данные вне контекста модели.Токены, пароли и production URL с учетные данные в Markdown.Runtime получает временный token, агент видит только результат tool call.Security владелец и владелец интеграции.

Когда нужен отдельный контекстный слой для coding agent

Отдельный контекстный слой нужен, когда coding agent работает не с одной разовой задачей, а с реальным репозиторием, командными правилами, тестами, pull request и внутренними источниками. Чем больше у агента автономии, тем важнее отделить инструкции от доступа.

Такой слой стоит проектировать, если:

  • в репозитории есть свои build/test команды, стиль кода и архитектурные ограничения;
  • несколько разработчиков используют разные coding agents, но правила проекта должны быть общими;
  • агенту нужно читать документацию, задачи, changelog или runbooks;
  • часть действий можно разрешить автоматически, а часть требует human ревью;
  • есть секреты, production-конфиги, приватные документы или опасные shell-команды;
  • нужно разбирать, почему агент сделал изменение и откуда взял контекст.

Если агент используется только как IDE-подсказка для одного разработчика, достаточно коротких локальных правил. Если агент запускает команды, меняет файлы, подключается к MCP-серверам или готовит PR, нужен управляемый контур: где лежат инструкции, кто их ревьюит, какие источники агент может читать и что он не имеет права делать без подтверждения.

Что хранить в AGENTS.md

AGENTS.md — это Markdown-файл с инструкциями для coding agents. Его удобно воспринимать как README для агента: не вместо человеческого README, а рядом с ним. В нём должны быть правила, которые помогают агенту быстро понять проект и не ломать командный процесс.

Что хранитьПример содержанияКогда обновлять

Обзор проекта

назначение репозитория, основные пакеты, важные директориипри изменении структуры или продукта

Команды проверки

установка зависимостей, тесты, lint, typecheck, сборкапри изменении toolchain или CI

Code style

форматирование, naming, правила импортов, подход к тестампри изменении стандартов команды

Архитектурные ограничения

что нельзя менять без обсуждения, где границы модулейпосле архитектурных решений

Правила PR

как описывать изменения, какие проверки приложитьпри изменении ревью-процесса

Security notes

какие файлы не читать, где не искать секреты, какие команды опасныпри изменении доступа или окружений

В AGENTS.md не стоит складывать всё подряд. Если инструкция длинная, редкая или зависит от отдельной процедуры, лучше вынести её в документация, runbook или Skill. Если правило связано с доступом, секретами или внешним сервисом, оно должно быть продублировано техническим ограничением, а не оставаться только просьбой в Markdown.

Как понять, что пора выносить из AGENTS.md

AGENTS.md лучше держать коротким: он должен быстро дать агенту ориентиры по проекту. Если правило превращается в процедуру, требует скриптов или подключается к внешнему источнику, его стоит вынести в другой слой.

СитуацияОставить в AGENTS.mdВынести в SKILL.mdОтдать через MCP

Короткое правило проекта

Да: команда проверки, стиль PR, границы модулей.Нет, если правило помещается в 1-2 строки.Не требуется.

Длинная процедура

Оставить ссылку и краткое правило.Да: шаги, входы, выходы, критерии готовности.Только если процедура читает внешние данные.

Нужен script

Не хранить логику shell-команд прямо в общем файле.Да: положить скрипт рядом со Skill и ревьюить как код.Если скрипт должен работать через внешний tool или API.

Нужен внешний источник

Описать, зачем источник нужен.Описать порядок использования источника.Да: Jira, GitLab, Confluence, CI, поиск, база знаний.

Нужен доступ на запись

Зафиксировать правило и запрет обходов.Описать подготовку payload и критерии проверки.Да, но отдельным границыd tool с подтверждение и audit.

Есть секреты или production-риск

Только warning без значений секретов.Не хранить учетные данные внутри Skill.Доступ через vault/runtime, права минимальные.

Процедура нужна в нескольких проектах

Оставить ссылку на общий Skill или runbook.Да: сделать reusable Skill с владелец и версией.Если нужен общий сервер инструментов или каталог источников.
Схема помогает выбрать место для правила, процедуры, внешнего источника, действия или секрета.
agents-md-skill-md-mcp-decision-flow-plantuml.svg

Что нельзя решать одним Markdown

Markdown хорошо объясняет намерение, но плохо ограничивает полномочия. Если агенту написали “не читать секреты”, это не то же самое, что технически закрыть секреты. Если в файле написано “не запускать опасные команды”, это не заменяет подтверждение gate, изолированная среда или policy.

Одним Markdown нельзя надёжно решить:

  • доступ к секретам, env-файлам, production-конфигам и хранилища учетных данных;
  • запрет выхода за пределы рабочая область root;
  • разделение только чтение и write-действий;
  • контроль shell-команд, network egress и установки зависимостей;
  • аудит tool calls, изменений файлов и причин решений;
  • изоляцию экспериментов от host-машины и соседних репозиториев.

Правильная формула: важные правила можно описать в Markdown, но критичные границы должны быть enforced на уровне runtime, filesystem, MCP, изолированная среда, CI или ревью-процесса. Иначе агент может выполнить задачу формально успешно, но через путь, который команда не хотела разрешать.

Что отдавать через MCP и разрешенные директории

MCP помогает подключать агента к инструментам и источникам данных через стандартизированный протокол. Для файловой системы важна идея roots: клиент показывает серверу только те директории, в которых тот может работать. Это не просто удобство навигации, а граница доступа.

СлойЧто туда отдаватьЧто проверить

AGENTS.md

правила проекта, команды проверки, ограничениянет секретов и опасных обходных инструкций

SKILL.md

повторяемая процедура, скрипты, referencesесть владелец, ревью и понятные входы/выходы

MCP-доступ к файлам

нужные директории, документы только для чтения, рабочие артефактыдиректории не шире задачи, обход путей закрыт

MCP-инструменты

трекер задач, документация, CI, поиск, внутренние APIразделены чтение и запись действия и подтверждениеs

Sandbox/рабочая область

изолированное окружение для команд и правокнет доступа к домашней папке хоста, хранилища учетных данных и чужим репозиториям

Через MCP стоит отдавать то, что агент должен получать как инструмент или источник: задачи, документацию, ограниченный file tree, CI-сигналы, поиск по knowledge base. В Markdown стоит хранить объяснение, как этим пользоваться. Не наоборот: не превращать AGENTS.md в список секретных URL, токенов и ручных обходов.

Где нужна изолированная рабочая область

Sandbox нужен там, где агент может выполнять код, менять файлы или ходить в сеть. Для личного только чтение сценария может хватить правила репозитория и ручного ревью. Для командного пилота лучше сразу считать агента процессом с делегированными полномочиями, а не “умным текстовым помощником”.

Отдельный рабочая область или изолированная среда особенно важен, если:

  • агент запускает shell-команды или устанавливает зависимости;
  • в репозитории есть production-конфиги, deploy скрипты или ключи;
  • нужно разрешить агенту много попыток без риска для host-машины;
  • команда использует cloud/background agents;
  • агенту нужны MCP-инструменты с доступом к внутренним системам;
  • результат должен проходить воспроизводимый ревью и audit.

Рабочий критерий простой: агент может делать всё, что нужно для задачи, но только внутри заранее выбранной границы. Если задача требует больше доступа, лучше расширить boundary явно и временно, чем давать общий доступ к домашняя папка, всем репозиториям или production учетные данные.

Как разделить чтение и запись

Для coding agents полезно проектировать доступы не как “можно/нельзя агенту”, а как несколько уровней. Чтение документации, чтение кода, изменение файлов, запуск команд, создание PR и доступ к внешним системам — разные классы действий с разным риском.

ДействиеБазовое правилоКогда можно расширять

Читать документацию

только чтение, через документацию репозитория или ограниченный MCPесли источник нужен для задачи и не содержит закрытых данных

Читать код

только нужный репозиторий или рабочая областьесли есть владелец и понятные границы директории

Менять файлы

в рабочей ветке или изолированная средапосле ревью плана или ограниченного границы

Запускать команды

безопасные проверки или подтверждение перед опасными командамиесли команды воспроизводимы и логируются

Создавать PR

через branch и ревью-владелецесли есть test evidence и понятный diff

Писать во внешние системы

по умолчанию запрещенотолько через отдельный подтверждение и границыd учетные данные

Такое разделение помогает не блокировать полезную работу агента, но не давать ему полномочия “как у разработчика на всей машине”. Для каждого уровня нужны владелец, логирование и понятный способ отката.

Риски и защитный слой

Безопасность контекстного слоя проверяется не тем, насколько подробно написан Markdown, а тем, может ли агент выйти за нужные границы при ошибке, галлюцинации или слишком широкой трактовке задачи.

РискПочему Markdown не решаетЧем закрывать

Секреты в контексте

Инструкция “не использовать токен” не убирает токен из prompt, истории и журнала вызовов инструментов.Vault, границыd учетные данные, запрет секретов в Markdown и проверка после записи.

Доступ ко всему домашняя папка или рабочая область

Агент может случайно прочитать соседний репозиторий, env-файл или приватный документ.Разрешенные директории, подключения только для чтения, отдельная рабочая область или контейнер.

Опасные shell-команды

Запрет в тексте не остановит команду, если runtime ее разрешает.Sandbox, command policy, подтверждение для destructive/network/deploy действий.

Запись во внешние системы

Markdown не отличает черновик от реальной публикации или изменения задачи.Раздельные чтение и запись tools, file-backed payload, подтверждение и проверка после записи.

Устаревшие инструкции

Агент применит старую команду или старую архитектурную границу как актуальную.Owner, ревью rhythm, проверка команд после изменений CI/toolchain.

Нет журнал действий

После результата трудно понять, какие источники и tool calls повлияли на решение.Логи tool calls, diff, подтверждениеs, ссылка на использованные источники.

Как поддерживать контекст актуальным

Контекст для агента устаревает так же быстро, как документация для людей. Разница в том, что агент может сразу применить устаревшее правило к коду. Поэтому AGENTS.md, Skills и MCP-конфигурации должны иметь владелец и ревью rhythm.

Минимальный порядок:

  • хранить AGENTS.md в репозитории и ревьюить через обычный PR;
  • назначить владелец для общих Skills и reusable скрипты;
  • проверять команды после изменения менеджера пакетов, CI, среды запуска тестов или структуры монорепозитория;
  • удалять устаревшие ограничения, которые агент больше не должен видеть;
  • версионировать MCP-конфигурации и список roots;
  • после инцидента обновлять не только инструкцию, но и технический guard.

Хороший признак зрелости: новый разработчик и coding agent получают одно и то же понимание проекта, но агент не получает больше доступа только потому, что инструкция лежит рядом с кодом.

Ошибки и риски

Типовые ошибки появляются, когда команда смешивает контекст, процесс и доступ в одном файле. Так проще стартовать, но сложнее масштабировать и расследовать проблемы.

ОшибкаЧто происходитКак исправить

Огромный AGENTS.md

агент получает много шума и хуже выбирает важноеоставить правила проекта, подробности вынести в документация или Skills

Секреты в Markdown

токены попадают в контекст и историюперенести секреты в vault/CI или хранилище секретов

Skill без ревью

исполняемая процедура меняется как обычная заметкаревьюить Skill как код и процедуру

MCP на весь home

агент видит лишние репозитории, конфигурации и учетные данныеограничить разрешенные директории задачей

Изоляция только на словах

команды выполняются на хост-машине с правами пользователявыделить рабочая область, контейнер, VM или другой guard

Нет audit

невозможно понять, почему агент сделал изменениелогировать tool calls, diff, подтверждениеs и источники контекста

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

Результат на выходе

После подготовки контекстного слоя у команды должен быть не один большой Markdown-файл, а понятный комплект артефактов:

  • AGENTS.md с краткими правилами проекта, командами проверки и security notes;
  • список Skills, если повторяемые процедуры вынесены из общего файла;
  • описание MCP-источников и разрешенные директории;
  • матрица чтение и запись доступов;
  • список команд, которые требуют подтверждение;
  • правила хранения секретов вне Markdown;
  • порядок ревью, audit и обновления контекста.

Такой комплект можно использовать перед пилотом AI coding agents, при выборе между Codex, Claude Code и Cursor или при подключении MCP-интеграций. Он помогает обсуждать не “насколько агент умный”, а насколько безопасно и воспроизводимо он встроен в процесс разработки.

Что дальше

Если команда только выбирает рабочий режим, начните со страницы Codex, Claude Code и Cursor для команды .

См. также: Codex, Claude Code и Cursor для команды, стоимость и лимиты AI coding agents, MCP-интеграциям для coding agents, чек-лист пилота AI coding agents, подтверждения действий для ИИ-агента.

Обсудить проект

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

Связаться