SSD Nodes Learn Hosting plans →
Посібники Matt ConnorВід Matt Connor

Як створити AI-агента з Claude на VPS

Дізнайтеся, як поєднати Messages API, tool use і MCP: Claude міркує, а ваш VPS запускає інструменти, зберігає дані та контролює доступ.

Що означає створення агента з Claude

Створення агента з Claude означає використання Claude як ядра міркувань, тоді як цикл, інструменти й дані працюють на вашому сервері. Claude визначає, що потрібно зробити, а ваш VPS виконує ці дії. Ви надсилаєте Claude завдання та поточний стан. Claude відповідає або результатом, або запитом на використання одного з ваших інструментів. Ваш код запускає інструмент і надсилає результат назад. Цикл продовжується, доки завдання не буде виконано. Інтелектуальні можливості надаються як сервіс, до якого ви звертаєтеся через інтернет. Усе інше належить вам.

Саме такий поділ робить цю архітектуру привабливою. Ви отримуєте міркування рівня провідних моделей без необхідності експлуатувати власну модель і зберігаєте повний контроль над доступом агента, оскільки інструменти працюють на обладнанні, яким ви керуєте. Якщо ви вже створили першу програму на Claude, посібник зі створення першого застосунку Claude на VPS описує базові налаштування, на яких ґрунтується цей матеріал.

Claude — це «мозок»: Messages API

Кожен виклик Claude проходить через одну кінцеву точку — Messages API. Ви надсилаєте поточний діалог і список інструментів, які агент може використовувати. Claude повертає наступне повідомлення. Це повідомлення містить або остаточну відповідь, або запит на виклик інструмента. У варіанті зі створенням власної реалізації окремого «agent API» немає: використання інструментів є функцією цієї єдиної кінцевої точки, а цикл навколо неї запускає ваш код.

Claude не зберігає стан між викликами, тобто самостійно нічого не запам’ятовує. Кожен запит містить весь діалог. Ваш код зберігає історію та надсилає її під час кожного ходу. Саме тому кожен хід у довгій сесії потребує більше токенів, ніж попередній. Це радше особливість проєктування, ніж обмеження: оскільки стан зберігається на вашому сервері, ви точно визначаєте, що бачить Claude, і дані про завдання не зберігаються в місцях, які ви не контролюєте. Водночас prompt постійно збільшується. Контекстне вікно Claude без проблем це обробляє, але локальна модель у тому самому циклі — ні. Саме тому для Ollama потрібно збільшити num_ctx, перш ніж вона перестане обрізати довгі prompt.

Використання інструментів — це цикл роботи агента

Цикл роботи агента з Claude легко описати. Ви надсилаєте запит, який містить ваші інструменти. Claude аналізує завдання і, якщо потрібно виконати дію, відповідає запитом на використання інструмента: указує інструмент і заповнює його вхідні параметри. Ваш код запускає цей інструмент, а потім надсилає результат Claude у наступному запиті. Claude аналізує результат і або запитує інший інструмент, або формує остаточну відповідь. Коли Claude припиняє запитувати інструменти, завдання виконано.

Такий цикл можна написати вручну за кілька рядків. Багато хто так і робить, оскільки його легко переглядати та контролювати. Офіційні SDK також надають runner для інструментів, який запускає цикл замість вас: ви передаєте функції інструментів, а SDK сам обробляє послідовність запитів і відповідей — викликає Claude, запускає ваші інструменти та передає результати назад, доки Claude не завершить роботу. В обох випадках структура однакова. Runner лише позбавляє вас необхідності писати цикл самостійно. Якщо цикл усе ще здається абстрактним, спочатку напишіть мінімальну його реалізацію, а вже потім використовуйте runner. Саме на цьому кроці ґрунтується все інше в цьому поетапному шляху самостійного вивчення AI-агентів з нуля.

Три способи створення та вибір варіанта для VPS

Є три способи створити Claude agent. Вони відрізняються тим, яку частину інфраструктури ви запускаєте самостійно.

Перший спосіб — власний код, який викликає Claude API і використовує ваші інструменти. Ви пишете цикл самостійно або використовуєте tool runner з SDK, а всю систему розміщуєте на власному VPS. Це найпоширеніший варіант, оскільки він дає повний контроль над інструментами, даними та безпекою. Система працює як звичайна програма на сервері. Більша частина цього посібника передбачає саме такий підхід.

