База знаний / Субагенты, скиллы и команды в Cursor: расширения агента 2.4+
Субагенты, скиллы и команды в Cursor: расширения агента 2.4+ — обложка гайда

О чём этот гайд? Короткий ответ

Короткий ответ: Как устроены субагенты, скиллы и команды в Cursor 2.4+: архитектура четырёх механизмов, YAML и Task, модели из UI, ловушки пайплайна и шаблоны для копирования.

Формат Авторская база знаний, AI-автоматизация, сайты и Telegram-боты
Регион работы Россия, онлайн
Раздел Cursor AI
Дата публикации 10.05.2026
Обновлено 10.05.2026
CURSOR · РАСШИРЕННЫЙ ГАЙД · v1.0 · МАЙ 2026

Субагенты, скиллы
и команды в Cursor

Полный практический разбор того, как устроены механизмы расширения агента в Cursor 2.4+. Архитектура, фронтматтер, реальные модели из UI, паттерны вызовов и подводные камни — всё, что нужно знать перед тем, как собирать свой первый пайплайн.

В Cursor 2.4+ четыре уровня расширения агента: Rules (.cursor/rules), Skills (.cursor/skills), Commands (.cursor/commands) и Subagents (.cursor/agents) с вызовом через Task. Субагент даёт изолированный контекст и свою модель; скилл и команда — процедуры и быстрые промпты для основного агента. Связка с правилами, гайдом по субагентам и MCP закрывает контекст и внешние сервисы.

Автор материала: Андрей Харченко Канал: @vibekovcheg Дата публикации: 10.05.2026 Обновлено: 10.05.2026 Источник сведений: docs.cursor.com
Khar.codes Канал: @vibekovcheg Источники: docs.cursor.com

Если ты скармливаешь этот гайд Cursor'у

Этот документ — справочник по механизмам расширения Cursor: Rules, Skills, Commands, Subagents. Скопируй промпт ниже в чат Cursor вместе со ссылкой на эту страницу — агент изучит материал и будет правильно создавать конфиги.

Промпт для копирования в Cursor

Изучи этот гайд по архитектуре расширений Cursor: https://khar-ag.ru/docs/cursor-extensions-guide/

Запомни ключевые правила:
1. Для субагентов используй YAML-фронтматтер с полями: name, description, model, readonly, background. НЕ используй is_background — это устаревшее поле.
2. В model можно указывать: inherit, fast, либо точный ID модели из UI Cursor.
3. Для оркестратора-навыка обязательно ставь disable-model-invocation: true.
4. Вызов субагентов всегда через инструмент Task с subagent_type равным точному значению name из карточки. Никогда не используй generalPurpose как замену кастомным ролям.
5. Каждый субагент возвращает JSON по чёткой схеме handoff — следующий шаг получает его на вход.
6. Скиллы лежат в .cursor/skills//SKILL.md, команды в .cursor/commands/*.md, субагенты в .cursor/agents/*.md.

Дальше я опишу задачу — учитывай эти правила при генерации конфигов.

Четыре механизма расширения, не три

В Cursor 2.4+ есть четыре разных способа расширить поведение агента. Их часто путают, потому что они все живут в папке .cursor/ и все основаны на Markdown-файлах. Но работают они по-разному и решают разные задачи.

