opened image

OpenClaw - Обзор инструмента и установка на сервер

Введение

 

Представьте, что вы зарабатываете деньги с помощью собственного инструмента, к которому почти не прикасаетесь. Для некоторых это уже не фантазия, а реальность: сегодня люди создают решения, автоматизируют рутинные задачи и получают реальный доход благодаря ИИ-агентам на базе OpenClaw, которые работают за них на сервере.

 

OpenClaw - Обзор инструмента и установка на сервер - 1

 

Один из самых известных публичных примеров — кейс разработчика Oliver Henry. Он использует агента OpenClaw для автоматизации маркетинга собственного мобильного приложения: агент самостоятельно генерирует контент для TikTok, отслеживает аналитику, связывает охваты с конверсиями и подстраивает контент-цикл под реальные продажи. По публичным упоминаниям, этот кейс связывают с 8 миллионами просмотров за неделю и примерно 670 долларами дохода в месяц.

 

OpenClaw — это open-source self-hosted AI-ассистент, который запускается локально на вашем ПК или на сервере и работает не как обычный чат-бот, а как агент, который может взаимодействовать с реальными сервисами и выполнять действия от вашего имени.

 

Сильная сторона этого инструмента в том, что это не просто очередное окно для общения с ИИ-моделью, а фактически доступный 24/7 помощник, который живет в вашей инфраструктуре и находится рядом с вашими инструментами. В сообществе чаще всего подчеркивают именно это: он может выполнять реальные задачи на машине, а не просто отвечать текстом. На X и Reddit его регулярно называют персональным агентом, ассистентом для компании или даже семейным ассистентом.

 

Кому он подойдет? Прежде всего технически подготовленным пользователям, которые хотят контролировать свои данные, среду запуска и набор интеграций. Это могут быть инженеры, основатели стартапов, соло-предприниматели, контент-команды или просто люди, которым нужен операционный помощник, а не только LLM для вопросов и ответов.

 

Реальные сценарии применения OpenClaw в сообществе повторяются довольно последовательно: от личного ассистента для рутины, который готовит утренние брифинги, помогает с календарем, почтой и напоминаниями, до операционного помощника для малого бизнеса или команды, который берет на себя часть коммуникации и внутренних процессов. Есть и «домашние» сценарии, где агент ведет списки покупок, бытовые задачи и работает через привычный семейный чат. И это лишь самые заметные примеры. На практике OpenClaw можно адаптировать под конкретно ваши задачи и процессы, получив инструмент, который действительно снимает с вас часть рутины.

 

Что нужно перед стартом

 

Для начала нужно выбрать место, где будет работать ваш агент. Самый удобный вариант для этого — облачный сервер. В этой статье мы рассмотрим запуск OpenClaw именно на сервере с Linux OS, конкретно — Ubuntu 22.04. Если ориентироваться на наименее рискованный сценарий, я рекомендую брать Ubuntu 24.04 LTS или Debian 12, поскольку именно эти системы фигурируют в официальных гайдах. Дешевые VPS сервера для развертывания на них OpenClaw вы можете подобрать здесь.

 

Теоретически OpenClaw может запуститься даже на сервере с 1 vCPU, 1 GB RAM и 25 GB SSD, но на практике я рекомендую сразу выбирать VPS, исходя не из минимального порога, а из того, как именно вы планируете использовать агента. Если вам нужен только очень базовый сценарий работы, можно начать с 1 GB RAM. 2 GB RAM — уже нормальный стартовый вариант. А если вы хотите более комфортную работу, где будут активные агентные сценарии, фоновые задачи или дополнительные инструменты, лучше смотреть в сторону 4 GB RAM. По диску стоит закладывать хотя бы 20–25 GB свободного пространства. К примеру, в статье используется сервер Standard Intel - его вы можете рассмотреть подробнее по этой ссылке.

 

Итак, у вас уже есть сервер. Первое, что я рекомендую сделать, — это добавить файл подкачки (swap file). Это важно, потому что агент в определенных сценариях может существенно нагружать оперативную память. Если памяти не хватит, Linux может задействовать механизм OOM killer, который просто начнет принудительно завершать процессы. В результате вы можете получить нестабильную работу OpenClaw, недоступность отдельных служб или даже временную недоступность самого сервера.

 

