Эта статья — выжимка двух наших апрельских вебинаров с разработчиком агента Михаилом Костицыным. По общим тезисам каждый может проверить выводы у себя.
Записи вебинаров на RuTube: — Вебинар 1 — AI-инструменты для разработчиков 2026 — Вебинар 2 — Настройка проекта под агента

TL;DR
-
Качество результата агента = качество контекста. Все остальное — производные.
-
Правил кастомизации пять: rules, skills, режимы агента, MCP, AgentIgnore. У каждого свой случай применения.
-
AGENTS.md — точка истины проекта. Memory bank — долгосрочная память.
-
Главные антипаттерны: недостаточный контекст и перегруженный контекст. Решения противоположные, симптомы тоже разные.
-
Подход TDD/SDD с агентом даёт лучшее качество. С локальными моделями он критичен.
Эволюция: от автодополнения до агентских систем
Цепочка короткая:
|
Этап |
Что умеет |
Главная боль |
|---|---|---|
|
Автодополнение |
продолжить строку, дописать функцию |
контекст = текущий файл |
|
Чат-ассистенты |
диалог, объяснение кода |
человек = прокси, copy-paste |
|
Агенты |
читать/править файлы, запускать команды, MCP |
перегрузка одного контекста |
|
Агентские системы |
оркестратор + sub-agents, роли |
сложность настройки |
В чат-ассистентах разработчик постоянно копировал код туда-обратно — отсюда «много ручной работы и разрыв контекста». Агенты живут прямо в проекте, видят весь код, имеют инструменты. Сверху — агентские системы, которые координируют нескольких специализированных агентов и решают проблему переполнения единого контекста.
Где живёт агент: три класса инструментов
Консольные агенты
Живут в терминале. Запускаются на удалённом сервере, в CI, легко параллелить через git worktree.
|
Плюсы |
Минусы |
|---|---|
|
Нет vendor-lock на IDE |
Меньше контроля при разработке |
|
Можно ставить в CI/CD |
Нет семантики языка — только LSP |
|
Параллелизм нескольких агентов |
Нет автодополнения для подконтрольной генерации |
|
|
Опаснее по безопасности (доступ к ФС) |
Примеры: Claude Code, Codex, Gemini CLI, Qwen Code, Opencode, Aider (умеет коммитить сам). Полностью автономные: AutoGPT, SWE-agent, OpenHands.
Агенты внутри IDE
Лучше понимают язык: PSI/индексы, рефакторинги через API, семантический поиск (Find Usages, Go to Declaration). Знакомый UI — недооценённый фактор при внедрении в команду.
|
Плюсы |
Минусы |
|---|---|
|
Понимание языка через PSI |
Привязка к одной IDE |
|
Знакомый UI разработчика |
Тяжело параллелить |
|
Автодополнение |
Сложно поднять в CI |
Примеры: Cursor (форк VS Code), Veai, GitHub Copilot, Windsurf, Cline, Sweep Dev, Zed.
Агенты в CI/CD
Асинхронное ревью PR, генерация описаний, авто-фиксы, changelog’и.
|
Плюсы |
Минусы |
|---|---|
|
Не отнимают ресурсы человека |
Замедляют пайплайны |
|
Единый стандарт ревью |
Непредсказуемые расходы на токены |
|
|
Галлюцинации убивают доверие к ревью |
|
|
Доступ к чувствительной инфраструктуре |
Примеры: CodeRabbit, PR-Agent (Codium Merge), GitHub Copilot for PRs, GitLab Duo (умеет искать уязвимости).
Полностью автономные
Принимают задачу из Jira/GitHub Issue и идут решать без участия человека: AutoGPT, SWE-agent, OpenHands.

Контекст: откуда берётся и как ломается
Ручной сбор — @-вложения файлов, классов, методов. Иногда надёжнее автоматики, особенно когда вы точно знаете, на что должен быть похож результат.

