# cloudkit

Помогает настроить синхронизацию данных в iOS и macOS через CloudKit, SwiftData и CKSyncEngine, а также разрешать конфликты синхронизации.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 3300 установок · ★ 1237
- Автор: dpearson2699
- Лицензия: LicenseRef-Unknown · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/dpearson2699/swift-ios-skills/tree/HEAD/skills/cloudkit/SKILL.md
- Обновлён: 2026-07-31
- HTML: https://affpapa.org/nevibecode/skills/cloudkit

## Что делает

Скилл даёт шаблоны и алгоритмы для связки CloudKit с кодом на Swift. Он разбирает структуру контейнера с базами данных `publicCloudDatabase`, `privateCloudDatabase` и операции над записями `CKRecord`. Описаны правила создания кастомных зон записей для приватных баз и обработка очередей без холостого опроса сервера.

Для поиска данных скилл предписывает использовать предикаты `NSPredicate`, но учитывает ограничения шифрования: зашифрованные поля нельзя сортировать или фильтровать в `CKQuery`. Отдельный блок охватывает фоновые подписки `CKSubscription` и движок `CKSyncEngine` для iOS 17+.

Ограничение размера одной записи `CKRecord` составляет 1 МБ без учёта файлов `CKAsset`. При сбоях скилл запрещает запускать полную повторную синхронизацию вслепую, требуя вместо этого разбирать конкретный код ошибки `CKError`.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill cloudkit -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/cloudkit/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/cloudkit/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill cloudkit -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/cloudkit/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill cloudkit -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/cloudkit/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install dpearson2699/swift-ios-skills cloudkit
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/cloudkit/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill cloudkit -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/dpearson2699/swift-ios-skills --path skills/cloudkit
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/cloudkit/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill cloudkit -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/dpearson2699/swift-ios-skills/tree/HEAD/skills/cloudkit/SKILL.md

## Когда брать
- настроить синхронизацию моделей SwiftData с базой CloudKit
- реализовать обработку кодов ошибок CKError и сетевых сбоев
- составить предикаты для выборки записей через CKQuery
- сконфигурировать подписки CKSubscription для фоновых push-уведомлений
- внедрить CKSyncEngine для пакетного обновления данных в iOS 17+

## Примеры запросов агенту
- Напиши сохранение и обновление модели в custom zone через CKRecord
- Помоги настроить CKSyncEngine для обработки изменений и разрешения конфликтов
- Как правильно обработать ошибки CKError при сохранении пакета записей?

## Похожие
- [core-data-expert](https://affpapa.org/nevibecode/skills/core-data-expert.md) — скилл · 2500 установок
- [guide-swiftdata](https://affpapa.org/nevibecode/skills/guide-swiftdata.md) — скилл · 435 установок
- [clerk-swift](https://affpapa.org/nevibecode/skills/clerk-swift.md) — скилл · 14500 установок
- [cmux-architecture](https://affpapa.org/nevibecode/skills/cmux-architecture.md) — скилл · 4900 установок
- [swiftui-patterns](https://affpapa.org/nevibecode/skills/affaan-m-swiftui-patterns.md) — скилл · 4600 установок
- [swift-expert](https://affpapa.org/nevibecode/skills/swift-expert.md) — скилл · 4100 установок

Из того же набора: [dpearson2699/swift-ios-skills](https://affpapa.org/nevibecode/by/dpearson2699/swift-ios-skills.md) — 69 карточек

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
