|
|
|
Professor Seleznov
|
 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 / стабильные модули |
Запись (читать можно — для понимания) |
| Слишком сложный модуль, не доверяете агенту |
Запись |
| Секреты, креды, .env |
Чтение и запись |
| 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 мин |
/init + ручная валидация |
| 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)-Источник
|
|
|
|