SSD Nodes Learn Hosting plans →
Посібники Matt ConnorВід Matt Connor · Оновлено 2026-08-28

Як створити 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, упакований як бібліотека, на основі якої можна створювати власні рішення. Він містить повний agent loop і вбудовані інструменти для читання та запису файлів, виконання shell-команд і пошуку. Тому не потрібно збирати ці компоненти з нуля. SDK також працює на вашому сервері. Це робить його зручним варіантом для VPS, якщо потрібен повнофункціональний agent для роботи з файлами та shell без самостійного створення harness. Agent, який читає файли та виконує shell-команди, потребує ізоляції до початку роботи без нагляду. У розділі безпечний запуск Claude Code на сервері описано систему дозволів, sandbox і варіанти ізоляції.

Третій спосіб — Managed Agents. У цьому варіанті Anthropic запускає agent loop і розміщує sandbox, у якому виконуються інструменти agent. Це варіант із мінімальним обсягом операційного обслуговування. Вам потрібно керувати значно меншою кількістю компонентів, але робоче середовище agent розташоване в інфраструктурі Anthropic, а не на вашому VPS. Обирайте цей варіант, якщо хочете мінімізувати операційні завдання і вам не потрібно запускати інструменти на власній машині. У двох інших варіантах agent працює на вашому сервері. Саме цьому присвячена решта посібника.

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

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

Вибір моделі

Claude доступний у кількох моделях, і вибір між ними є компромісом між можливостями, швидкістю та вартістю. На момент написання основними варіантами є Claude Opus 4.8 (claude-opus-4-8) — потужна модель за замовчуванням для складного міркування та тривалих агентських запусків; Claude Sonnet 5 (claude-sonnet-5) — збалансований варіант, який дешевший і швидший, але в багатьох завданнях майже не поступається Opus; і Claude Haiku 4.5 (claude-haiku-4-5) — найшвидша та найдешевша модель для простих кроків у великому обсязі. Вище за них розташована Claude Fable 5 (claude-fable-5) — найпотужніша модель для найскладніших завдань. У коді використовуйте точний ідентифікатор моделі, не додаючи до нього дату.

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

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

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

Найважливіше правило — зберігати ваш Claude API key на сервері. Цей ключ оплачує та авторизує кожен виклик. Тому він має зберігатися у файлі, доступному лише користувачу агента, завантажуватися до служби як змінна середовища та ніколи не міститися в коді, репозиторії або будь-якому місці, доступному з браузера. Згенеруйте тут повний захищений 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 4.8 (claude-opus-4-8) — це потужний варіант за замовчуванням, а потім скоригуйте вибір. Claude Sonnet 5 (claude-sonnet-5) дешевша та швидша для більшості завдань, Claude Haiku 4.5 (claude-haiku-4-5) найкраще підходить для простих кроків із великим обсягом, а Claude Fable 5 (claude-fable-5) є найпотужнішою для найскладніших завдань. Поширений підхід — використовувати дешевшу модель для типових кроків, а потужнішу — для складних рішень, оскільки перемикання виконується зміною одного рядка.

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

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

У чому різниця між 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-агента.