Автоматический сбор — три подхода в индустрии:
|
Подход |
Что даёт |
Где ломается |
|---|---|---|
|
LSP-серверы |
AST, синтаксис |
Не понимают семантику, плохо со сломанным кодом |
|
PSI (JetBrains) |
Граф зависимостей, наследование, инспекции, понимание сломанного кода |
Привязка к JetBrains-платформе |
|
RAG по коду |
Эмбеддинги, гибкий поиск |
Неделимый код режется по чанкам, ничего не знает про компиляцию |
PSI — единственный из трёх, который видит код семантически: точно знает, что метод наследуется, что аннотация применима, что функция используется именно вот здесь. Плюс работает со сломанным кодом — может объяснить агенту, в чём именно ошибка компиляции.
Главное правило
Качество результата зависит от качества контекста. Каким бы хорошим ни был агент, на плохом контексте он не выдаст правильное решение.
Антипаттерн 1: недостаточный контекст
Симптом. Агент решает не ту задачу.
Решения:
-
Редактируйте уже отправленное сообщение, а не дописывайте уточнения новым. Если ответите «нет, ты понял неправильно» — агент в контексте увидит и исходную задачу, и поправку, и начнёт путаться.
-
Используйте rules для повторяющихся указаний, которые мигрируют из чата в чат.
-
Передавайте полную спецификацию через MCP — из Jira, Confluence, GitHub.
-
План перед решением — большинство агентов умеют декомпозировать задачу до начала работы. Это сразу даёт спецификацию де-факто.
Антипаттерн 2: перегруженный контекст
Симптом. Агент смешивает разные задачи или вдруг начинает решать что-то третье.
Решения:
-
Одна задача = один чат. Большая задача → декомпозиция на подзадачи в отдельных чатах.
-
Сжатие чата (compression) — функция большинства агентов. Сжимает контекст, оставляя выжимку, чтобы перейти ко второй связанной задаче без полной передачи истории.
Пять уровней кастомизации
|
Уровень |
Что это |
Когда применять |
|---|---|---|
|
Rules |
Правила, попадающие в system prompt |
Стиль кода, обход багов модели, инструкции по PowerShell, приоритизация MCP |
|
Skills |
Описание решения конкретной задачи (frontmatter + ресурсы + скрипты) |
Повторяющиеся задачи: e2e-тесты, миграции, рефакторинги |
|
Режимы агента |
Своя модель, system prompt, инструменты и скиллы под роль |
Отдельный агент для тестирования, дебага, аналитики |
|
MCP-серверы |
Внешние инструменты |
Jira, Confluence, GitHub/GitLab, Figma, Playwright, Chrome |
|
AgentIgnore |
Ограничение области чтения и редактирования |
Legacy, секреты, TDD-флоу |
Rules
Текстовые правила, которые добавляются в system prompt каждого чата.

Что писать:
-
область применения правила (где оно работает, где — нет);
-
что точно нельзя.
Классический кейс — PowerShell на Windows. Большинство моделей училось на bash/zsh, на PS они путаются. Один отдельный rule про специфику работы с PowerShell — и проблема снимается раз и навсегда.
Другие частые применения:
-
стиль агента (автономный/контролируемый);
-
корпоративный код-стайл (Google Java Style, параметризованные тесты);
-
обход багов конкретных моделей (например, Claude 4.5 Sonnet любит создавать много отчётов — можно ограничить);
-
приоритизация MCP — если агент не зовёт подключенный сервер, явно прописать, когда и зачем его использовать.
Skills
В отличие от rules, скилл — это описание решения одной конкретной задачи. Структура:
skills/└── my-skill/ ├── SKILL.md # промпт + frontmatter с описанием ├── scripts/ # скрипты, которые агент может вызвать └── references/ # документация и спецификации
В frontmatter — имя и описание скилла. По описанию агент сам понимает, когда его вызывать. Запуск вручную — /имя_скилла.
Важно про контекст. Пока скилл не вызван, агент видит только описание из frontmatter — никаких ресурсов и скриптов в контекст не попадает. Это спасает от загрязнения.

