---
read_when:
    - Інтеграція застосунку mac із життєвим циклом gateway
summary: Життєвий цикл Gateway на macOS (launchd)
title: Життєвий цикл Gateway
x-i18n:
    generated_at: "2026-04-24T04:16:34Z"
    model: gpt-5.4
    provider: openai
    source_hash: a110d8f4384301987f7748cb9591f8899aa845fcf635035407a7aa401b132fc4
    source_path: platforms/mac/child-process.md
    workflow: 15
---

# Життєвий цикл Gateway на macOS

Застосунок macOS **типово керує Gateway через launchd** і не запускає
Gateway як дочірній процес. Спочатку він намагається підключитися до вже
запущеного Gateway на налаштованому порту; якщо жоден недоступний, він вмикає сервіс
launchd через зовнішній CLI `openclaw` (без вбудованого середовища виконання). Це дає
надійний автозапуск під час входу в систему та перезапуск після збоїв.

Режим дочірнього процесу (коли Gateway запускається безпосередньо застосунком)
сьогодні **не використовується**. Якщо вам потрібніше тісніше поєднання з UI,
запускайте Gateway вручну в терміналі.

## Типова поведінка (launchd)

- Застосунок встановлює LaunchAgent для кожного користувача з міткою `ai.openclaw.gateway`
  (або `ai.openclaw.<profile>` під час використання `--profile`/`OPENCLAW_PROFILE`; застарілий `com.openclaw.*` підтримується).
- Коли ввімкнено локальний режим, застосунок гарантує, що LaunchAgent завантажено, і
  за потреби запускає Gateway.
- Логи записуються в шлях логу gateway launchd (видимий у Debug Settings).

Поширені команди:

```bash
launchctl kickstart -k gui/$UID/ai.openclaw.gateway
launchctl bootout gui/$UID/ai.openclaw.gateway
```

Замініть мітку на `ai.openclaw.<profile>`, якщо запускаєте іменований профіль.

## Непідписані dev-збірки

`scripts/restart-mac.sh --no-sign` призначено для швидких локальних збірок, коли у вас немає
ключів підпису. Щоб launchd не вказував на непідписаний relay-бінарний файл, він:

- Записує `~/.openclaw/disable-launchagent`.

Підписані запуски `scripts/restart-mac.sh` очищають це перевизначення, якщо маркер
присутній. Щоб скинути вручну:

```bash
rm ~/.openclaw/disable-launchagent
```

## Режим лише підключення

Щоб змусити застосунок macOS **ніколи не встановлювати й не керувати launchd**, запустіть його з
`--attach-only` (або `--no-launchd`). Це встановлює `~/.openclaw/disable-launchagent`,
тому застосунок лише підключається до вже запущеного Gateway. Таку саму
поведінку можна перемкнути в Debug Settings.

## Віддалений режим

Віддалений режим ніколи не запускає локальний Gateway. Застосунок використовує SSH-тунель до
віддаленого хоста і підключається через цей тунель.

## Чому ми віддаємо перевагу launchd

- Автозапуск під час входу в систему.
- Вбудована семантика перезапуску/KeepAlive.
- Передбачувані логи й нагляд.

Якщо колись знову знадобиться справжній режим дочірнього процесу, його слід задокументувати як
окремий, явний режим лише для розробки.

## Пов’язане

- [Застосунок macOS](/uk/platforms/macos)
- [Runbook Gateway](/uk/gateway)