Аналогия. Представь, что агент в Cursor — это сотрудник, которого ты нанял. Rules — это инструкция «у нас в компании принято так», которая всегда лежит у него на столе. Skills — это методички по конкретным процессам, к которым он обращается, когда задача попадает в их зону. Commands — это горячие клавиши: нажал — запустил готовый сценарий. Subagents — это другие специалисты, которым он делегирует часть работы и забирает у них только результат.
Rules
всегда
Конвенции проекта: команды сборки, стиль кода, ссылки на эталоны
Skills
по контексту
Процедурные «как делать» инструкции, скрипты, шаблоны
Commands
по «/имя»
Готовые промпты для повторяющихся задач
Subagents
через Task
Изолированный контекст, своя модель, параллельность
Механизм Папка Когда применяется
Rules .cursor/rules/*.mdc Постоянно в системном промпте
Skills .cursor/skills/<name>/SKILL.md Динамически, когда агент решит, что релевантно
Commands .cursor/commands/*.md По явному вводу /имя в чате
Subagents .cursor/agents/*.md Через инструмент Task — авто или явно
Ключевая идея. Эти механизмы дополняют друг друга. Rules задают общий контекст. Skills — это конкретные навыки, которые подключаются по ситуации. Commands — это твои горячие клавиши. Subagents — это специалисты, которых ты вызываешь для отдельных подзадач, чтобы не засорять основной контекст.
— · —

Изолированные исполнители подзадач

Субагент — это самостоятельный агент с собственным окном контекста, который Cursor вызывает для решения отдельной части задачи. Главный агент остаётся оркестратором и видит только финальный результат.

Зачем нужны субагенты

// почему 1

Изоляция контекста

Длинный поиск или исследование не засоряют основной диалог — они происходят в окне субагента.

// почему 2

Параллельность

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

// почему 3

Своя модель

Простой шаг — на дешёвой модели, креативный — на мощной. Экономия и качество.

// почему 4

Специализация

Каждый субагент — узкий специалист со своим промптом и набором инструментов.

Структура файла субагента

Каждый субагент — это Markdown-файл в .cursor/agents/ с YAML-фронтматтером и промптом.

.cursor/agents/security-auditor.md
---
name: security-auditor
description: Security specialist. Use when implementing auth, payments, or handling sensitive data.
model: inherit
readonly: true
background: false
---

Ты — эксперт по безопасности, который проверяет код на уязвимости.

При вызове:
1. Найди security-чувствительные пути в коде
2. Проверь на типичные уязвимости (SQL-инъекции, XSS, обход авторизации)
3. Убедись, что секреты не захардкожены
4. Проверь валидацию и санитизацию входных данных

Результат структурируй по уровню критичности:
- Critical (исправить до деплоя)
- High (исправить в ближайшее время)
- Medium (можно отложить)

Поля фронтматтера

Поле Тип Дефолт Что делает
name string имя файла Идентификатор для Task и /name-вызова
description string По нему агент решает, делегировать ли автоматически
model string inherit inherit, fast, или ID модели
readonly bool false Запрещает редактирование файлов и shell-команды
background bool false Запуск в фоне без блокировки родителя
Внимание. Поле называется background, а не is_background. В старых гайдах часто встречается устаревший вариант — он не сработает.

Три встроенных субагента

Cursor поставляется с тремя субагентами «из коробки» — их не нужно настраивать. Они автоматически срабатывают для своих задач и помогают разгрузить главный контекст.

// builtin

Explore

Поиск и анализ по кодовой базе. Использует более быструю модель и может запускать до 10 параллельных поисков.

// builtin

Bash

Запуск shell-команд в изоляции — длинные логи не засоряют основной диалог.

// builtin

Browser

Управление браузером через MCP. Фильтрует шумные DOM-снимки и скриншоты до релевантных результатов.

Способы вызова кастомных субагентов

  1. Автоматически. Cursor читает description и решает делегировать. Полезные фразы для триггера: «Use proactively», «Always use for X».
  2. Явно через слэш: /security-auditor проверь модуль платежей
  3. Естественным языком: «Используй субагента verifier, чтобы убедиться, что миграции отработали»
  4. Параллельно: «Проверь API и обнови документацию параллельно» — Cursor отправит несколько Task-вызовов одним сообщением.

Resume — продолжение разговора с субагентом

Каждый запуск субагента возвращает agent ID. Можно вернуться к нему позже:

пример вызова
Resume agent abc123 and analyze the remaining test failures

Background-субагенты пишут своё состояние в ~/.cursor/subagents/ по мере работы — родитель может читать эти файлы, чтобы следить за прогрессом.

Лимит вложенности. Субагенты — однослойные. Один субагент не может запустить другой. Это значит: твой главный оркестратор всегда — основной агент Cursor, а не субагент.

Trade-off: что взамен

Плюс Минус
Изоляция контекста Стартовая накладная: каждый субагент собирает свой контекст с нуля
Параллельность Расход токенов: 5 субагентов параллельно ≈ 5× токенов
Узкая специализация Для простых задач главный агент часто быстрее субагента
— · —

Динамические навыки агента

Skill — это переносимый, версионируемый пакет, который учит агента делать domain-specific задачи. Скилл может включать скрипты, шаблоны и референсы — всё, что подгружается на лету, когда агент решит, что навык релевантен.

Чем скилл отличается от субагента. Субагент — это отдельный исполнитель со своим контекстом. Скилл — это инструкция для текущего агента: как делать определённый тип задач, какие шаги, какие данные. Если задача — «сделай за меня одну вещь и верни результат» — это субагент. Если задача — «когда тебе понадобится X, делай вот так» — это скилл.

Структура папки скилла

.cursor/skills/deploy-app/
.cursor/skills/deploy-app/
├── SKILL.md           // обязательный файл
├── scripts/           // опционально, любой исполняемый код
│   ├── deploy.sh
│   └── validate.py
├── references/        // доп. документация on-demand
│   └── REFERENCE.md
└── assets/            // шаблоны, картинки, JSON
    └── config-template.json

Прогрессивная загрузка: основной SKILL.md короткий, тяжёлые референсы Cursor подтянет только когда понадобятся.

Фронтматтер скилла

SKILL.md
---
name: deploy-app
description: Deploy the application to staging or production. Use when deploying code or when the user mentions deployment, releases, or environments.
disable-model-invocation: false
---

# Deploy App

Развёртывание приложения через скрипты.

## Использование

Запусти скрипт деплоя: `scripts/deploy.sh <environment>`
Где `<environment>` — это `staging` или `production`.

## Pre-deployment валидация

Перед деплоем запусти `python scripts/validate.py`
Поле Обязательно Что делает
name да Идентификатор. Должен совпадать с именем папки
description да По нему агент решает, применить ли скилл
disable-model-invocation нет Если true — скилл подключается только через явное /name
license нет Лицензия (для публикации скилла)
compatibility нет Системные требования (нужны ли пакеты, сеть и т.д.)

Где Cursor ищет скиллы

  • .cursor/skills/ — проектные
  • .agents/skills/ — проектные (универсальный путь)
  • ~/.cursor/skills/ — глобальные пользовательские
  • Также читаются .claude/skills/ и .codex/skills/ для совместимости

Когда ставить disable-model-invocation: true

По умолчанию агент сам решает, применять скилл или нет, читая его description. Это удобно для скиллов общего назначения — типа «как написать README» или «как поправить миграцию».

Но для скиллов-оркестраторов (которые описывают цепочку шагов с субагентами) автоприменение часто мешает. Ты хочешь запускать пайплайн только через явную команду — тогда ставь disable-model-invocation: true и подключай через /имя-скилла.

Практическое правило. Узкие тематические скиллы — без флага. Сложные пайплайны со своей логикой — с disable-model-invocation: true.
— · —

Быстрые промпты на каждый день

Команда — это самый простой механизм расширения. Markdown-файл в .cursor/commands/, его содержимое становится промптом, когда ты вводишь /имя в чате.

Если коротко. Команда — это «макрос» для часто повторяющихся задач. У тебя нет промпта, который ты вбиваешь по 5 раз в день — у тебя есть /pr, /review, /новости.аи.

Главное отличие от скилла

Command Skill
Запуск Только явный /имя Может срабатывать автоматически
Структура Один .md файл Папка с SKILL.md + scripts/references/assets
Фронтматтер Не обязателен Обязателен (name, description)
Когда брать «Я делаю это вручную каждый день» «Агент должен подцепить это сам в нужный момент»

Простейшая команда

.cursor/commands/pr.md
# /pr — создать pull request

Создай pull request для текущих изменений.

1. Посмотри staged и unstaged изменения через `git diff`
2. Напиши понятное сообщение коммита по изменениям
3. Закоммить и запушь в текущую ветку
4. Используй `gh pr create`, чтобы открыть PR с описанием
5. Верни URL созданного PR

Никакого фронтматтера. Просто промпт. Файл сохранил → ввёл /pr в чате → агент выполнил.

Команда + субагенты = пайплайн

Связка из практики: команда запускает скилл-оркестратор, который описывает цепочку субагентов. Так устроен, например, мой пайплайн новостей:

.cursor/commands/новости.md
# /новости — запуск пайплайна публикации

Выполни navigate `news-post-pipeline` (см. @news-post-pipeline).

Каждый шаг 1–6 — отдельный вызов Task с subagent_type из таблицы навыка.
НЕ используй generalPurpose — иначе модели из карточек субагентов не подхватятся.

Нужны: 4 текста и 4 картинки. Дождись выбора пользователя, затем публикация.

Когда вводишь /новости @news-post-pipeline — агент получает текст команды + текст скилла одним пакетом. В скилле прописаны имена субагентов, их обязанности и схемы handoff. Дальше агент сам играет роль оркестратора.

— · —

Что выбрать в поле model:

Это самая практическая часть. Здесь у большинства гайдов в интернете путаница — потому что Cursor часто меняет названия моделей в UI быстрее, чем обновляет публичную документацию.

Что показывает дропдаун в редакторе субагента

Когда ты создаёшь субагент через UI Cursor, в селекторе «Model» ты видишь не «все модели в природе», а только то, что доступно в твоём аккаунте с твоими настройками видимости.

Пункт UI Что это Pool / расход
Inherit Та же модель, что у родителя По модели родителя
Auto Cursor сам выбирает дешёвую и быструю Auto+Composer pool (щедрый)
Premium Cursor сам выбирает максимально мощную API pool
Composer 2 Собственная модель Cursor для агентного кодинга Auto+Composer pool
Sonnet 4.6 Рабочая лошадка Anthropic API pool — $3 / $15 за 1M
Opus 4.7 Флагман Anthropic API pool — самый дорогой
GPT-5.4 / 5.5 Текущие флагманы OpenAI API pool — $2.5 / $15
Codex 5.3 OpenAI, агентная модель для кода API pool — $1.75 / $14
Gemini 3.1 Pro Google, отлично для веб-поиска API pool — $2 / $12
Gemini 3 Flash Google, дешёвая для классификации API pool — $0.5 / $3

Что писать в YAML-фронтматтере

В файле субагента можно использовать три типа значений в поле model:

// вариант 1

Специальное значение

inherit — взять у родителя
fast — соответствует Auto в UI

// вариант 2

ID модели

Точный идентификатор: composer-2, claude-sonnet-4-6, claude-opus-4-7, gpt-5.4

// вариант 3

Через UI

Выбрать в дропдауне — Cursor сам подставит нужный ID в YAML

Важно про ID моделей. «Display name» в дропдауне (например, «Sonnet 4.6») и «model ID» в YAML (claude-sonnet-4-6) могут не совпадать буква в букву. Самый надёжный способ узнать точный ID — выбрать модель в UI, сохранить субагент, потом открыть файл и посмотреть, что Cursor сам прописал в model:.

Два пула расхода — это важно знать

У каждого тарифа есть два разных бюджета, которые сбрасываются раз в месяц:

// pool 1

Auto + Composer

Очень щедрый бюджет. Расходуется, когда выбран Auto, или конкретно Composer 2. Для повседневной работы хватает на много задач.

// pool 2

API

$20 на Pro, $70 на Pro+, $400 на Ultra. Расходуется по API-ценам провайдера, когда ты выбираешь конкретную модель Claude/GPT/Gemini.

Архитектурный вывод: тяжёлые шаги пайплайна на конкретных моделях ест API-pool, простые шаги с model: inherit или Auto/Composer — практически не тратят бюджет.

Пример распределения моделей по шагам пайплайна

Шаг Что делает Какую модель брать
1 Поиск в вебе, обработка сниппетов gemini-3.1-pro
2 Логический выбор одного из вариантов Auto или composer-2
3 Классификация / простая проверка gemini-3-flash
4 Креативный текст, точный формат claude-sonnet-4-6 или opus-4-7
5 Длинный текст под платформу claude-sonnet-4-6
6 Форматирование, сборка финального ответа inherit
Когда модель из YAML не применится. Cursor может молча подменить указанную модель в трёх случаях:
  • Модель заблокирована админом команды
  • Модель требует Max Mode, который у тебя выключен
  • Модели нет на твоём тарифе
Если ты на legacy request-based плане без Max Mode — субагенты вообще игнорируют поле model и едут на Composer.
— · —

Главные ошибки, которые ломают пайплайн

Ловушка 1: generalPurpose вместо имени

Самая распространённая ошибка. Когда Cursor вызывает Task без точного subagent_type, он использует generalPurpose — встроенный fallback. Что в этом случае происходит:

  • Файл .cursor/agents/news-candidate-hunter.md не открывается
  • Поле model: gemini-3.1-pro не применяется
  • В UI и биллинге увидишь не ту модель, которую прописал
❌ Неправильно
Task(subagent_type="generalPurpose", prompt="Ты — news-candidate-hunter, найди новости...")
✅ Правильно
Task(subagent_type="news-candidate-hunter", prompt="Найди новости за 24–72 часа...")

Ловушка 2: устаревшее поле is_background

В старых гайдах из 2025 года часто встречается is_background: true. В актуальной документации (Cursor 2.4+) поле называется просто background. Старое имя не сработает — субагент будет запускаться в foreground независимо от значения.

Ловушка 3: несуществующие ID моделей

Cursor часто меняет названия и версии моделей. Если в YAML прописано composer-1.5, а в твоём UI модель называется «Composer 2» — может быть, что это та же модель под новым именем, а может быть, что Cursor молча падает на дефолт.

Безопасный приём. Создай или отредактируй субагент через UI Cursor: выбери нужную модель в дропдауне, сохрани, затем открой .md-файл и посмотри, какой ID Cursor прописал в YAML. Этот ID гарантированно валиден для твоего билда.

Ловушка 4: вложенные субагенты

Субагент не может запустить другого субагента. Если в твоей архитектуре оркестратор — это субагент, и он должен дёргать ещё несколько ролей — пайплайн просто не запустится. Оркестратор всегда должен быть основным агентом Cursor.

Ловушка 5: автоматическое применение скилла-оркестратора

Если у скилла-пайплайна не стоит disable-model-invocation: true, агент может попытаться применить его в случайном моменте — например, когда юзер просто спросил «как у тебя настроен пайплайн». Скилл-оркестратор должен запускаться только явно — через /имя.

Чеклист: «почему субагент не слушается»

Прогони этот список перед тем, как ругать Cursor

  • Скилл подключён через @название-скилла или текст команды содержит правила?
  • В скилле/команде есть явное правило про вызов Task с конкретным subagent_type?
  • Поле name в .md-файле субагента точно совпадает со строкой в вызове Task?
  • Проект открыт в Cursor от корневой папки, где лежит .cursor/agents/?
  • Cursor обновлён до версии 2.4+ (раньше кастомных Task-типов могло не быть)?
  • В первом сообщении явно написано «вызывай Task с типами из таблицы, не используй generalPurpose»?
  • В UI рядом с шагом отображается имя нужной модели? Если у всех шагов одна и та же — вероятно, работает generalPurpose.
— · —

Скопируй и подставь свои значения

Эти три шаблона — минимальный комплект для запуска собственного пайплайна. Создай папку .cursor/ в корне проекта, положи файлы в нужные подпапки, замени значения в квадратных скобках на свои.

Шаблон 1 — Скилл-оркестратор

.cursor/skills/мой-пайплайн/SKILL.md
---
name: мой-пайплайн
description: >-
  Краткое описание: что делает, какие команды его запускают.
disable-model-invocation: true
---

# Мой пайплайн (оркестратор)

## Итог

[Опиши, что должно получиться на выходе]

## Обязательный вызов субагентов через Task

Каждый шаг — ТОЛЬКО через инструмент Task.
- `subagent_type` = точное значение `name` из таблицы ниже
- ЗАПРЕЩЕНО использовать `generalPurpose` для замены ролей
- `prompt` — только входные данные шага, не копировать инструкцию из .md субагента

## Субагенты

| Шаг | Файл | name | Назначение |
|-----|------|------|------------|
| 1 | `мой-шаг-один.md` | мой-шаг-один | [что делает] |
| 2 | `мой-шаг-два.md` | мой-шаг-два | [что делает] |

## Схемы данных между шагами

### После шага 1 → шагу 2
```json
{ "поле": "значение" }
```

## Зоны ответственности

- [Что делает оркестратор сам, что — субагенты]
- [Что запрещено делать без явного согласия пользователя]

Шаблон 2 — Субагент

.cursor/agents/мой-шаг-один.md
---
name: мой-шаг-один
model: claude-sonnet-4-6
description: [Что делает; когда главный агент должен его вызвать]
readonly: false
background: false
---

Ты — субагент [роль].

## Вход

[Опиши, что субагент получает на вход]

## Задача

1. [Шаг 1]
2. [Шаг 2]

## Выход

### HANDOFF → следующий-субагент

```json
{ "поле": "значение" }
```

Шаблон 3 — Команда запуска

.cursor/commands/моя-команда.md
# моя-команда — запуск пайплайна

## Результат

[Что должно получиться]

## Делегирование (обязательно)

Каждый шаг — отдельный Task с subagent_type из навыка.
НЕ используй generalPurpose для замены ролей.

## Стартовая формулировка

Выполни [название навыка]. На шагах вызывай Task с subagent_type:
- мой-шаг-один
- мой-шаг-два

После каждого шага показывай мне результат для проверки.
Запуск. В чате Cursor: /моя-команда @мой-пайплайн — агент получает текст команды + текст скилла одним пакетом и начинает работу по схеме.
— · —

Как начать новый проект пошагово

  1. Опиши пайплайн на бумаге. Что на входе, что на выходе, сколько шагов, где можно параллелить.
  2. Создай файлы субагентов в .cursor/agents/: один файл = один шаг. Прописывай name, model, description, readonly, background.
  3. Подбирай модели по сложности шага. Простые шаги → Auto / Composer 2 / inherit. Сложные креативные шаги → Sonnet 4.6 / Opus 4.7. Веб-поиск → Gemini 3.1 Pro. Классификация → Gemini 3 Flash.
  4. Создай скилл-оркестратор в .cursor/skills/имя/SKILL.md: таблица субагентов, правило вызова через Task, схемы handoff между шагами.
  5. Создай команду в .cursor/commands/имя.md: правило делегирования + стартовая формулировка.
  6. Открой проект в Cursor от корневой папки (там, где лежит .cursor/).
  7. Первый запуск: в чате /моя-команда @мой-навык — добавь в первое сообщение фразу «вызывай Task с subagent_type из таблицы, не используй generalPurpose».
  8. Проверь UI: у каждого шага должна быть видна своя модель — это признак того, что карточки субагентов реально применяются.

Финальный промпт-памятка для Cursor

Ты работаешь над проектом, в котором используется архитектура Cursor 2.4+ с субагентами, скиллами и командами.

Ключевые правила, которые нельзя нарушать:

1. Субагенты живут в .cursor/agents/*.md с YAML-фронтматтером.
   Поля: name, description, model, readonly, background.
   Поле background, не is_background.

2. Скиллы живут в .cursor/skills//SKILL.md.
   Скилл-оркестраторы должны иметь disable-model-invocation: true.

3. Команды живут в .cursor/commands/*.md, фронтматтер не обязателен.

4. Вызов субагентов всегда через инструмент Task.
   subagent_type = точное значение name из карточки.
   НЕ использовать generalPurpose для замены ролей — карточка не подключится.

5. В model можно указать: inherit, fast, либо точный ID модели
   (composer-2, claude-sonnet-4-6, claude-opus-4-7, gemini-3.1-pro,
    gemini-3-flash, gpt-5.4, codex-5.3 и т.д.)
   Точный ID лучше брать через UI Cursor (выбрать в дропдауне → сохранить → посмотреть YAML).

6. Каждый субагент возвращает JSON по чёткой схеме handoff.
   Следующий шаг получает этот JSON на вход.

7. Субагенты — однослойные. Субагент не может запустить другой субагент.
   Оркестратор — всегда основной агент Cursor, не субагент.

Когда я опишу задачу — учитывай эти правила при генерации файлов конфигурации.

Чеклист перед первым пайплайном

Короткий ответ: у каждого субагента свои name, model, вызов только через Task с этим именем.

Скилл-оркестратор с таблицей субагентов и disable-model-invocation: true.

Команда в .cursor/commands/ стартует сценарий без подмены на generalPurpose.

В модели — inherit, fast или точный ID из UI Cursor.

Частые вопросы

Зачем блок. Короткие ответы для поиска и цитирования — можно читать отдельно от длинных частей.

Чем субагент отличается от скилла?

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

Нужен ли фронтматтер у команды?

Не обязателен: команда — это в первую очередь текст, который подставляется после /имя. Скиллы и субагенты как раз опираются на YAML-шапку.

Можно ли вызывать субагента из субагента?

Короткий ответ: в модели «один слой» оркестратор — основной агент Cursor; вложенные Task из субагента недоступны. Декомпозицию делайте шагами у оркестратора.

Гайд от Khar.codes · Канал @vibekovcheg · Май 2026

Источники: docs.cursor.com/docs/subagents · docs.cursor.com/docs/skills · docs.cursor.com/docs/models-and-pricing · cursor.com/blog/agent-best-practices