Рекомендации:
-
одна цель на скилл (даже если из подзадач);
-
область применения и запреты — обязательно;
-
ссылайтесь из
SKILL.mdна скрипты и ресурсы — иначе агент их «не заметит»; -
структура папок (
scripts/,references/) необязательна, но агент в ней лучше ориентируется; -
топ-даун (написать всё сразу) — долго и без понимания, нужно ли. Ботом-ап (выносить из часто повторяющихся запросов) — практичнее;
-
генерировать скиллы можно самим агентом, но валидируйте руками.
Совместимость. Формат SKILL.md стал кросс-вендорным стандартом — его поддерживают Claude Code, Cursor, Codex, Copilot, Veai. Скилл, написанный для Claude Code, работает в Veai и наоборот.
Режимы агента (роли / sub-agents)
Кастомизируется:
-
модель (например, для агента-тестера достаточно GLM 5.1, для архитектора — Opus 4.7);
-
system prompt с описанием роли;
-
набор доступных инструментов;
-
набор скиллов.
Частая ошибка — описывать роль через структуру компании («архитектор», «тимлид», «DevOps»). Лучше отталкиваться от задач, которые агент решает. «Архитектор» модель не понимает, «генерирует диаграммы зависимостей и проверяет циклы» — понимает.
В большинстве агентов из коробки есть Plan mode и Code mode. Многие умеют оркестрацию — выбирать, кого из sub-agents позвать на конкретный шаг.
MCP-серверы
Не сложная штука: чаще всего MCP — это прокси между моделью и сервисом. Парсит аргументы от модели, делает HTTP-запрос, ужимает ответ под лимит контекста, отдаёт обратно.

Полезные:
-
GitHub MCP — чтение репо, поиск, issues, PR, ветки, коммиты, ревью.
-
Atlassian MCP — Confluence (поиск через CQL, страницы) и Jira (создание задач, поиск через JQL, статусы). Очень ценно — там вся доменная логика компании.
-
Figma MCP — структура проекта, слои, компоненты, переменные. С динамикой/анимацией не работает.
-
Playwright MCP — превращение мануальных кликов в автотесты.
-
Chrome MCP — DevTools агенту в руки.
Если агент не зовёт MCP — пишите rule, скилл или отдельного агента, явно предназначенного для этого MCP.
AgentIgnore
Синтаксис как у .gitignore. У вендоров разные имена: .cursorignore, .codeiumignore, у Veai два файла — .veaireadignore и .veaiwriteignore (разнесли «не читать» и «не редактировать»).

Сценарии:
|
Ситуация |
Что запретить |
|---|---|
|
Legacy / стабильные модули |
Запись (читать можно — для понимания) |
|
Слишком сложный модуль, не доверяете агенту |
Запись |
|
Секреты, креды, |
Чтение и запись |
|
TDD: не подгонять тесты под реализацию |
Запись на папку с тестами |
Важно. Через инструмент запуска команды в терминале агент теоретически может обойти AgentIgnore. Хорошие агенты ставят рядом маленькую модель-проверяльщика для команд, но и это в теории обходится сложным скриптом. Это касается всех вендоров — open question индустрии.
Документация для агента
AGENTS.md
Файл в корне проекта. Попадает в system prompt — агент о нём всегда знает.
Что внутри:
-
структура проекта по папкам и модулям;
-
стек;
-
команды сборки и тестов;
-
стиль кода;
-
архитектурные парадигмы;
-
что точно нельзя делать.
Создание — обычно команда /init (часто это скилл), которая проходит по проекту и собирает первичный AGENTS.md. После генерации обязательно валидируйте: ошибка в этом файле живёт в контексте всегда. Версионируйте в репозитории как точку истины для команды.
Совет: не раздувайте. Файл добавляется в каждый чат, занимает контекст. Если AGENTS.md разросся до 1000 строк — это уже не помощь, а нагрузка.
Memory Bank
Долгосрочная память агента — папка с маркдаун-файлами, ограниченная по объёму. Логика:
-
Раз в N сообщений — агент достаёт релевантные факты, добавляет в контекст.
-
Раз в N сообщений — сохраняет новые факты из текущего диалога.
-
При переполнении — суммаризует и удаляет нерелевантное.
Цель — чтобы с каждым следующим чатом агент лучше понимал ваш проект.
Нюанс: чем меньше N, тем больше расход токенов. У некоторых агентов N = 1, что превращается в постоянную дополнительную нагрузку на провайдера.
Memory Bank есть у Cline, Cursor, Claude Code (по-разному реализован). У Veai — на финальной стадии тестирования, в одном из ближайших релизов.
Засорение контекста: что должен делать агент и что вы
Агент
-
Кэшировать токены у выбранного провайдера. Закэшированные токены сильно дешевле.
-
Авто-компрессия чата при заполнении контекста. У Veai — настраиваемая шкала (75%, 80%).
-
Сохранять результаты тулов в файл, отдавать модели только структуру. Особенно важно для непредсказуемых MCP, ответ которых легко перегружает контекст.
Вы
-
Знайте провайдера. У Anthropic кэш живёт 5 минут — мелкие задачи быстрее и дешевле решать в этом окне.
-
Сжимайте чат вручную, когда видите, что контекст забит. Помните: это не строго положительный эффект — может пострадать качество.
-
Отключайте ненужные инструменты. Описание тулов само по себе ест контекст.
-
Сжимайте AGENTS.md и rules, если они разрослись и потеряли актуальность.
Чек-лист настройки проекта под агента
|
Шаг |
Время |
Что делать |
|---|---|---|
|
1. AGENTS.md |
~10 мин |
|
|
2. AgentIgnore |
5–15 мин |
Legacy, секреты, TDD-каталоги |
|
3. MCP |
30 мин |
Подключить Jira, Confluence, GitHub. Сравнить community/официальные |
|
4. Rules |
15 мин |
Стиль агента + обходы багов моделей |
|
5. Skills |
По необходимости |
Сначала проверить готовые в реестрах |
|
6. Commit |
1 мин |
Закоммитить — единая точка истины для команды |

