Axiom Data
Use when working with ANY data persistence, database, storage, CloudKit, migration, or serialization in an Apple app. Covers SwiftData, Core Data, GRDB, SQLite, Realm, CloudKit sync, file storage, Codable, migrations.
- Skill ID
- charleswiltgen/axiom/axiom-data
- Publisher
- charleswiltgen
- Repository
- axiom
- Installs
- 0
- Files
- 32
- License
- MIT
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
charleswiltgen/axiom/axiom-dataInstalls these files- SKILL.md
- skills/cloud-sync-diag.md
- skills/cloud-sync.md
- skills/cloudkit-ref.md
- skills/codable-auditor.md
- skills/codable.md
- skills/core-data-auditor.md
- skills/core-data-diag.md
- skills/core-data.md
- skills/database-migration.md
- skills/database-schema-auditor.md
- skills/grdb-app-groups.md
- skills/grdb-performance-auditor.md
- skills/grdb-performance.md
- skills/grdb.md
- skills/icloud-auditor.md
- skills/icloud-drive-ref.md
- skills/realm-migration-ref.md
- skills/sql-json-ref.md
- skills/sqlite-fts-ref.md
- skills/sqlitedata-migration.md
- skills/sqlitedata-ref.md
- skills/sqlitedata.md
- skills/storage-auditor.md
- skills/storage-diag.md
- skills/storage-management-ref.md
- skills/storage.md
- skills/swift-sharing.md
- skills/swiftdata-auditor.md
- skills/swiftdata-migration-diag.md
- skills/swiftdata-migration.md
- skills/swiftdata.md
What this skill tells the agent
Data & Persistence
You MUST use this skill for ANY data persistence, database, storage, CloudKit, or serialization work.
<!-- AXIOM_AUDITOR_INLINE_BEGIN — auto-maintained by scripts/build-inlined-auditors.ts; do not hand-edit -->
Not on Claude Code? Where this router says "Launchsome-auditoragent", read that auditor's file in this suite and follow it inline — the same procedure, needing only file search and read. Available here:skills/codable-auditor.md,skills/core-data-auditor.md,skills/database-schema-auditor.md,skills/grdb-performance-auditor.md,skills/icloud-auditor.md,skills/storage-auditor.md,skills/swiftdata-auditor.md. Agents that need Bash — builds, tests, simulators, crash symbolication — stay Claude Code-only; there is no inline equivalent for those.
<!-- AXIOM_AUDITOR_INLINE_END -->
When to Use
Use this skill when working with:
- Databases (SwiftData, Core Data, GRDB, SQLiteData)
- Schema migrations
- CloudKit sync
- File storage (iCloud Drive, local storage)
- Data serialization (Codable, JSON)
- Storage strategy decisions
- Keychain / secure credential storage
- Encryption, signing, key management (CryptoKit)
Quick Reference
| Symptom / Task | Reference |
|---|---|
SwiftData @Model, @Query, ModelContext, sectioned queries / ResultsObserver / @Attribute(.codable) / dynamic compound predicates (OS27) | See skills/swiftdata.md |
| SwiftData schema migration, VersionedSchema | See skills/swiftdata-migration.md |
| SwiftData migration crashes, data loss | See skills/swiftdata-migration-diag.md |
| Migrating from Realm to SwiftData | See skills/realm-migration-ref.md |
| SwiftData vs SQLiteData decision | See skills/sqlitedata-migration.md |
| GRDB queries, upsert, ValueObservation, DatabaseMigrator, encryption | See skills/grdb.md |
| GRDB performance, indexes, EXPLAIN QUERY PLAN, cursors, observation not firing | See skills/grdb-performance.md |
| Full-text search (FTS5) in GRDB or SQLiteData | See skills/sqlite-fts-ref.md |
| Storing or querying JSON inside a SQLite column (JSON1, JSONB) | See skills/sql-json-ref.md |
| GRDB shared across app + widget/extension (App Group) | See skills/grdb-app-groups.md |
| SQLiteData @Table, CRUD, SyncEngine | See skills/sqlitedata.md |
| SQLiteData advanced patterns, CTEs, views | See skills/sqlitedata-ref.md |
@Shared / @SharedReader, appStorage or fileStorage persistence, custom SharedKey, isLoading / loadError on @FetchAll | See skills/swift-sharing.md |
| Core Data stack, relationships, concurrency | See skills/core-data.md |
| Core Data migration crashes, thread errors | See skills/core-data-diag.md |
| ANY schema migration safety | See skills/database-migration.md |
| Codable, JSON encoding/decoding | See skills/codable.md |
| Cloud sync architecture, offline-first | See skills/cloud-sync.md |
| CloudKit, CKSyncEngine, CKRecord | See skills/cloudkit-ref.md |
| iCloud Drive, ubiquitous containers | See skills/icloud-drive-ref.md |
| Cloud sync errors, conflict resolution | See skills/cloud-sync-diag.md |
| Storage strategy, where to store data | See skills/storage.md |
| Storage issues, files disappeared | See skills/storage-diag.md |
| Storage management, disk pressure | See skills/storage-management-ref.md |
| Keychain / secure credential storage | See axiom-security (skills/keychain.md) |
| Keychain errors (errSecDuplicateItem) | See axiom-security (skills/keychain-diag.md) |
| Keychain API reference | See axiom-security (skills/keychain-ref.md) |
| Encryption / signing / key management | See axiom-security (skills/cryptokit.md) |
| CryptoKit API reference | See axiom-security (skills/cryptokit-ref.md) |
| File protection, NSFileProtection | See axiom-security (skills/file-protection-ref.md) |
| tvOS data persistence (no guaranteed-persistent local storage) | See axiom-swift (skills/tvos.md) |
| tvOS + CloudKit SyncEngine | See skills/sqlitedata.md |
Automated Scanning
Core Data audit → Launch core-data-auditor agent or /axiom:audit core-data (safety violations, architectural gaps — migration options, thread-confinement, N+1 queries, merge policies, context isolation) Codable audit → Launch codable-auditor agent or /axiom:audit codable (safety violations, semantic gaps — try? swallowing errors, JSONSerialization, date handling, silent field drops, wrapper-hidden fallbacks, cross-file strategy drift, enum future-case crashes) iCloud audit → Launch icloud-auditor agent or /axiom:audit icloud (entitlement checks, file coordination, incomplete CKError matrix coverage, missing account-change observation, polling vs CKSubscriptions, SwiftData + CloudKit unsupported features, compound risks like uncoordinated I/O across extensions) Storage audit → Launch storage-auditor agent or /axiom:audit storage (wrong file locations, missing backup exclusions, sensitive data on disk vs Keychain, missing App Group containers, unbounded cache growth, orphan files, compound risks like user data in tmp/ + critical content) Database schema audit → Launch database-schema-auditor agent or /axiom:audit database-schema (unsafe ALTER TABLE, DROP operations, missing idempotency, FK constraints declared but not enforced, incomplete upgrade paths, compound risks like INSERT OR REPLACE on FK-referenced tables) GRDB performance audit → Launch grdb-performance-auditor agent or /axiom:audit grdb-performance (raw SQL string interpolation, missing FK indexes in raw SQL, missing PRAGMA optimize for raw-GRDB apps, journal mode mismatch for app-group DBs, missing observesSuspensionNotifications for shared DBs, prefix-redundant indexes in raw SQL, legacy Record subclass, INSERT OR REPLACE misused as upsert, observation on WITHOUT ROWID tables, WITHOUT ROWID upsert bugs) SwiftData audit → Launch swiftdata-auditor agent or /axiom:audit swiftdata (struct models, missing schema registration, array relationships without defaults, background context misuse, N+1 patterns, stale predicates, CloudKit conformance gaps, compound risks like struct model + array relationship)
Decision Tree
- SwiftData? →
skills/swiftdata.md,skills/swiftdata-migration.md - Core Data? →
skills/core-data.md,skills/core-data-diag.md - GRDB? →
skills/grdb.md
3a. GRDB perf, slow query, schema design for perf? → skills/grdb-performance.md 3b. FTS5 (full-text search, any layer)? → skills/sqlite-fts-ref.md 3c. DB shared across app + extension/widget/Live Activity? → skills/grdb-app-groups.md
- SQLiteData? →
skills/sqlitedata.md,skills/sqlitedata-ref.md
4a. @Shared/@SharedReader, or the loading/error state behind @FetchAll? → skills/swift-sharing.md
- ANY schema migration? →
skills/database-migration.md(ALWAYS — prevents data loss) - Realm migration? →
skills/realm-migration-ref.md - SwiftData vs SQLiteData? →
skills/sqlitedata-migration.md - Cloud sync architecture? →
skills/cloud-sync.md - CloudKit? →
skills/cloudkit-ref.md - iCloud Drive? →
skills/icloud-drive-ref.md - Cloud sync errors? →
skills/cloud-sync-diag.md - Codable/JSON serialization? →
skills/codable.md - File storage strategy? →
skills/storage.md,skills/storage-diag.md,skills/storage-management-ref.md - File protection? → See axiom-security (skills/file-protection-ref.md)
- Keychain / storing tokens, passwords, secrets securely? → See axiom-security (skills/keychain.md), See axiom-security (skills/keychain-diag.md), See axiom-security (skills/keychain-ref.md)
- SecItem errors (errSecDuplicateItem, errSecItemNotFound, errSecInteractionNotAllowed)? → See axiom-security (skills/keychain-diag.md)
- Encryption, signing, Secure Enclave, CryptoKit? → See axiom-security (skills/cryptokit.md), See axiom-security (skills/cryptokit-ref.md)
- Quantum-secure cryptography, HPKE, ML-KEM? → See axiom-security (skills/cryptokit.md)
More from charleswiltgen
Use this skill in a project
Open any RiverX project, search the Skills panel for charleswiltgen/axiom/axiom-data, and install it in one click.
