axiom-accessibility
Use when fixing or auditing ANY accessibility issue — VoiceOver, Dynamic Type, color contrast, touch targets, WCAG compliance,…
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.
Claude Code
$ npx -y skills add charleswiltgen/axiom --skill axiom-data --agent claude-code
Codex
$ npx skills add charleswiltgen/axiom --skill axiom-data -a codex -y
Cursor
$ npx skills add charleswiltgen/axiom --skill axiom-data -a cursor -y
Gemini CLI
$ npx skills add charleswiltgen/axiom --skill axiom-data -a gemini-cli -y
GitHub Copilot
$ npx skills add charleswiltgen/axiom --skill axiom-data -a github-copilot -y
OpenCode
$ npx skills add charleswiltgen/axiom --skill axiom-data -a opencode -y
Windsurf
$ npx skills add charleswiltgen/axiom --skill axiom-data -a windsurf -y
name: axiom-data description: 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. license: MIT
**You MUST use this skill for ANY data persistence, database, storage, CloudKit, or serialization work.**
<!-- AXIOM_AUDITOR_INLINE_BEGIN — rewritten for Codex by scripts/build-codex.ts; do not hand-edit --> > **Auditors are skills here.** Where this router says "Launch `some-auditor` agent", invoke the > matching Codex skill instead — same procedure, no Claude Code agent required. > > Available: `axiom-audit-codable`, `axiom-audit-core-data`, `axiom-audit-database-schema`, `axiom-audit-grdb-performance`, `axiom-audit-icloud`, `axiom-audit-storage`, `axiom-audit-swiftdata`. > > The ones that shell out — builds, tests, simulators, crash symbolication — need shell access to run. <!-- AXIOM_AUDITOR_INLINE_END -->
Use this skill when working with:
| 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` |
**Core Data audit** → `axiom-audit-core-data` (safety violations, architectural gaps — migration options, thread-confinement, N+1 queries, merge policies, context isolation) **Codable audit** → `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** → `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** → `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** → `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** → `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** → `axiom-audit-swiftdata` (struct models, missing schema registration, array relationships without defaults, background context misuse, N+1 patterns, stale pre
Battle-tested skills, agents, and tools for modern Apple OS development — Swift 6, SwiftUI, Liquid Glass, Apple Intelligence, and more. Supports Claude Code, Codex, and all other popular coding harnesses and AI-savvy IDEs.
Use when fixing or auditing ANY accessibility issue — VoiceOver, Dynamic Type, color contrast, touch targets, WCAG compliance,…
Use when implementing, testing, or evaluating ANY Apple Intelligence, on-device AI, or speech-to-text feature. Covers Foundation…
Use when the user has a crash log (.ips, MetricKit JSON, legacy .crash text, .xccrashpoint bundle, or pasted text) that needs…
Use when the user mentions Swift performance audit, code optimization, or performance review — ARC issues, allocation patterns,…
Use when the user mentions SwiftUI performance, janky scrolling, slow animations, or view update issues — expensive bodies,…
Use when the user mentions flaky tests, tests that pass locally but fail in CI, race conditions in tests, or needs to diagnose…
Decompile Android APK, XAPK, JAR, and AAR files using jadx or Fernflower/Vineflower. Reverse engineer Android apps, extract HTTP…