>_ DevTrendsit

Lingua

Home

Linguaggi

Sezioni

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Sicurezza
Unknown

Come impedire alle reti neurali di generare codice SwiftUI obsoleto

SwiftUI Pro - Agent Skill for Claude Code, Codex, and Gemini

Designed for iOS 26 and later. Designed for Swift 6.2 and later. Twitter: @twostraws

Se hai provato a generare layout iOS con LLM moderni come Claude o modelli in Cursor, probabilmente hai notato alcune stranezze. Il modello produce con sicurezza una schermata che sembra funzionare, il compilatore non si lamenta, ma sotto c'è uno zoo di API obsolete. Per esempio, NavigationView, che Apple ha archiviato un paio di anni fa, o workaround fatti in casa per animazioni dove esistono da tempo modificatori integrati.

Le cose sono peggiori con VoiceOver. Gli assistenti amano aggiungere strati di gesti personalizzati, rompendo completamente l'accessibilità per gli utenti non vedenti.

Paul Hudson, l'autore del progetto Hacking with Swift, ha risolto questo problema sistematicamente. Ha creato il repository twostraws/SwiftUI-Agent-Skill, che insegna agli assistenti le giuste abitudini nell'UI dichiarativa.

Cos'è SwiftUI Pro

Fondamentalmente, è uno skill specializzato nello standard aperto Agent Skills. Il formato è supportato da Claude Code, Codex, Gemini, Cursor e estensioni Xcode.

Invece di ricordare continuamente nel prompt di sistema "non usare sintassi deprecata," colleghi un database di regole pronto all'uso all'agente. Lo skill si basa sul lavoro di Hudson dal progetto AGENTS.md e si concentra specificamente sulle insidie che i modelli linguistici di grandi dimensioni incontrano più spesso.

Cosa contiene questa base di conoscenze:

  • Copertura dell'attuale navigazione e binding dello stato;
  • Regole per ottimizzare i ridisegni delle view;
  • Controlli di accessibilità per i controlli VoiceOver;
  • Un catalogo di metodi soft-deprecati che il compilatore accetta ancora, ma che non dovrebbero più essere scritti in quel modo.

L'autore ha skill simili per altre parti della piattaforma: SwiftData Pro, Swift Concurrency Pro e Swift Testing Pro.

Come installare lo skill nei tuoi strumenti

L'installazione richiede meno di un minuto tramite npx:

npx skills add https://github.com/twostraws/swiftui-agent-skill --skill swiftui-pro

Il comando chiederà se vuoi attivare lo skill globalmente per tutti i progetti o associarlo solo al repository corrente.

Se stai lavorando in Claude Code, puoi usare il gestore di plugin integrato:

/plugin marketplace add twostraws/SwiftUI-Agent-Skill
/plugin install swiftui-pro@swiftui-agent-skill

Per gli utenti Xcode, l'autore ha registrato un video separato che copre l'integrazione nel flusso di lavoro di sviluppo. Se preferisci, puoi semplicemente clonare il repository e usare le regole localmente.

Come eseguire i controlli

Dopo l'installazione, lo skill viene attivato tramite comandi o linguaggio naturale. In Claude Code, basta digitare:

/swiftui-pro

Il Codex assistant risponde a un costrutto simile:

$swiftui-pro

Puoi fornire contesto ai comandi immediatamente così l'agente non perde tempo e token su un audit completo del file. Per esempio:

/swiftui-pro Check for deprecated API

O con un prompt regolare: "Usa lo skill SwiftUI Pro e trova problemi di performance in questo modulo."

Risparmio di token e focus sul non ovvio

Un dettaglio interessante nella filosofia del progetto: l'autore controlla rigorosamente la dimensione delle istruzioni. Le cose basiche che i modelli già conoscono senza sollecitazione (come la sintassi VStack o il modificatore .padding()) sono intenzionalmente non incluse. Ogni riga di contesto consuma limiti del contesto, quindi le regole contengono solo punti sottili, casi limite e insidie di rendering non ovvie.

Se vuoi inviare una pull request con la tua regola, tieni a mente due condizioni: massima brevità nel formulare e licenza MIT.

Hacking with Swift+ logo

 

Hacking with Swift logo
A Hacking with Swift Project

Chi troverà utile questo repository

Se sviluppi per iOS o macOS e utilizzi attivamente agenti AI direttamente nell'editor, è sicuramente consigliabile installarlo. Ti risparmia la fatica di ripulire codice legacy generato da reti neurali e orienta immediatamente la generazione dell'interfaccia verso standard Swift moderni.

Inizia installando tramite npx in un piccolo progetto personale e chiedi all'agente di rivedere una schermata con animazioni. La differenza nei diff suggeriti sarà visibile immediatamente.

Progetti correlati