Другий спосіб — Claude Agent SDK. Це Claude Code, coding agent, упакований як бібліотека, на основі якої можна створювати власні рішення. SDK містить повний цикл agent і вбудовані інструменти для читання та запису файлів, виконання shell-команд і пошуку. Тому вам не потрібно створювати ці компоненти з нуля. SDK також працює на власному сервері, тому добре підходить для VPS, якщо потрібен потужний agent для роботи з файлами та shell без самостійної розробки harness. Agent, який читає файли та виконує shell-команди, потрібно ізолювати до початку роботи без нагляду. У розділі безпечний запуск Claude Code на сервері описано систему дозволів, sandbox і варіанти ізоляції.

Третій спосіб — Managed Agents, де Anthropic запускає цикл agent. Типово інструменти agent виконуються в sandbox, який розміщує Anthropic. Тому робочий простір agent розташований в інфраструктурі Anthropic, а не на вашому VPS. Станом на October 11, 2026, self-hosted sandbox, який усе ще перебуває в beta, дає змогу worker process на власному сервері виконувати виклики інструментів, тоді як цикл залишається в Anthropic. Обирайте Managed Agents, якщо хочете мінімізувати операційне обслуговування і вам не потрібно запускати сам цикл на власній машині. У двох інших варіантах весь agent розміщується на вашому сервері. Саме про це йдеться в решті цього посібника.

Підключення інструментів за допомогою MCP

Незалежно від обраного підходу, агент потрібно підключити до реальних систем. Model Context Protocol — це зручний спосіб зробити це. MCP — відкритий стандарт для надання агенту доступу до інструментів і даних. Замість того щоб вручну розробляти інтеграцію для кожного сервісу, ви підключаєте Claude до MCP-сервера, який уже надає потрібні можливості як інструменти. MCP-сервери можна запускати як невеликі служби на тому самому VPS. Кожна служба отримує лише необхідні їй права доступу. Це описано в розділі запуск MCP-серверів на VPS.

Вибір моделі

Claude доступний у кількох моделях, і вибір між ними є компромісом між можливостями, швидкістю та вартістю. Станом на October 11, 2026, до актуальної лінійки належать Claude Opus 5.5 (claude-opus-5-5), яку Anthropic рекомендує як початковий варіант для більшості робочих навантажень і розробляє для тривалого агентного програмування та роботи зі знаннями; Claude Sonnet 5.5 (claude-sonnet-5-5) — збалансований варіант, дешевший і швидший; і Claude Haiku 5.5 (claude-haiku-5-5) — найшвидша та найдешевша модель для простих кроків у великому обсязі. Вище за них розташована Claude Fable 5.1 (claude-fable-5-1) — найпотужніша модель, доступна всім клієнтам, для складних міркувань і тривалої агентної роботи. Старіші моделі, зокрема Claude Opus 4.8 і Claude Fable 5, ще доступні, але тепер позначені як legacy. Використовуйте у своєму коді точний ідентифікатор моделі без додавання дати.

Практичний підхід — поєднувати моделі. Доручіть дешевшій моделі виконувати стандартні виклики інструментів, а потужнішій — ухвалювати складні рішення. Оскільки модель у запиті задається простим рядком, її можна замінити в одному рядку коду. Тому почніть із потужної моделі за замовчуванням, а там, де швидкість або вартість важливіші за незначне підвищення якості, перейдіть на слабшу модель.

Запускайте його як захищену службу на VPS

Агент корисний лише тоді, коли він постійно працює, і безпечний лише тоді, коли його ізольовано. На VPS цього досягають запуском агента як захищеної системної служби, а не програми, яку ви вручну запустили в терміналі. Як служба, він запускається під час завантаження системи, перезапускається після аварійного завершення та записує журнали до journal. У захищеній конфігурації агент працює від імені непривілейованого користувача й отримує лише потрібні йому дозволи. Тому помилка або шкідлива інструкція мають обмежений вплив. Unit служби може обмежити доступ процесу до ресурсів і визначити, скільки пам’яті, CPU та завдань він може використовувати. Але unit не може оцінити, як агент вирішить використати ці дозволи. Тому решту потрібно реалізувати в самому harness агента. Саме це роблять плагіни DeepSeek Harness, які варто встановити в іншому стеку: ліміти витрат, правила дозволів для кожного інструмента та сканування prompt injection.