1. Проверяем, есть ли на сервере swap

free -h

Пример вывода:

               total        used        free      shared  buff/cache   available
Mem:           4.8Gi       210Mi       2.4Gi       4.0Mi       2.2Gi       4.3Gi
Swap:             0B          0B          0B

В этом примере мы видим, что swap на сервере отсутствует.

 

1.1 Проверяем свободное место на диске

df -h

Пример вывода:

Filesystem      Size  Used Avail Use% Mounted on
tmpfs           492M  1.1M  491M   1% /run
/dev/vda1        34G  2.5G   32G   8% /
tmpfs           2.4G     0  2.4G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/vda15      105M  6.1M   99M   6% /boot/efi
tmpfs           492M  4.0K  492M   1% /run/user/0

Здесь нас интересует колонка Mounted on, а именно раздел /, на котором расположен основной диск. В этом случае полный размер диска — 34 GB, из них доступно 32 GB. У вас это значение может отличаться в зависимости от тарифа VPS.

 

Теперь, когда мы знаем, сколько у нас свободного места, можем решить, какой размер swap file нам нужен. Чаще всего рекомендуют выделять объем, равный текущему размеру RAM, или в 2 раза больше, если хотите иметь больший запас.

 

1.2 Создаем файл подкачки

В этом примере я выделяю 5 GB:

sudo fallocate -l 5G /swapfile

1.3 Проверяем, что файл создался корректно

ls -lh /swapfile
-rw-r--r-- 1 root root 5.0G Apr  6 20:06 /swapfile

Файл создан, и его размер соответствует тому значению, которое мы задали.

 

1.4 Ограничиваем права доступа

Перед тем как активировать swap, нужно изменить права доступа к файлу, чтобы его мог читать только root:

sudo chmod 600 /swapfile

Проверяем:

ls -lh /swapfile
-rw------- 1 root root 5.0G Apr  6 20:06 /swapfile

1.5 Размечаем файл как swap

sudo mkswap /swapfile
Setting up swapspace version 1, size = 5 GiB (5368705024 bytes)
no label, UUID=d4803761-0dce-463b-8385-1d12524c132b

1.6 Активируем swap

sudo swapon /swapfile

Теперь проверим, что все действительно включилось:

sudo swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   5G   0B   -2

На этом этапе файл подкачки уже работает, но только до перезагрузки сервера. Сам файл никуда не исчезнет, однако система не будет автоматически использовать его после перезагрузки, если мы не добавим соответствующую запись в /etc/fstab.

 

1.7 Делаем swap постоянным

Одной командой создаем резервную копию файла fstab и добавляем специальную строку в оригинал файла:

sudo cp /etc/fstab /etc/fstab.bak && echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

После этого swap будет автоматически подключаться после каждой перезагрузки сервера.

 

2. Обновляем систему

Следующим шагом будет установка новых пакетов и обновление системы. Делаем это привычными командами:

apt update && apt upgrade -y

3. Устанавливаем базовый набор пакетов

Следующая команда устанавливает базовый набор пакетов, который часто нужен для нормальной работы установщика, Node.js, сборки зависимостей и базовой защиты сервера. ufw понадобится нам немного позже для настройки файрвола.

apt install -y curl wget git ca-certificates gnupg lsb-release build-essential unzip ufw

4. Устанавливаем Node.js 24

OpenClaw для Linux ориентируется на Node.js 24 как рекомендуемый runtime. Именно поэтому лучше сразу поставить актуальную версию Node.js, а не полагаться на устаревший пакет из стандартного репозитория.

curl -fsSL https://deb.nodesource.com/setup_24.x | bash -
apt install -y nodejs

5. Проверяем Node.js и npm

Если вы видите подобный вывод, среда для запуска OpenClaw готова:

node -v && npm -v
v24.14.1
11.11.0

6. Настраиваем SSH и файрвол

На этом этапе важно оставить серверу доступ по SSH, но не спешить открывать какие-либо порты OpenClaw наружу. Для VPS-сценария официальная рекомендация — не выставлять gateway агента в публичный интернет без необходимости, а держать его на loopback.

