Skills · Claude Code · Agent Skills

Swift sin force-unwrap, sin data races y sin secretos en el bundle — sin negociación.

Piso de lenguaje para el cliente Apple: concurrencia estructurada con strict concurrency, ARC sin ciclos de retención, error tipado y Keychain. El piso de app (IAM, offline, tiendas) es de schematize-mobile, que manda.

v0.4.0Disciplina · Swift/Applegithub.com/schematizeme/skill-swift

Mantenido por Lucas Andrade

schematize-swift · v0.4.0bash
$ schematize install swift
GitHub →descargar skill (.zip)/swift-help · github.com/schematizeme/schematize-cli

Pisos innegociables

Nunca se desactivan "para ir más rápido". La lista completa está en la skill.

Force-unwrap es un fatalError diferido

try! y as! están vetados en producción; ! solo con invariante real, y entonces precondition con mensaje.

Concurrencia estructurada

async/await, nada de DispatchSemaphore para esperar async, y strict concurrency (modo Swift 6) activado en el código nuevo.

MainActor solo en UI y cancelación cooperativa

@MainActor solo en lo que toca la UI, y las operaciones largas revisan Task.isCancelled.

Un ciclo de retención es una fuga

[weak self] en lo que sobrevive a la pantalla, delegate weak, y unowned solo si el dueño vive más seguro.

El error es un valor tipado

catch vacío está vetado y fatalError queda para invariantes de programación, nunca para I/O, red o datos del usuario.

Secretos en Keychain, build fijado

Secreto nunca en el bundle ni en UserDefaults, NSAllowsArbitraryLoads vetado; Package.resolved commiteado y warnings como error en CI.

Comandos

Instalados en .claude/commands/. Ejecuta /swift-help cuando quieras.

/swift-ccContext compact: guarda el handoff (contexto + checklist) en el archive y ejecuta /compact.
/swift-claudeCrea o fusiona el CLAUDE.md siempre activo de schematize-swift en la raíz del repo, sin sobrescribir bloques de otras skills.
/swift-handoffGenera el handoff de contexto en el archive sin compactar: fin de sesión o cambio de tarea.
/swift-helpLista todos los comandos de la skill.
/swift-loadCarga a la fuerza todo el cuerpo normativo de schematize-swift y lo aplica en la sesión.
/swift-reviewRevisa .swift contra el piso: ejecuta el gate y lee lo que la máquina no lee.

Para agentes de IA

Instala sin humano en el bucle. Metadatos en llms.txt.

  • Ejecuta: git clone https://github.com/schematizeme/skill-swift.git && ./skill-swift/install.sh
  • O descarga https://github.com/schematizeme/skill-swift/releases/latest/download/skill-swift.zip y descomprime en .claude/skills/.
  • Copia assets/CLAUDE.md a la raíz del repo (regla siempre activa).
  • Confirma con /swift-help.

¿No quieres instalar?

Lee las normas completas y cópialas directo a tu proyecto — o instala la skill para que el agente las aplique solo.