core-data — скилл для Claude Code: Core Data без SwiftData
Скилл для работы с Core Data в приложениях, которые ещё не перешли на SwiftData: стэк, конкурентность, пакетные операции и миграции.
npx skills add dpearson2699/swift-ios-skills --skill core-data -a claude-codeЧто делает core-data
Скилл объясняет, как собрать стэк на NSPersistentContainer и не наступить на очереди контекстов. Внутри разобраны правила: обращаться к контексту только через perform, передавать между потоками NSManagedObjectID вместо самого объекта, включить слияние изменений в viewContext.
Отдельные разделы — про NSFetchedResultsController для списков на UITableView и UICollectionView, пакетные вставки и удаления, отслеживание истории изменений и поэтапные миграции схемы. Список типичных ошибок и чек-лист для ревью прилагаются. У NSFetchedResultsController запрос обязан иметь хотя бы один дескриптор сортировки, иначе выборка не поедет.
Скилл написан под Swift и Core Data: без знания NSManagedObject и NSFetchRequest читать его смысла мало. Для связки Core Data со SwiftData автор отсылает к соседнему скиллу swiftdata.
Какие задачи решает
- Собрать Core Data-стэк без гонок между контекстами
- Завести
NSFetchedResultsControllerдля списка с автообновлением - Провести пакетную вставку или удаление без загрузки объектов в память
- Настроить отслеживание истории изменений для нескольких целей
- Разложить миграцию схемы на этапы
Примеры запросов агенту
- Собери Core Data-стэк на
NSPersistentContainerс фоновым контекстом для записи - Проверь мой
NSFetchedResultsController— список не обновляется после сохранения - Перепиши импорт на пакетную вставку через
NSBatchInsertRequest
Как установить core-data
1Через Skills CLI (Vercel)
npx skills add dpearson2699/swift-ios-skills --skill core-data -a claude-code2Вручную: положить файлы
~/.claude/skills/core-data/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/core-data/
1Через Skills CLI (Vercel)
npx skills add dpearson2699/swift-ios-skills --skill core-data -a codex2Вручную: положить файлы
.agents/skills/core-data/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add dpearson2699/swift-ios-skills --skill core-data -a cursor2Вручную: положить файлы
.cursor/skills/core-data/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install dpearson2699/swift-ios-skills core-data2Вручную: положить файлы
.github/skills/core-data/SKILL.md1Через Skills CLI (Vercel)
npx skills add dpearson2699/swift-ios-skills --skill core-data -a gemini-cli2Командой платформы
gemini skills install https://github.com/dpearson2699/swift-ios-skills --path skills/core-dataВручную: положить файлы
.devin/skills/core-data/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add dpearson2699/swift-ios-skills --skill core-data -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о core-data
Как установить core-data в Claude Code?
Выполните npx skills add dpearson2699/swift-ios-skills --skill core-data -a claude-code. После этого файл скилла лежит по пути ~/.claude/skills/core-data/SKILL.md.
Что делает core-data?
Помогает писать и проверять код персистентности на Core Data: стэк, конкурентность, пакетные операции, история изменений, миграции и тесты.
Чем core-data отличается от скилла swiftdata?
core-data рассчитан на приложения, которые ещё не перешли на SwiftData. Совмещение Core Data и SwiftData или миграцию между ними автор относит к скиллу swiftdata.