ufw allow OpenSSH
ufw enable
ufw status

7. Создаем отдельного пользователя под агента

Отдельный пользователь под агента — это правильный выбор с точки зрения безопасности. Но здесь важно понимать компромисс: если OpenClaw будет работать не от root, а от отдельного пользователя, это может сузить часть задач, которые агент сможет выполнять на хосте без дополнительной настройки прав доступа.

adduser openclaw
usermod -aG sudo openclaw

8. Переходим под пользователя openclaw

Далее желательно выполнять установку OpenClaw именно от этого пользователя, чтобы рабочие файлы, конфиг и прочее сразу создавались в правильном домашнем каталоге, а не смешивались с root-окружением. В сообществе OpenClaw подчеркивают, что это один из типичных способов избежать путаницы с конфигами и правами.

su - openclaw

9. Подготавливаем каталоги

Это не обязательное требование, но хорошая практика — еще до установки подготовить место для конфигов, состояния и рабочего пространства:

mkdir -p ~/.openclaw ~/.config/openclaw ~/openclaw-workspace

10. Нужен ли Docker

Хотя Docker также не является обязательным, он пригодится, если вы хотите иметь более изолированную среду или планируете использовать агента в браузерных задачах и sandbox-сценариях.

 

11. Добавляем GPG-ключ Docker

sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

11.1 Подключаем официальный Docker-репозиторий

После этого обновляем список пакетов:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

11.2 Устанавливаем Docker

Ставим основной комплект для работы с контейнерами — Docker Engine, CLI, containerd, Compose plugin:

sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

11.3 Добавляем пользователя в группу Docker

Чтобы он мог работать с контейнерами без sudo:

sudo usermod -aG docker $USER
newgrp docker

12. Финальная проверка сервера

На этом этапе мы должны понимать, какая версия Node.js установлена, есть ли Docker, под каким пользователем работаем и не открыли ли сервер лишними правилами в файрволе. Если здесь все в порядке — переходим к самому интересному.

node -v
v24.14.1
docker --version
Docker version 29.4.0
whoami
openclaw
sudo ufw status
Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

 

Установка OpenClaw

 

Рекомендуемый метод установки OpenClaw для Linux — использование официального скрипта, который сам определяет среду, при необходимости ставит Node.js, устанавливает CLI и запускает первичную настройку. Запускаем этот скрипт под пользователем, созданным специально для OpenClaw. Убедитесь, что работаете именно под тем пользователем, которого создали ранее:

su - openclaw
curl -fsSL https://openclaw.ai/install.sh | bash

Установка может занять несколько минут, после чего вы увидите соответствующий вывод в терминале:

 

OpenClaw - Обзор инструмента и установка на сервер - 2

 

Далее вы выбираете с помощью стрелок на клавиатуре варианты ответов, которые предлагает OpenClaw: на первый вопрос отвечаем Yes, после чего увидим вопрос, какой тип настройки использовать: Быстрый старт или Ручной. Без колебаний выбираем первый вариант. После этого вам будет предложено выбрать вашего агента. Важно: для полноценного использования этого инструмента вам заранее нужно получить API-ключ для вашей ИИ-модели, будь то Anthropic, Grok или другой провайдер, если этого требует OpenClaw во время настройки среды. В моем случае я использую модель OpenAI Codex.

 

После того как вы выбрали эту модель, в терминале будет предоставлена OAuth-ссылка. Используя ее, вам нужно войти в ваш актуальный аккаунт OpenAI: вставьте эту ссылку в браузер и пройдите аутентификацию, после чего получите редирект на ссылку вида:

http://localhost:1455/auth/callback?code=ac_....

Скопируйте ее и вставьте в терминал с сессией OpenClaw, затем нажмите Enter. Таким образом OpenClaw подключится к вашему аккаунту OpenAI и будет использовать модель Codex.

 

OpenClaw - Обзор инструмента и установка на сервер - 3

 

На следующем шаге Default model я выбираю стандартный вариант: Keep current (openai-codex/gpt-5.4), после чего получаю варианты канала связи с OpenClaw. Чтобы иметь доступ к агенту прямо с вашего устройства — это может быть ПК, телефон или что-то еще — можно выбрать Telegram Bot.

 

