Как создать AI-агента на Claude и запустить на VPS
Узнайте, как настроить Claude в качестве ядра логики для вашего AI-агента. Руководство по интеграции Messages API, инструментов и MCP для управления задачами на VPS.
Что означает создание агента с использованием Claude
Создание агента с использованием Claude означает, что Claude выступает в роли ядра логического вывода, в то время как цикл выполнения, инструменты и данные находятся на вашем собственном сервере. Claude принимает решение о дальнейших действиях, а ваш VPS их исполняет. Вы отправляете Claude задачу и текущее состояние, Claude отвечает либо готовым результатом, либо запросом на использование одного из ваших инструментов. Ваш код запускает инструмент и возвращает результат обратно, и этот цикл продолжается до завершения задачи. Интеллектуальные возможности — это сервис, к которому вы обращаетесь через интернет. Всё остальное находится под вашим полным контролем.
Именно это разделение и является преимуществом. Вы получаете возможности логического вывода передового уровня без необходимости эксплуатировать модель самостоятельно, при этом сохраняя полный контроль над тем, к чему агент имеет доступ, так как инструменты работают на вашем оборудовании. Если вы уже создали свою первую программу для Claude, то руководство по первому приложению на Claude на VPS содержит базовые сведения, на которых строится данный материал.
Claude — это «мозг»: Messages API
Все вызовы Claude проходят через один endpoint — Messages API. Вы отправляете историю текущего диалога и список инструментов, которые агент может использовать; Claude возвращает следующее сообщение. Это сообщение является либо окончательным ответом, либо запросом на вызов инструмента. При самостоятельной разработке отдельного «API агента» не существует: использование инструментов является функцией этого единственного endpoint, а цикл обработки запросов вы реализуете самостоятельно.
Claude не сохраняет состояние между вызовами, поэтому он ничего не помнит самостоятельно. Каждый запрос содержит всю историю диалога. Ваш код хранит эту историю и отправляет её на каждом шаге, что и является причиной, по которой каждый следующий шаг в длинной сессии потребляет больше токенов, чем предыдущий. Это не столько ограничение, сколько архитектурное решение: поскольку состояние хранится на вашем сервере, вы сами решаете, что именно видит Claude, и никакие данные о задаче не сохраняются там, где вы не имеете полного контроля. Это означает, что промпт постоянно увеличивается. Хотя контекстное окно Claude легко справляется с этим, локальная модель в аналогичном цикле — нет, поэтому для Ollama необходимо увеличить num_ctx, чтобы она не обрезала длинные промпты.
Использование инструментов — это цикл работы агента
Цикл работы агента с Claude описывается просто. Вы отправляете запрос, который включает ваши инструменты. Claude считывает задачу и, если требуется действие, отвечает запросом на использование инструмента, указывая его имя и заполняя входные данные. Ваш код выполняет этот инструмент, а затем отправляет результат обратно в Claude в следующем запросе. Claude считывает результат и либо запрашивает другой инструмент, либо формирует окончательный ответ. Когда запросы на использование инструментов прекращаются, задача считается выполненной.
Вы можете написать этот цикл вручную в несколько строк, и многие так и делают, поскольку его легко отслеживать и контролировать. Официальные SDK также предоставляют исполнитель инструментов (tool runner), который управляет циклом за вас: вы предоставляете функции инструментов, а SDK берет на себя обмен данными — вызовы Claude, запуск инструментов и передачу результатов обратно до тех пор, пока Claude не завершит работу. В любом случае структура остается прежней. Исполнитель просто избавляет вас от необходимости писать цикл самостоятельно. Если цикл все еще кажется абстрактным, лучше всего написать минимальную его реализацию, прежде чем переходить к использованию готового исполнителя. Это тот шаг, на котором строится все остальное в этом пошаговом руководстве по изучению AI-агентов с нуля.
Три способа создания агентов и их применимость для VPS
Существует три способа создания агента Claude, которые различаются объемом инфраструктуры, которую вы обслуживаете самостоятельно.
Первый способ — написание собственного кода, который обращается к Claude API с использованием ваших инструментов. Вы самостоятельно пишете цикл обработки или используете встроенный в SDK механизм запуска инструментов, размещая всё это на своем VPS. Это наиболее распространенный выбор, так как он дает полный контроль над инструментами, данными и безопасностью, а программа работает на сервере как обычный процесс. Большая часть этого руководства посвящена именно этому пути.
Второй способ — использование Claude Agent SDK. Это Claude Code, агент для написания кода, оформленный в виде библиотеки, на основе которой можно строить свои решения. Он включает в себя готовый цикл работы агента и встроенные инструменты для чтения и записи файлов, выполнения shell-команд и поиска, поэтому вам не нужно собирать их с нуля. Он также работает на вашем сервере, что делает его отличным выбором для VPS, если вам нужен функциональный агент для работы с файлами и shell без необходимости самостоятельно создавать инфраструктуру. Агент, который читает файлы и выполняет shell-команды, требует изоляции перед тем, как оставить его работать без присмотра, и в разделе безопасный запуск Claude Code на сервере рассматриваются система прав доступа, песочница и варианты изоляции.
Третий способ — управляемые агенты (Managed Agents), где цикл работы агента выполняет Anthropic. По умолчанию инструменты агента исполняются в песочнице, которую предоставляет Anthropic, поэтому рабочее пространство агента находится в инфраструктуре Anthropic, а не на вашем VPS. По состоянию на 11 октября 2026 года доступен вариант с self-hosted песочницей (на стадии бета-тестирования), который позволяет рабочему процессу на вашем сервере выполнять вызовы инструментов, в то время как цикл управления остается на стороне Anthropic. Выбирайте управляемых агентов, если хотите минимизировать эксплуатационные расходы и вам не требуется, чтобы сам цикл работы агента выполнялся на вашей машине. В двух других случаях ваш сервер является местом размещения всего агента, чему и посвящена остальная часть этого руководства.
Подключение инструментов с помощью MCP
Какой бы путь вы ни выбрали, вам потребуется подключить агента к реальным системам, и Model Context Protocol — это удобный способ сделать это. MCP представляет собой открытый стандарт для предоставления агенту доступа к инструментам и данным. Вместо того чтобы вручную писать интеграцию для каждого сервиса, вы указываете Claude на MCP-сервер, который уже предоставляет эти возможности в виде инструментов. Вы можете запускать MCP-серверы как небольшие службы на том же VPS, каждая из которых имеет только необходимые ей права доступа, что я рассматриваю в запуске MCP-серверов на VPS.
Выбор модели
Claude представлен несколькими моделями, и выбор конкретной версии — это поиск баланса между функциональностью, скоростью и стоимостью. По состоянию на 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, по-прежнему доступны, но теперь классифицируются как устаревшие. Используйте в коде точный идентификатор модели без добавления даты.
Практичный подход заключается в их комбинировании. Поручите более дешевой модели выполнение рутинных вызовов инструментов, а более мощной — принятие сложных решений. Поскольку модель задается простой строкой в запросе, переключение выполняется изменением одной строки кода. Начните с производительной модели по умолчанию и оптимизируйте выбор в сторону более простых вариантов там, где скорость или стоимость важнее максимального качества.
Запуск в качестве защищенного сервиса на VPS
Агент полезен только тогда, когда он работает, и безопасен только тогда, когда он изолирован. На VPS оба этих условия выполняются при запуске агента в качестве защищенного системного сервиса, а не программы, запущенной вручную в терминале. В виде сервиса он запускается при загрузке, перезапускается при сбоях и записывает логи в journal. В защищенном режиме он работает от имени непривилегированного пользователя с минимально необходимыми правами, поэтому последствия ошибки или вредоносной инструкции ограничены. Юнит сервиса может ограничивать доступ процесса к ресурсам, а также использование памяти, CPU и количество задач, но он не может контролировать логику действий агента. Остальные аспекты безопасности зависят от самого окружения агента, что обеспечивается с помощью плагинов DeepSeek Harness, которые стоит установить, работающих на другом уровне: лимиты расходов, правила разрешений для инструментов и сканирование на предмет prompt injection.
Самое важное правило — хранить API key для Claude только на стороне сервера. Этот ключ оплачивает и авторизует каждый запрос, поэтому он должен находиться в файле, доступном для чтения только пользователю агента, загружаться в сервис как переменная окружения и никогда не помещаться в код, репозиторий или любое место, доступное через браузер. Сгенерируйте готовый защищенный юнит сервиса для вашего агента здесь:
Затем завершите настройку самого сервера. Оставьте доступ по SSH только по ключам и ограничьте учетную запись, с которой вы работаете, как описано в укреплении безопасности SSH на VPS. Если вы предпочитаете управлять агентом из интерактивной сессии во время его настройки, запуск Claude Code на VPS с использованием tmux станет хорошим решением. Как только у вас будет открыта вторая сессия на той же машине, они смогут передавать работу друг другу, вместо того чтобы переносить каждую инструкцию из одной панели в другую вручную. Если же вас интересуют концепции, лежащие в основе всего этого, без привязки к конкретной модели, в руководстве создание собственного AI-агента на VPS изложены базовые принципы.
Если вам нужен терминальный помощник для программирования, в статье запуск 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, и по умолчанию она же предоставляет песочницу для выполнения инструментов, поэтому на вашем сервере работает меньше компонентов. Опция self-hosted sandbox, находящаяся в бета-версии на 11 октября 2026 года, переносит выполнение инструментов на вашу машину, в то время как цикл остается на стороне Anthropic. Для агента, который должен работать полностью на вашем оборудовании, используйте один из первых двух вариантов.
В чем разница между Claude API и Claude Agent SDK?
Claude API — это базовый endpoint Messages: вы отправляете историю диалога и инструменты, а цикл работы агента пишете самостоятельно или используете для этого инструмент запуска (tool runner) из SDK. Claude Agent SDK — это библиотека более высокого уровня, Claude Code, адаптированная для разработки, которая включает готовый цикл работы и встроенные инструменты для работы с файлами, оболочкой (shell) и поиском. Используйте API, если хотите полностью контролировать процесс, и Agent SDK, если вам нужен функциональный агент без необходимости самостоятельно собирать всю инфраструктуру.
Как обеспечить безопасность Claude API key на сервере?
Храните ключ на стороне сервера и не включайте его в код. Сохраните его в файле, доступном для чтения только той учетной записи, от имени которой работает агент, загружайте его в сервис как переменную окружения и никогда не добавляйте в репозиторий и не передавайте в браузер. Поскольку каждый запрос к Claude идет с вашего сервера, ключ не должен попадать на устройство пользователя, что делает серверного агента более защищенным по сравнению с агентом, встроенным в клиентское приложение.
Нужно ли самостоятельно хостить модель для создания агента на базе Claude?
Нет. В случае с Claude модель является облачным сервисом, к которому вы обращаетесь через API, поэтому на GPU ничего запускать не нужно. Ваш VPS выполняет цикл работы агента, инструменты и обработку данных, а логические вычисления происходят на стороне Anthropic. Именно это позволяет даже скромному серверу запускать мощного агента. Если же вы хотите использовать полностью локальную модель, это путь self-hosted, который описан в сопутствующем руководстве по созданию собственного AI-агента.