Ответы на вопросы из чата
Какие задачи в принципе нельзя решить с помощью LLM?
Прямого «нельзя» нет, если рядом сидит человек и валидирует. Аккуратнее с задачами, требующими жёсткого детерминизма (поиск уязвимостей со сложными алгоритмами) — лучше дать агенту специализированный инструмент через MCP. Со слабыми/маленькими моделями агентские пайплайны идут тяжело.
Как не скатиться к джуну при использовании AI?
Валидируйте генерируемый код, не принимайте слепо. Растите экспертизу в архитектуре, ревью, планировании, спецификациях. Техническая экспертиза понадобится в любой момент, в том числе в текущих условиях.
Cursor vs JetBrains-агенты — стоит ли переходить?
Cursor — форк VS Code, придётся менять среду. Если привыкли к JetBrains — попробуйте плагины: Cline, Sweep Dev, Veai. Переход на Cursor оправдан, только если вам не хватает функций в IDE-агентах.
Когда использовать SDD, а когда не стоит усложнять?
Зависит от сложности задачи относительно модели:
-
Простые задачи — с наскоку.
-
Средние и сложные — SDD/планирование.
-
Если агент уходит не туда — откатить, написать план или спецификацию, продолжить от неё.
-
Если агент идёт правильно, но не доводит до конца — TDD: зафиксировать систему валидации, дать агенту работать до зелёных тестов.
Как контролировать потребление токенов?
Дробить задачи. Одна задача — один чат. Точки синхронизации делать через план-файл, в который доносится прогресс — чтобы под-агенты с маленькими контекстами видели общую картину.
Какие модели локально хороши при ограниченном железе?
DeepSeek R1 32B (~2× H200, хорошее соотношение). GLM 5 — лучше по качеству, но требует больше железа. Очень большие модели можно квантизовать, но осторожно.
Какие фичи локальных LLM работают в разработке (think, web)?
Thinking — работает (для локальных важна не цена токенов, а нагрузка на сервер). Web/внешние источники — помогают. Внутри агента критичны инструменты типа запуска инспекций.
Аналитики и тестировщики — могут использовать AI?
Могут и должны. Тестирование и аналитика хорошо ложатся на агентов, но агента нужно кастомизировать под роль — отдельные скиллы, корпоративные rules, декомпозиция задач.
Полезные ссылки
-
Записи вебинаров:
В конце мая будет третий вебинар заключительный — «Работа с AI на уровне пользователя». Разберём типичный флоу разработчика с агентом, личные настройки и лайфхаки.
🔥 Акция до конца майских праздников — авторежим со скидкой 60% по минутам.
В режиме Auto по умолчанию сейчас стоит GPT‑5.5 с максимальным reasoning (xHigh). Если по какой-то причине модель недоступна — автоматически подключается Opus 4.7. Прогнали через бенчмарк GPT‑5.5 против GPT‑5.4: +20% закрытых задач, 100% success rate инструментов, агент доводит до конца там, где старый сдавался.
🔥Самое время проверить, как далеко агент дойдёт без вашего участия. → Установить плагин (https://veai.ru/download)
ссылка на оригинал статьи https://habr.com/ru/articles/1031992/