OpenClaw - Обзор инструмента и установка на сервер - 4

 

Для работы Telegram-бота вам нужно получить API-токен у официального бота @BotFather: перейдите в Telegram к этому боту, создайте своего бота и скопируйте токен.

 

Когда у вас есть API-токен для работы Telegram-бота, вы можете продолжить настройку в терминале: после выбора типа канала (Telegram) на вопрос How do you want to provide this Telegram bot token? нужно выбрать опцию Enter Telegram bot token, после чего вставить в терминал ваш API-токен.

 

OpenClaw - Обзор инструмента и установка на сервер - 5

 

Далее вам будет предложено выбрать провайдера поиска — эта настройка нужна для инструмента web_search в OpenClaw. То есть агент сможет искать информацию в интернете, когда ему нужно найти актуальные данные, источники, страницы и тому подобное. Отдельно в OpenClaw есть еще web_fetch для простого чтения страниц по URL, и он работает без этого шага. Что выбираем в нашем случае? Если хотите быстро завершить установку — выбирайте Skip for now. При необходимости позже сможете настроить это повторно через команду:

openclaw configure --section web

Учтите, что для некоторых поисковых провайдеров нужен API-ключ. Для первого запуска это часто самый чистый вариант, чтобы не застрять еще на одной интеграции.

 

Следующим сообщением OpenClaw спросит, нужно ли настроить skills сейчас: это пакеты инструкций и workflow-логики, которые учат агента, как именно выполнять определенные типы задач и когда использовать конкретные инструменты. То есть это операционные памятки для агента: как работать с GitHub, как делегировать кодирование, как пользоваться браузером, как оформлять документы, как работать с shell-инструментами и так далее.

 

OpenClaw - Обзор инструмента и установка на сервер - 6

 

На этом этапе OpenClaw уже предоставляет 5 навыков, которые можно использовать сразу; еще 38 навыков существуют, но для них нужны зависимости: браузер, GitHub CLI, Python, CLI-утилиты и прочее. Для первой установки я рекомендую выбирать Yes на этом шаге.

 

OpenClaw - Обзор инструмента и установка на сервер - 7

 

Далее OpenClaw предлагает доустановить зависимости для навыков — внешние CLI, интеграции и сервисы, без которых часть навыков работать не будет. При выборе установки зависимостей ориентируйтесь на ваши цели и сценарии, для которых будет использоваться OpenClaw. Можно также пропустить этот шаг, если ничего не хотите загружать: тогда выбирайте Skip for now. Чтобы выбрать один из вариантов, просто перемещайтесь стрелками между пунктами и нажимайте Space для отметки нужного. После того как выбрали — нажмите Enter. В будущем вы сможете при необходимости самостоятельно подтянуть нужные зависимости через команду:

openclaw skills install <skill-slug>

Или даже обновить все навыки:

openclaw skills update --all

 

OpenClaw - Обзор инструмента и установка на сервер - 8

 

Далее OpenClaw спросит, нужно ли добавить API-ключ для работы агента с различными сервисами вроде Google геопоиска, Notion для заметок и так далее. Если вам это пока не нужно — можете везде отвечать No.

 

OpenClaw - Обзор инструмента и установка на сервер - 9

 

Теперь OpenClaw предлагает включить небольшие автоматизации, которые запускаются внутри Gateway агента, когда происходит определенное событие. Они называются Hooks. Среди встроенных вариантов:

- boot-md запускает BOOT.md во время старта Gateway;
- bootstrap-extra-files добавляет в bootstrap дополнительные файлы;
- command-logger логирует все команды в ~/.openclaw/logs/commands.log;
- session-memory при /new или /reset сохраняет контекст сессии в <workspace>/memory/ в виде markdown-файлов.

 

Для старта можно выбрать session-memory, если вы хотите, чтобы агент лучше удерживал контекст между сессиями: так он берет последние 15 сообщений и сохраняет их в memory-файл в workspace. При желании можно также включить command-logger.

 

OpenClaw - Обзор инструмента и установка на сервер - 10

 

Поздравляю! Когда вы увидите соответствующее сообщение в терминале, это будет означать, что вы успешно установили и настроили OpenClaw.

 

