---
read_when:
    - Увімкнення зведень HealthKit на вузлі iPhone
    - Виклик health.summary або усунення проблем із відсутніми метриками стану системи
    - Перевірка того, які дані про здоров’я можуть передаватися з iPhone
summary: Увімкнення та виклик захищених налаштуваннями приватності зведень HealthKit із вузла iPhone
title: Зведення HealthKit
x-i18n:
    generated_at: "2026-07-16T18:13:32Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 2f074c715ee1ef805ec953c301c03940e664c161f7f14c4388c83c64e222b557
    source_path: platforms/ios-healthkit.md
    workflow: 16
---

# Зведення HealthKit

OpenClaw може запитувати з підключеного Node iPhone доступне лише для читання зведення за поточний календарний день. iPhone обчислює агреговані дані на пристрої та повертає лише кількість кроків, тривалість сну, середню частоту серцевих скорочень у стані спокою, а також кількість і тривалість тренувань. Окремі зразки HealthKit, джерела, метадані, клінічні записи, фонове отримання даних і запис не підтримуються.

Цю функцію типово вимкнено. Для неї потрібні окрема згода на iPhone та авторизація на Gateway.

## Вимоги

- iPhone із застосунком OpenClaw для iOS, на якому HealthKit повідомляє, що дані про здоров’я доступні.
- Підключений і схвалений Node iPhone. Див. [налаштування застосунку для iOS](/uk/platforms/ios).
- Актуальний Gateway, який може підключитися до Node iPhone.
- Доступні для читання дані Health для всіх показників, які потрібно переглядати. Apple Watch може додавати дані до сховища Health на iPhone, але застосунок OpenClaw для watchOS не потрібен для зведень HealthKit.

## Увімкнення доступу

### 1. Авторизуйте команду Gateway

Додайте `health.summary` до наявного масиву `gateway.nodes.allowCommands` у
`openclaw.json`. Збережіть усі наявні команди:

```json5
{
  gateway: {
    nodes: {
      allowCommands: ["health.summary"],
    },
  },
}
```

`health.summary` класифікується як команда з високим рівнем доступу до приватних даних і ніколи не дозволяється типовими налаштуваннями платформи iOS. Запис у `gateway.nodes.denyCommands` має перевагу над записом дозволу. Див. [політику команд Node](/uk/nodes#command-policy).

### 2. Увімкніть поширення даних на iPhone

У застосунку для iOS:

1. Відкрийте **Settings -> Permissions -> Privacy & Access -> Health Summaries**.
2. Натисніть **Enable & Share Summaries**.
3. Прочитайте повідомлення про розкриття даних, а потім у вікні дозволів Apple виберіть категорії Health, які OpenClaw може читати.

Перемикач фіксує ваш явний вибір щодо поширення даних OpenClaw. Він не означає, що Apple надала доступ до кожної запитаної категорії.

Увімкнення зведень Health додає `health.summary` до оголошеного набору команд Node. Схваліть відповідне оновлення сполучення Node:

```bash
openclaw nodes pending
openclaw nodes approve <requestId>
```

Потім переконайтеся, що підключений iPhone надає фактичну команду `health.summary`:

```bash
openclaw nodes describe --node "<iPhone name>"
```

## Запит сьогоднішнього зведення

Підтримується лише `today`. Період охоплює час від місцевої опівночі до моменту запиту відповідно до поточного календаря й часового поясу iPhone.

```bash
openclaw nodes invoke \
  --node "<iPhone name>" \
  --command health.summary \
  --params '{"period":"today"}' \
  --json
```

Агенти можуть викликати ту саму команду за допомогою інструмента `nodes`:

```json
{
  "action": "invoke",
  "node": "<iPhone name>",
  "invokeCommand": "health.summary",
  "invokeParamsJson": "{\"period\":\"today\"}"
}
```

Корисне навантаження зведення містить:

| Поле                     | Значення                                      |
| ------------------------ | --------------------------------------------- |
| `period`                 | Завжди `today`                               |
| `startISO`               | Місцевий початок дня, закодований як момент часу ISO |
| `endISO`                 | Час запиту, закодований як момент часу ISO    |
| `timeZoneIdentifier`     | Ідентифікатор часового поясу iPhone           |
| `stepCount`              | Округлена сукупна кількість кроків            |
| `sleepDurationMinutes`   | Дедуплікований час сну, обмежений поточним днем |
| `restingHeartRateBpm`    | Середня частота серцевих скорочень у стані спокою |
| `workoutCount`           | Тренування, розпочаті сьогодні                |
| `workoutDurationMinutes` | Загальна тривалість цих тренувань             |

Поля показників необов’язкові й не додаються, якщо HealthKit не повертає доступного для читання значення. Стадії сну та джерела, що перекриваються, об’єднуються до обчислення тривалості, тому та сама хвилина не враховується двічі.

## Поведінка щодо приватності

- Агрегування відбувається на iPhone. Необроблені зразки не залишають пристрій.
- Запитані агреговані дані залишають iPhone через ваш Gateway. Коли їх запитує агент, вони надходять до налаштованого постачальника ШІ та можуть залишатися в історії чату. Прямий виклик із CLI повертає їх оператору CLI.
- OpenClaw запитує лише доступ для читання. Він не може додавати або змінювати дані Health.
- OpenClaw читає HealthKit лише під час виклику `health.summary`. Фонового отримання даних про здоров’я немає.
- HealthKit навмисно не повідомляє, чи було відмовлено в доступі для читання. Відсутність показника може означати відмову в доступі, відсутність відповідних зразків або недоступність типу даних. OpenClaw не може розрізнити ці випадки.
- Зведення призначене для особистого контексту здоров’я та фізичної форми, а не для діагностики чи медичних порад.

Щоб припинити поширення даних, поверніться до **Health Summaries** і натисніть **Disable**. Після цього iPhone видалить можливість Health і команду `health.summary` із набору команд свого Node. Також можна видалити `health.summary` з
`gateway.nodes.allowCommands`, щоб закрити доступ із боку Gateway.

## Усунення несправностей

### Команду не оголошено Node

Переконайтеся, що зведення Health увімкнено в застосунку для iOS, а iPhone підключено. Запустіть `openclaw nodes pending` і схваліть усі оновлення можливостей, а потім знову перевірте `openclaw nodes describe --node "<iPhone name>"`.

### Команда потребує явного погодження

Додайте `health.summary` до `gateway.nodes.allowCommands`. Також переконайтеся, що
`gateway.nodes.denyCommands` не містить цю команду; список заборон має перевагу.

### `HEALTH_ACCESS_DISABLED`

Перемикач поширення даних у застосунку вимкнено. Увімкніть **Health Summaries** у розділі
**Privacy & Access** на iPhone.

### Зведення отримано успішно, але показники відсутні

Відкрийте застосунок Health від Apple і переконайтеся, що дані за сьогодні існують. Перевірте доступ OpenClaw у налаштуваннях Health від Apple, але не вважайте порожній результат доказом відмови в доступі: HealthKit навмисно приховує цю відмінність.

### Запити давніших періодів завершуються помилкою

Команда приймає лише `{"period":"today"}`. Багатоденні та історичні зведення не підтримуються.

## Пов’язані матеріали

- [Застосунок для iOS](/uk/platforms/ios)
- [Nodes](/uk/nodes)
- [Довідник із конфігурації Gateway](/uk/gateway/configuration-reference#gateway)
- [Аудит безпеки](/uk/gateway/security)
