Sub-агенти Claude Code: коли делегувати і як писати promptи » IT-FORMAT
» » » Sub-агенти Claude Code: коли делегувати і як писати promptи
ВИП. №187· липень 2026· НІЖИН

Новий формат бізнесу — у цифрі, у вашій щоденній роботі.

Автоматизація обліку, власні розробки на BAS/1С, IP-телефонія та відеоспостереження. Пишемо про те, що робимо — і робимо те, про що пишемо.

Популярні

    Sub-агенти Claude Code: коли делегувати і як писати promptи

    IT-Wiki / Claude Code: команди і автоматизація 14 травня 2026 Переглядів: 118 Автор: Claudia
    Sub-агенти Claude Code
    Editorial composition · нашаровані сателіти-агенти
    Перед стартом

    Робоча сесія CC, інструмент Agent доступний (за замовчуванням включений). Перевір slash /agents — у списку мають бути базові типи (general-purpose, Explore, Plan). Якщо плануєш користуватись isolation=worktree — потрібен git ≥ 2.5.

    Що таке sub-агент у двох реченнях

    Sub-агент — окрема сесія CC, яка стартує всередині твоєї, виконує задачу і повертає один результат. Має власний контекст (твою сесію не бачить), власну роль (тип агента), власні дозволи. Запускається через tool Agent або кастомні .claude/agents/.

    Це не «асинхронна задача», не «фоновий процес»: це послідовна делегація з чистим інтерфейсом prompt → result. Або, якщо явно вказати run_in_background=true — асинхронна задача, але все одно з тим самим інтерфейсом результату.

    Базові типи агентів

    ТипПризначенняЩо доступно
    general-purposeБагатокрокові задачі з невизначеним планомВсі tools
    ExploreRead-only пошук по кодбазі: «де визначено X», «які файли посилаються на Y»Тільки Read, Glob, Grep, WebFetch/WebSearch (без Edit/Write)
    PlanАрхітектурне планування: проектування підходу до завданняRead-only + аналітика

    Кастомні агенти описуються у .claude/agents/<type>.md з frontmatter (name, description, tools, model). Це окрема тема — для більшості задач достатньо трьох built-in типів.

    Коли делегувати — а коли НЕ

    ДелегуватиНе делегувати
    Пошук у великій кодбазі («де викликається parseConfig», «знайди всі імпорти X»)Точкове читання відомого файла — швидше через Read
    Паралельні незалежні запити (3 агенти на 3 різні питання одночасно)Послідовна логіка, де кожен крок потребує бачити попередній
    Ізольований експеримент (isolation=worktree) — спробувати ризиковану зміну, не псуючи поточне деревоЕксперимент, де треба «бачити» побічні зміни — sub-агент повертає тільки summary
    Велика операція, яка з'їсть твій контекст (read 30 файлів, summary)Операції, де треба контроль на кожному кроці — модель головної сесії має бачити деталі
    Незалежний code review (друга думка від чистої моделі)Синтез — «на основі знайденого виправ баг». Це антипатерн: ти даєш агенту НЕ те, що він може зробити, бо синтез — твоя робота

    Золоте правило: не делегуй розуміння. Прийняття рішення — у твоїй сесії, бо тільки ти бачиш повний контекст. Sub-агент — інструмент збору фактів, не прийняття рішень.

    Як писати prompt для sub-агента

    Sub-агент не бачить твоїх повідомлень. Не бачить твою memory. Не бачить файли, які ти вже прочитав. Він стартує з чистого аркуша + системний промт + один твій input. Це означає:

    Правило 1: prompt має бути self-contained

    // Поганий prompt (передбачає, що агент знає контекст):
    "Перевір цей баг."
    
    // Хороший:
    "Перевір баг у логіці retry у файлі src/api/client.ts:42.
     Контекст: ми хочемо, щоб при 429 робилось 3 retry з expontntial backoff.
     Зараз retry відбувається безкінечно при будь-якій 5xx.
     Очікую: report на 100 слів — у чому конкретно баг і яким одно-рядковим
     fix-ом його можна полагодити."

    Правило 2: фіксований формат відповіді

    Без явного формату агент відповість як завгодно. Скажи: «під 200 слів», «список з 3 пунктів», «таблиця з колонками: файл, рядок, проблема, fix». Це особливо важливо, бо результат потрапляє у твій контекст.

    Правило 3: коротка передісторія тільки якщо потрібна

    Не вали усі деталі проєкту. Дай рівно стільки, скільки треба для задачі. Якщо агенту знадобиться більше — він прочитає сам через Read.

    Правило 4: lookups vs investigations

    • Lookup («знайди файл, де визначено X») — давай точну команду / шаблон. Не пиши «дослідіи».
    • Investigation («чому ці тести не пройшли») — давай питання, не приписи. Передбачені кроки стають баластом, коли початкова гіпотеза неправильна.

    isolation=worktree — окрема магія

    Параметр isolation: "worktree" у виклику Agent створює тимчасовий git worktree у окремому каталозі і запускає агента там. Це означає:

    • Зміни агента не торкаються твоєї робочої копії.
    • Якщо агент нічого не змінив — worktree автоматично видаляється.
    • Якщо щось зробив — повертає шлях до worktree і назву гілки, щоб ти міг ревʼюти diff.

    Це найбезпечніший спосіб запускати ризиковані експерименти: «спробуй переписати модуль X», «застосуй автоматичний рефакторинг», «вирівняй імпорти у всіх 200 файлах». Не вийшло — нічого не сталось. Вийшло — merge у свою гілку.

    Реальні кейси

    1. Огляд гілки перед релізом

    Agent({
      subagent_type: "general-purpose",
      description: "Branch ship-readiness audit",
      prompt: "Audit what's left before this branch can ship. Check:
        uncommitted changes, commits ahead of main, whether tests exist,
        whether the GrowthBook gate is wired up, whether CI-relevant
        files changed. Report a punch list — done vs. missing. Under 200 words."
    })

    Агент проходить git status, log, diff, читає тести і конфіги — повертає список «що готово / що залишилось». Економить ~10 хв твого часу і ~5 тулз-викликів у твоєму контексті.

    2. Code review другої думки

    Agent({
      subagent_type: "general-purpose",
      description: "Independent migration review",
      prompt: "Review migration 0042_user_schema.sql for safety.
        Context: we're adding NOT NULL column to 50M-row table with backfill default.
        I want a second opinion on whether the backfill approach is safe under
        concurrent writes — I've checked locking behavior but want independent
        verification. Report: is this safe, and if not, what specifically breaks?"
    })

    Sub-агент починає з чистого аркуша, не бачить твоєї логіки. Його висновок — справді незалежний.

    3. Експеримент з ризиковою зміною через worktree

    Agent({
      subagent_type: "general-purpose",
      description: "Refactor experiment in worktree",
      isolation: "worktree",
      prompt: "Refactor src/auth/* to use the new SessionContext pattern
        (described in CLAUDE.md). Run all tests after each change.
        Don't touch anything outside src/auth/. Report: what was changed,
        test status, any unexpected coupling discovered."
    })

    Якщо рефакторинг провалиться — твоє дерево чисте, ти можеш ревʼюти diff у worktree і вирішити, забирати чи відкинути.

    4. Паралельне виконання — 3 агенти одночасно

    // В одному message — три виклики Agent одночасно:
    Agent({ description: "Find all DB migrations", ... })
    Agent({ description: "List webhook handlers",   ... })
    Agent({ description: "Find feature flags usage", ... })

    Три незалежні запити стартують паралельно. Результати приходять окремими повідомленнями. Корисно, коли треба зібрати дані з кількох незалежних кутів.

    Підводні камені

    Що типово зриває роботу з sub-агентами

    Sub-агент НЕ успадковує memory. Якщо у твоїй сесії є важливі feedback-rules з MEMORY.md — sub-агент про них не знає. Або повтори суттєве у prompt, або вказуй у prompt-і «прочитай ~/.claude/projects/<slug>/memory/MEMORY.md».

    run_in_background — не polling. Запустивши агента у фон, не треба питати «чи готовий?» — CC сам тебе повідомить, коли він закінчить. Якщо будеш sleep + check у циклі — згориш контекст і токени дарма.

    Конкуренція по файлах. Не запускай двох sub-агентів, які можуть редагувати один файл. Кожен побачить свій стан, останній перезапише попереднього. Якщо потрібно паралельно — давай розділені скоупи (різні каталоги/файли).

    Description в Agent-виклику — це telemetry, не prompt. 3-5 слів, що скаже про роботу. Не дублюй сюди тіло prompt'у.

    Sub-агент не бачить твоїх відкритих файлів. Якщо ти вже прочитав file.py і обговорюєш його — sub-агент муситиме прочитати його сам. Не передавай у prompt sumary файлу — це баг (агент має прочитати оригінал, summary не достовірне джерело).

    Worktree не очищається сам, якщо є зміни. Якщо agent щось закомітив у worktree — каталог залишається. Періодично прибирай git worktree list, видаляй застарілі гілки.

    Cross-refs

    Чек: чи готовий мій prompt для агента
    • Self-contained: агент не потребує мого контексту, щоб зрозуміти задачу.
    • Має конкретні артефакти (файли, символи, гілки), не загальні описи.
    • Описаний очікуваний формат відповіді (довжина, структура).
    • Якщо investigation — питання, не приписи кроків.
    • Якщо lookup — точна команда / шаблон.
    • Не делегую синтез — синтез у моїй сесії.
    • Якщо ризикова зміна — isolation=worktree.
    Актуальність

    Поведінка Agent-tool і параметрів станом на травень 2026. Anthropic регулярно додає нові типи built-in агентів (Explore, Plan з'явились пізніше за general-purpose). Свіже — /agents у твоїй сесії.

    Опубліковано: 14-05-2026, 18:54 · Автор: Claudia
    Теги
    Вхід
    Опитування

    Якою програмою обліку ви користуєтесь?