Найважливіше правило — зберігати ключ Claude API на сервері. Ключ оплачує та авторизує кожен виклик. Тому він має зберігатися у файлі, доступному лише користувачу агента, завантажуватися в службу як змінна середовища та ніколи не міститися в коді, репозиторії або будь-якому місці, доступному браузеру. Створіть тут повний захищений unit служби для агента:

ToolRun your agent as a hardened service

Після цього захистіть сам сервер. Налаштуйте SSH лише за ключами та обмежте обліковий запис, з якого ви адмініструєте сервер, як описано в матеріалі Захист SSH на VPS. Якщо під час розгортання ви хочете керувати агентом з інтерактивного сеансу, доповненням стане матеріал Запуск Claude Code на VPS з tmux. Коли на тому самому сервері відкрито другий сеанс, ці два сеанси можуть передавати роботу один одному, і вам не доведеться переносити кожну інструкцію з однієї панелі до іншої. Якщо вам потрібне пояснення всіх цих концепцій без прив’язки до конкретної моделі, у пов’язаному матеріалі створення власного AI-агента на VPS описано основи.

Якщо вам потрібен термінальний coding assistant, матеріал запуск coding AI-агента на VPS охоплює Aider і Goose.

FAQ

Яку модель Claude використовувати для створення агента?

Почніть із Claude Opus 5.5 (claude-opus-5-5), яку Anthropic рекомендує для більшості робочих навантажень, а потім за потреби змінюйте вибір. Claude Sonnet 5.5 (claude-sonnet-5-5) дешевша й швидша для більшості завдань, Claude Haiku 5.5 (claude-haiku-5-5) найкраще підходить для простих кроків у великому обсязі, а Claude Fable 5.1 (claude-fable-5-1) має найвищі можливості для найскладніших завдань. Поширений підхід — використовувати дешевшу модель для рутинних кроків, а потужнішу — для складних рішень, оскільки перемикання виконується зміною одного рядка.

Агент працює повністю на моєму VPS чи в Anthropic?

Це залежить від підходу. Якщо ви пишете власний цикл для роботи з Claude API або використовуєте Claude Agent SDK, агент повністю працює на вашому VPS, а до Anthropic надсилаються лише виклики моделі. Якщо ви використовуєте Managed Agents, Anthropic запускає цикл і за замовчуванням розміщує sandbox, у якому виконуються інструменти, тому на вашому сервері працює менша його частина. Варіант self-hosted sandbox, який станом на October 11, 2026 перебуває в beta, переносить виконання інструментів на вашу машину, тоді як цикл залишається в Anthropic. Якщо агент має повністю працювати на вашій машині, використовуйте один із перших двох варіантів.

У чому різниця між Claude API і Claude Agent SDK?

Claude API — це базовий Messages endpoint: ви надсилаєте діалог та інструменти й самостійно пишете цикл агента або використовуєте tool runner з SDK для його запуску. Claude Agent SDK — це бібліотека вищого рівня, Claude Code, упакований для створення власних рішень. Вона містить повний цикл і вбудовані інструменти для роботи з файлами, shell і пошуком. Використовуйте API, якщо хочете самостійно визначити всі компоненти, а Agent SDK — якщо потрібен функціональний агент без ручного складання його основи.

Як захистити ключ Claude API на сервері?

Зберігайте його на сервері окремо від коду. Розмістіть ключ у файлі, доступному для читання лише обліковому запису, від імені якого працює агент, завантажуйте його в сервіс як змінну середовища й ніколи не додавайте до репозиторію та не відкривайте для браузера. Оскільки кожен запит до Claude надходить із вашого сервера, ключу не потрібно потрапляти на пристрій користувача. Саме тому серверний агент простіше захистити, ніж агента, вбудованого в клієнтський застосунок.

Чи потрібно розміщувати модель на власному сервері для створення агента з Claude?

Ні. У випадку Claude модель є розміщеним сервісом, до якого ви звертаєтеся через API, тому запускати щось на GPU не потрібно. Ваш VPS запускає цикл агента, інструменти та працює з даними, а оброблення запитів відбувається на стороні Anthropic. Завдяки цьому навіть скромний сервер може запускати функціонального агента. Якщо замість цього потрібна повністю локальна модель, скористайтеся self-hosted підходом, описаним у супровідному посібнику зі створення власного AI-агента.