OpenClaw - Обзор инструмента и установка на сервер - 11

 

Итак, установка завершена, а конфигурация записана в файл:

~/.openclaw/openclaw.json

Но обязательно проверьте терминал на наличие сообщения о Gateway: если он не был запущен автоматически, мы исправим это в следующем разделе:

 

OpenClaw - Обзор инструмента и установка на сервер - 12

 

Кроме того, после успешной установки агента вы можете проверить, работает ли команда openclaw в терминале. Если после ввода команды вы получаете ошибку command not found, значит нужно сделать еще один шаг. OpenClaw установился в /.npm-global/bin/ директорию, но этот каталог не добавлен в переменную окружения PATH для shell-сессий.

 

Если используете bash, добавьте в ~/.bashrc:

echo 'export PATH="/home/openclaw/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Если используете zsh:

echo 'export PATH="/home/openclaw/.npm-global/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

 

Создание службы для постоянной работы OpenClaw на сервере

 

OpenClaw имеет центральный долгоживущий процесс и WebSocket/HTTP-сервер, вокруг которого все работает. Речь идет о Gateway. Именно он:

- принимает подключения от Control UI, CLI, automation-клиентов и так далее;
- держит сессии, hooks, channels, plugins;
- слушает bind/port (в нашем случае это 127.0.0.1:18789);
- отдает веб-интерфейс и веб-сокеты для управления агентом.

 

Проще говоря, без него не будет активного dashboard, живой сессии, обработки команд, hooks и каналов. Запустить его можно в терминале командой openclaw gateway run, но это будет временно, так как после закрытия терминала процесс остановится.

 

Если у вас была ошибка с запуском Gateway, можно поднять его как системный сервис. Для VPS это зачастую лучше, так как он нормально переживает перезагрузку сервера, проще администрируется через команды systemctl status/start/stop/restart и запускается как обычный системный сервис.


1. Узнаем, где лежит бинарный файл openclaw

which openclaw

В моем случае это:

/home/openclaw/.npm-global/bin/openclaw

2. Создаем systemd unit одной командой

OPENCLAW_BIN="$(which openclaw)" && sudo bash -c "cat > /etc/systemd/system/openclaw-gateway.service <<EOF
[Unit]
Description=OpenClaw Gateway
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=openclaw
Group=openclaw
WorkingDirectory=/home/openclaw
Environment=HOME=/home/openclaw
Environment=OPENCLAW_HOME=/home/openclaw
Environment=OPENCLAW_STATE_DIR=/home/openclaw/.openclaw
Environment=OPENCLAW_CONFIG_PATH=/home/openclaw/.openclaw/openclaw.json
Environment=NODE_ENV=production
ExecStart=${OPENCLAW_BIN} gateway run
Restart=always
RestartSec=2
TimeoutStartSec=90
TimeoutStopSec=30
SuccessExitStatus=0 143
KillMode=control-group
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=full
ProtectHome=false

[Install]
WantedBy=multi-user.target
EOF"

Эта команда создает системный сервис, который будет запускать Gateway от пользователя openclaw, но под управлением системного systemd. Здесь важны несколько вещей:

- User=openclaw — запуск не от root;
- WorkingDirectory=/home/openclaw — правильный домашний каталог для работы агента;
- ExecStart=${OPENCLAW_BIN} gateway run — именно в этой команде подставляется актуальная директория, которую вы увидели в первом шаге и запускается процесс Gateway для работы агента. 

 

3. Перечитываем конфигурацию systemd

Чтобы применить наш конфиг для службы, нужно перечитать файлы systemd:

sudo systemctl daemon-reload

4. Включаем автозапуск и сразу запускаем Gateway

sudo systemctl enable --now openclaw-gateway.service

Эта команда добавляет сервис в автозапуск после перезагрузки сервера и запускает его прямо сейчас.

 

5. Проверяем статус службы

sudo systemctl status openclaw-gateway.service

Если нужно перезапустить службу:

sudo systemctl restart openclaw-gateway.service

Для отладки полезно знать, как посмотреть логи OpenClaw (значение n 100 - последние сто строк):

sudo journalctl -u openclaw-gateway.service -n 100 --no-pager