Mac mini 8 ГБ OpenClaw: сжатие памяти, swap и Unified Memory (2026)
У вас базовый Mac mini (8 или 16 ГБ Unified Memory), и вы хотите OpenClaw как шлюз 24/7 с локальным ULM. На Apple Silicon важны сжатие памяти, swap на APFS и общий пул RAM для GPU, CPU и Neural Engine.
Почему 8 ГБ «забиты» с OpenClaw
| Слой | Типичный RSS (idle → нагрузка) | Примечания |
|---|---|---|
| macOS + WindowServer | 2,5–4 ГБ | Выше с GUI |
| Шлюз OpenClaw (Node) | 400 МБ–1,2 ГБ | Растёт с историей сессий |
| Каждый MCP stdio | 50–300 МБ | Filesystem + GitHub |
| Локальный 7B Q4 ULM | 4,5–6 ГБ | Доминирует на 8 ГБ |
| Сессия браузера | 500 МБ–2 ГБ | Скрытая нагрузка WebKit |
Определение:Unified Memory на Apple Silicon — GPU с весами модели и Node-шлюз делят одну физическую RAM.
Сначала установите OpenClaw на Mac mini.
Бюджет Unified Memory M1–M4
| Чип / RAM | OpenClaw + только облако | OpenClaw + малый ULM | Рекомендация |
|---|---|---|---|
| M1/M2 8 ГБ | ✓ шлюз + 1–2 MCP | ⚠ только 3B–4B | Облако в приоритете |
| M2/M3 16 ГБ | ✓ комфортно | ✓ 7B Q4 одна сессия | Оптимум для дома |
| M4 16 ГБ | ✓ + лёгкий браузер | ✓ 7B Q4 | maxConcurrentTasks: 2 |
| M4 24 ГБ+ | ✓ staging + prod | ✓ 7B–8B | локальный MLX |
Официально: технические характеристики Mac mini Apple.
Сценарий A — 8 ГБ (только облако)
maxConcurrentTasks: 1; ≥ 3 ГБ свободно перед MCP filesystem + GitHub.
Сценарий B — 16 ГБ + локальный ULM
Одна квантованная модель. См. лимиты параллелизма.
Мониторинг: пять столбцов
- Давление памяти
- Память приложений
- Сжато
- Использовано swap — на 8 ГБ > 2 ГБ
- Кэш файлов
memory_pressure
vm_stat | egrep 'Pages (free|active|inactive|speculative|wired|compressed|swap)'
sysctl hw.memsize
Swap и сжатие
Лимиты ресурсов — про процессы.
Конфигурация OpenClaw
gateway:
maxConcurrentTasks: 1 # 8 GB: start at 1; 16 GB: 2
taskTimeoutMs: 120000
agents:
maxParallelToolCalls: 2 # lower on 8 GB
mcp:
maxServers: 2 # filesystem + one optional
<key>EnvironmentVariables</key>
<dict>
<key>NODE_OPTIONS</key>
<string>--max-old-space-size=1024</string>
</dict>
Руководство из 7 шагов
Шаг 1 — Базовый снимок
vm_stat | head -12
Шаг 2 — Только шлюз
openclaw gateway start # or launchctl kickstart your plist label
Шаг 3 — MCP по одному
Шаг 4 — Параллелизм до ULM
Шаг 5 — Прогрев ULM
# Example: Ollama pull + run small model
ollama pull qwen2.5:3b-instruct-q4_K_M
ollama run qwen2.5:3b-instruct-q4_K_M "Reply OK"
Шаг 6 — Периодический лог
/usr/bin/logger -t openclaw-mem "$(memory_pressure 2>&1 | head -1)"
Шаг 7 — Пороги отката
Устранение неполадок
Симптом: OpenClaw «зависает», CPU низкий
Паттерн: Давление памяти красное, swap растёт, вентилятор тихий.
Исправление: Завершить браузерные MCP; перезапустить шлюз; снизить maxParallelToolCalls; проверить сиротские Node (pgrep -fl openclaw).
Симптом: локальный ULM был быстрым, затем в 10 раз медленнее
Паттерн: в vm_stat растут страницы Compressor.
Исправление: Пауза браузерных инструментов; выгрузить модель; на 8 ГБ в пик — только ULM или OpenClaw.
Симптом: JavaScript heap out of memory в логах
Паттерн: длинные чаты + большие выходы инструментов.
Исправление: сначала ужать лимиты вывода; обрезать JSONL-сессии; переменные plist — в статье о лимитах ресурсов.
Путь по объёму RAM
| Ваш RAM | Действия |
|---|---|
| 8 GB | Облачные API; maxConcurrentTasks: 1 |
| 16 GB | 7B Q4 + параллелизм 2 |
| 24 GB+ | Гибридный MLX |
FAQ
Читайте также: Гайд 2026: мощность AI-кодинга — Cursor vs Copilot vs Claude Code
Нужен headless-хост шлюза?
Выделенный Mac mini может круглосуточно держать OpenClaw как облачный шлюз, пока вы настраиваете память локально.