AI Wiki

Агентний режим

Автономна робота Claude Code — режими дозволів, делегування задач та мультиагентна архітектура

claude-codeagentautonomoussubagentspermissions

📎ОФІЦІЙНА ДОКУМЕНТАЦІЯ

Що таке агентний режим?

В агентному режимі Claude Code працює як автономний AI-агент — він самостійно планує послідовність дій, вибирає інструменти, аналізує результати та ітерує до досягнення мети. Це відрізняє його від простого чат-бота, який відповідає на окремі запитання.

ℹ️Інформація

Claude Code завжди працює як агент. Кожен ваш запит запускає цикл "планування → дія → спостереження → корекція", який продовжується, поки задача не буде виконана.

Цикл роботи агента

┌──────────────────────────────────┐ │ Користувач ставить задачу │ └──────────────┬───────────────────┘ │ ┌───────▼───────┐ │ Планування │ ← Аналіз задачі, розробка плану └───────┬───────┘ │ ┌───────▼───────┐ │ Дія │ ← Виклик інструменту (Read, Edit, Bash...) └───────┬───────┘ │ ┌───────▼───────┐ │ Спостереження │ ← Аналіз результату └───────┬───────┘ │ ┌───────▼───────┐ │ Корекція │ ← Чи потрібні додаткові дії? └───────┬───────┘ │ Так ───┘──── Ні → Відповідь користувачу │ Повернення до "Дія"

Режими дозволів

Claude Code має систему дозволів, яка контролює, що агент може робити автономно:

Запит дозволу (за замовчуванням)

Claude Code запитує підтвердження перед кожною потенційно небезпечною дією:

Claude wants to run: rm -rf dist/ Allow? (y/n/always)

Попередньо дозволені дії

У settings.json можна визначити, які дії дозволені без підтвердження:

json
{ "permissions": { "allow": [ "Read", "Glob", "Grep", "Bash(npm run test)", "Bash(npm run build)", "Bash(npm run lint)", "Bash(git status)", "Bash(git diff *)", "Bash(git log *)", "Write", "Edit" ], "deny": [ "Bash(rm -rf *)", "Bash(sudo *)", "Bash(curl * | bash)", "Bash(git push --force *)" ] } }

Yolo mode

🚨Небезпека

Режим "yolo" дозволяє агенту виконувати будь-які дії без підтвердження. Використовуйте тільки у ізольованих середовищах (Docker, VM, sandbox).

bash
claude --dangerously-skip-permissions

Headless режим для CI/CD

Claude Code можна використовувати в автоматизованих pipeline-ах:

bash
# В GitHub Actions claude -p "Виправ всі ESLint помилки та створи коміт" \ --output-format json \ --max-turns 20 \ --dangerously-skip-permissions

Приклад GitHub Actions workflow

yaml
name: AI Code Review on: [pull_request] jobs: review: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run Claude Code Review env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} run: | npm install -g @anthropic-ai/claude-code claude -p "Проведи code review змін у цьому PR. Зверни увагу на безпеку, продуктивність та якість коду." \ --output-format json > review.json

Мультиагентна архітектура

Субагенти

Claude Code може делегувати частини роботи субагентам — окремим екземплярам, які працюють паралельно над незалежними задачами:

bash
# Головний агент отримує складну задачу > Проведи рефакторинг всіх API endpoints: додай валідацію через Zod, error handling та тести # Claude Code автоматично може розділити на підзадачі: # Субагент 1: рефакторинг /api/users # Субагент 2: рефакторинг /api/products # Субагент 3: рефакторинг /api/orders

Як працюють субагенти

  1. Головний агент аналізує задачу та визначає незалежні частини
  2. Субагенти запускаються паралельно, кожен працює над своєю частиною
  3. Результати збираються та інтегруються головним агентом
  4. Субагенти мають обмежений контекст — тільки те, що їм передано
💡Порада

Субагенти ефективні для задач, які можна розбити на незалежні частини: рефакторинг різних модулів, додавання тестів до різних файлів, оновлення документації.

Обмеження субагентів

АспектОбмеження
КонтекстСубагент не бачить весь контекст головного агента
КоординаціяСубагенти не спілкуються між собою
КонфліктиМожуть виникати конфлікти при зміні спільних файлів
ДозволиНаслідують дозволи від головного агента

Делегування задач

Через prompt

bash
# Просте делегування > Використай субагентів для паралельної обробки кожного файлу в src/utils/ # Складне делегування > Для кожного компонента у src/components/ паралельно: 1. Додай PropTypes або TypeScript інтерфейс 2. Створи unit тест 3. Додай JSDoc документацію

Через --max-turns

Обмеження кількості кроків запобігає нескінченним циклам:

bash
claude -p "Виправ баг у формі логіна" --max-turns 10

Безпека автономного режиму

Рекомендації

  1. Починайте з обмежених дозволів — додавайте allow-правила поступово
  2. Використовуйте deny-список — явно забороняйте небезпечні дії
  3. Обмежуйте max-turns — запобігає нескінченним циклам
  4. Тестуйте в sandbox — нове середовище або Docker контейнер
  5. Моніторте виконання — використовуйте verbose mode
bash
# Безпечний запуск з обмеженнями claude -p "Рефакторинг utils.ts" \ --max-turns 15 \ --allowedTools Read,Edit,Grep,Glob,Bash
Кращі практики

Як безпечно та ефективно використовувати агентний режим

Робота з агентами

Загальні принципи побудови та використання AI-агентів