Сопутствующее приложение для macOS

Разрешения macOS

Предоставленные разрешения macOS хрупки. TCC связывает грант разрешения с подписью кода приложения, идентификатором пакета и путем на диске. Если что-либо из этого меняется, macOS рассматривает приложение как новое и может отозвать или скрыть запросы.

Требования для стабильных разрешений

  • Тот же путь: запускайте приложение из фиксированного расположения (для OpenClaw — dist/OpenClaw.app).
  • Тот же идентификатор пакета: изменение Bundle ID создает новую идентичность для разрешений.
  • Подписанное приложение: неподписанные или сборки с ad-hoc подписью не сохраняют разрешения.
  • Постоянная подпись: используйте настоящий сертификат Apple Development или Developer ID, чтобы подпись оставалась стабильной при пересборках.

Ad-hoc подписи генерируют новую идентичность при каждой сборке. macOS забудет предыдущие гранты, а запросы могут полностью исчезнуть, пока не будут очищены устаревшие записи.

Чек-лист восстановления при исчезновении запросов

  1. Закройте приложение.
  2. Удалите запись приложения в «Системные настройки» → «Конфиденциальность и безопасность».
  3. Перезапустите приложение из того же пути и предоставьте разрешения заново.
  4. Если запрос все еще не появляется, сбросьте записи TCC с помощью tccutil и попробуйте снова.
  5. Некоторые разрешения появляются снова только после полной перезагрузки macOS.

Примеры сброса (замените идентификатор пакета при необходимости):

sudo tccutil reset Accessibility ai.openclaw.mac
sudo tccutil reset ScreenCapture ai.openclaw.mac
sudo tccutil reset AppleEvents

Разрешения для файлов и папок (Рабочий стол/Документы/Загрузки)

macOS также может ограничивать доступ к Рабочему столу, Документам и Загрузкам для терминальных/фоновых процессов. Если чтение файлов или листинг каталогов зависают, предоставьте доступ тому же контексту процесса, который выполняет файловые операции (например, Terminal/iTerm, приложению, запущенному через LaunchAgent, или SSH-процессу). Обходной путь: переместите файлы в рабочее пространство OpenClaw (~/.openclaw/workspace), если хотите избежать предоставления разрешений для каждой папки. Если вы тестируете разрешения, всегда подписывайте настоящим сертификатом. Сборки с ad-hoc подписью допустимы только для быстрых локальных запусков, где разрешения не важны.

Логирование macOSУдаленное управление