1. Почему Mac Mini подходит для OpenClaw?
Облачные VPS-провайдеры выставляют счета по времени использования и берут дополнительную плату за GPU для ИИ-инференса. Mac Mini M4 предоставляет выделенный Apple Silicon за фиксированные $75/мес — без неожиданных расходов, с полным SSH-доступом и возможностью запускать локальные LLM параллельно с OpenClaw.
| Параметр | Облачный VPS (ИИ-тариф) | Mac Mini M4 (MyRemoteMac) |
|---|---|---|
| Стоимость в месяц | $150–$400/мес (GPU VPS) | $75/мес (фиксированная) |
| Локальные LLM | Доплата / ограничено | Нативно (Ollama, llama.cpp) |
| Круглосуточная работа | Да | Да (SLA 99,9 %) |
| Интеграции Apple | Нет | iMessage, Shortcuts, Automator |
| Сложность настройки | Средняя | Низкая (SSH-доступ включён) |
| Конфиденциальность | Общий дата-центр | Выделенное оборудование |
Ключевое преимущество: В отличие от облачного VPS, Mac Mini M4 запускает Ollama или llama.cpp нативно на Apple Silicon. Можно направлять OpenClaw к локальной модели для конфиденциальных задач, а Claude использовать для сложных запросов — без оплаты за каждый токен.
2. Требования
Перед началом убедитесь, что у вас есть следующее:
- Сервер Mac Mini M4 от MyRemoteMac (от $75/мес)
- SSH-доступ к Mac Mini (предоставляется вместе с подпиской MyRemoteMac)
- Ключ API Anthropic (для Claude) — получить на console.anthropic.com
- Аккаунт в Telegram, Discord или WhatsApp для подключения агента
- Базовые навыки работы с терминалом и файлами конфигурации JSON
3. Шаг 1: Подключение к Mac Mini и установка Node.js
Сначала подключитесь к Mac Mini M4 по SSH. Учётные данные вы получили при настройке сервера MyRemoteMac.
Подключение по SSH
# Connect to your Mac Mini M4
ssh admin@your-server-ip
# Verify you're on Apple Silicon
uname -m
# Expected output: arm64
# Check macOS version
sw_vers
# ProductName: macOS
# ProductVersion: 15.4
Установка nvm (Node Version Manager)
# Install nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# Load nvm into the current session
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# Verify nvm is available
nvm --version
# 0.39.7
Установка Node.js LTS
Рекомендуем использовать nvm для управления версиями Node.js — это исключает проблемы с правами доступа и упрощает обновление:
# Install the latest LTS version of Node.js
nvm install --lts
# Set it as the default for new sessions
nvm alias default node
# Verify the installation
node --version
# v22.x.x
npm --version
# 10.x.x
Проверка установки
# Confirm Node.js is running on Apple Silicon
node -e "console.log(process.platform, process.arch)"
# darwin arm64
# Note the exact Node.js binary path (needed for launchd in Step 4)
which node
# /Users/admin/.nvm/versions/node/v22.14.0/bin/node
4. Шаг 2: Установка OpenClaw и настройка ключа Claude
После установки Node.js установите OpenClaw в отдельную директорию. OpenClaw распространяется как npm-пакет.
Установка OpenClaw
# Create a directory for your OpenClaw agent
mkdir -p ~/openclaw
cd ~/openclaw
# Initialize a Node.js project
npm init -y
# Install OpenClaw
npm install openclaw
# Create the logs directory
mkdir -p logs
Создание файла конфигурации
OpenClaw читает настройки из файла config.json. Создайте его в директории проекта:
# Create config.json in your project directory
cat > ~/openclaw/config.json << 'EOF'
{
"model": "claude-sonnet-4-6",
"apiKey": "sk-ant-YOUR_API_KEY_HERE",
"channels": {
"telegram": {
"enabled": true,
"token": "YOUR_TELEGRAM_BOT_TOKEN"
}
},
"maxHistory": 20,
"systemPrompt": "You are a helpful assistant. Be concise and accurate."
}
EOF
Замените sk-ant-YOUR_API_KEY_HERE на реальный ключ с console.anthropic.com. Используйте claude-sonnet-4-6 для сложных задач или claude-haiku-4-5 для более быстрых и дешёвых ответов.
Интерактивное тестирование агента
# Start OpenClaw in interactive mode to test it
cd ~/openclaw
npx openclaw start --config ./config.json
# Expected output:
# [OpenClaw] Agent initialized with model: claude-sonnet-4-6
# [OpenClaw] Telegram channel connected
# [OpenClaw] Listening for messages...
# Press Ctrl+C to stop (you will set up the persistent service in Step 4)
5. Шаг 3: Подключение каналов обмена сообщениями
OpenClaw поддерживает Telegram, Discord, WhatsApp, iMessage, Slack и Signal. Проще всего настроить Telegram — создайте бота через @BotFather:
# Step 1: Open Telegram and search for @BotFather
# Step 2: Send /newbot and follow the prompts
# Step 3: Copy the token (format: 1234567890:AAF...)
# Test your bot token is valid:
curl -s "https://api.telegram.org/botYOUR_TOKEN/getMe"
# {"ok":true,"result":{"id":...,"first_name":"My Agent","username":"myagent_bot",...}}
Подключение Discord
Для подключения Discord-бота создайте приложение на Портале разработчиков Discord и выдайте ему необходимые разрешения:
# In Discord Developer Portal (https://discord.com/developers/applications):
# 1. Create a New Application and give it a name
# 2. Go to Bot > Add Bot
# 3. Copy the Bot Token
# 4. Enable "Message Content Intent" under Privileged Gateway Intents
# 5. Under OAuth2 > URL Generator, select bot + Send Messages + Read Message History
# 6. Use the generated URL to invite the bot to your server
# Update your config.json to enable Discord:
# "discord": { "enabled": true, "token": "YOUR_DISCORD_BOT_TOKEN" }
6. Шаг 4: Запуск как постоянного сервиса launchd
Для круглосуточной работы OpenClaw должен запускаться автоматически при загрузке системы и перезапускаться при сбоях. В macOS для этого используется launchd — создайте plist-файл сервиса в ~/Library/LaunchAgents/.
Создание plist-файла launchd
Сохраните следующий файл как ~/openclaw/com.openclaw.agent.plist (замените admin на ваше реальное имя пользователя и скорректируйте путь к Node.js из Шага 1):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.openclaw.agent</string>
<key>ProgramArguments</key>
<array>
<string>/Users/admin/.nvm/versions/node/v22.14.0/bin/node</string>
<string>/Users/admin/openclaw/node_modules/.bin/openclaw</string>
<string>start</string>
<string>--config</string>
<string>/Users/admin/openclaw/config.json</string>
</array>
<key>WorkingDirectory</key>
<string>/Users/admin/openclaw</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>/Users/admin/openclaw/logs/openclaw.log</string>
<key>StandardErrorPath</key>
<string>/Users/admin/openclaw/logs/openclaw-error.log</string>
</dict>
</plist>
Активация и запуск сервиса
# Save the plist to the LaunchAgents directory
# (Use your actual username instead of "admin")
cp ~/openclaw/com.openclaw.agent.plist ~/Library/LaunchAgents/
# Load and start the service
launchctl load ~/Library/LaunchAgents/com.openclaw.agent.plist
launchctl start com.openclaw.agent
Проверка работы сервиса
# Check that the service is running
launchctl list | grep openclaw
# 12345 0 com.openclaw.agent
# (First column is the PID — a number means it's running)
# View live logs
tail -f ~/openclaw/logs/openclaw.log
# View error logs
tail -f ~/openclaw/logs/openclaw-error.log
Обновление OpenClaw (без простоев)
# Stop the service before updating
launchctl stop com.openclaw.agent
# Update OpenClaw to the latest version
cd ~/openclaw
npm update openclaw
# Restart the service
launchctl start com.openclaw.agent
# Confirm the new version is running
tail -5 ~/openclaw/logs/openclaw.log
7. Устранение распространённых проблем
Сервис не запускается: «Cannot find module»
Неверный абсолютный путь к Node.js в plist или отсутствуют npm-пакеты. Проверьте лог ошибок и переустановите:
# Check the error logs
cat ~/openclaw/logs/openclaw-error.log | tail -20
# Make sure to use the absolute Node.js binary path in the plist
which node
# /Users/admin/.nvm/versions/node/v22.14.0/bin/node
# Reinstall dependencies
cd ~/openclaw
npm install
API Claude возвращает 401 Unauthorized
Ключ API отсутствует, некорректен или на счёте Anthropic закончились кредиты. Проверьте ключ:
# Test your API key directly
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-haiku-4-5","max_tokens":10,"messages":[{"role":"user","content":"Hi"}]}'
# Expected: {"id":"msg_...","type":"message",...}
# If you get 401: check your key at console.anthropic.com
Telegram-бот перестал отвечать
Токен бота мог быть отозван или сервис завис. Проверьте токен и перезапустите сервис:
# Verify the bot token is still valid
curl -s "https://api.telegram.org/botYOUR_TOKEN/getMe"
# Restart the service
launchctl stop com.openclaw.agent
launchctl start com.openclaw.agent
# If the token was revoked, generate a new one via @BotFather (/mybots > API Token)
Высокое потребление памяти через несколько дней
OpenClaw накапливает историю разговоров в памяти. Уменьшите maxHistory в config.json и настройте еженедельный перезапуск:
# Reduce conversation history in config.json
# "maxHistory": 10 (default is 20 — lower values use less memory)
# Set up a weekly restart via cron
crontab -e
# Add this line to restart OpenClaw every Sunday at 3am:
# 0 3 * * 0 launchctl stop com.openclaw.agent; sleep 2; launchctl start com.openclaw.agent
# Monitor memory usage
ps aux | grep openclaw
8. Сравнение стоимости с облачным VPS
Реалистичное сравнение стоимости для круглосуточной работы ИИ-агента при разных уровнях нагрузки:
| Сценарий использования | Запросов к ИИ/мес | Стоимость VPS | Стоимость MyRemoteMac | Экономия в месяц |
|---|---|---|---|---|
| Личный помощник | ~500 запросов | $120/мес (базовый GPU VPS) | $75/мес | $45/мес |
| Бот для небольшой команды | ~5 000 запросов | $200/мес | $75/мес | $125/мес |
| Локальный LLM + агент | Без ограничений (локально) | $350+/мес (GPU VPS) | $75/мес | $275+/мес |
| Мультиагентная система | 10 000+ запросов | $600+/мес | $179/мес (M4 Pro) | $421+/мес |
Итог: Запуск OpenClaw на Mac Mini M4 значительно дешевле любого облачного ИИ-VPS. Вы также получаете нативный Apple Silicon для локальных LLM через Ollama — направляйте нечувствительные задачи к бесплатной локальной модели и экономьте ещё больше на расходах на API.
Похожие руководства
Запуск LLM на Mac Mini M4
Запускайте Ollama, llama.cpp и локальные языковые модели нативно на Apple Silicon для бесплатного ИИ-инференса.
Mac Mini как сервер ИИ и машинного обучения
Превратите Mac Mini в приватный ИИ-сервер для задач инференса и машинного обучения.
Разработка iOS без физического Mac
Создавайте, тестируйте и подписывайте iOS-приложения удалённо через облачный Mac Mini — без покупки оборудования.