Como Impedir que Redes Neurais Gerem Código SwiftUI Desatualizado
Se você já tentou gerar layouts para iOS com LLMs modernos como Claude ou modelos no Cursor, provavelmente notou algumas peculiaridades. O modelo gera com confiança uma tela que parece funcionar, o compilador não reclama, mas por baixo existe um zoológico de APIs desatualizadas. Por exemplo, NavigationView, que a Apple arquivou há alguns anos, ou soluções caseiras para animações onde modificadores nativos já existem há muito tempo.
As coisas ficam piores com o VoiceOver. Os assistentes adoram empilhar camadas de gestos personalizados, quebrando completamente a acessibilidade para usuários cegos.
Paul Hudson, autor do projeto Hacking with Swift, resolveu esse problema de forma sistemática. Ele criou o repositório twostraws/SwiftUI-Agent-Skill, que ensina aos assistentes os hábitos certos em UI declarativa.
O que é o SwiftUI Pro
Essencialmente, é uma habilidade especializada no padrão aberto Agent Skills. O formato é suportado por Claude Code, Codex, Gemini, Cursor e extensões do Xcode.
Em vez de lembrar infinitamente no prompt do sistema "não use sintaxe descontinuada," você conecta um banco de regras pronto ao agente. A habilidade é baseada no trabalho de Hudson no projeto AGENTS.md e foca especificamente nas armadilhas que os modelos de linguagem grandes mais frequentemente tropeçam.
O que está dentro dessa base de conhecimento:
- Cobertura de vinculação de estado e navegação atual;
- Regras para otimizar redesenho de views;
- Verificações de acessibilidade para controles VoiceOver;
- Um catálogo de métodos parcialmente descontinuados que o compilador ainda aceita, mas que não deveriam mais ser escritos dessa forma.
O autor tem habilidades similares para outras partes da plataforma: SwiftData Pro, Swift Concurrency Pro e Swift Testing Pro.
Como Instalar a Habilidade em Suas Ferramentas
A configuração leva menos de um minuto via npx:
npx skills add https://github.com/twostraws/swiftui-agent-skill --skill swiftui-pro
O comando perguntará se você quer ativar a habilidade globalmente para todos os projetos ou vinculá-la apenas ao repositório atual.
Se você está trabalhando no Claude Code, pode usar o gerenciador de plugins integrado:
/plugin marketplace add twostraws/SwiftUI-Agent-Skill
/plugin install swiftui-pro@swiftui-agent-skill
Para usuários do Xcode, o autor gravou um vídeo separado cobrindo a integração no fluxo de trabalho de desenvolvimento. Se preferir, você pode simplesmente clonar o repositório e usar as regras localmente.
Como Executar as Verificações
Após a instalação, a habilidade é ativada via comandos ou linguagem natural. No Claude Code, basta digitar:
/swiftui-pro
O assistente Codex responde a uma construção similar:
$swiftui-pro
Você pode fornecer contexto aos comandos imediatamente para que o agente não desperdice tempo e tokens em uma auditoria completa do arquivo. Por exemplo:
/swiftui-pro Check for deprecated API
Ou com um prompt regular: "Use a habilidade SwiftUI Pro e encontre problemas de desempenho neste módulo."
Economia de Tokens e Foco no Não-Óbvio
Um detalhe interessante na filosofia do projeto: o autor controla rigorosamente o tamanho das instruções. Coisas básicas que os modelos já sabem sem necessidade de estímulo (como sintaxe de VStack ou o modificador .padding()) são intencionalmente não incluídas. Cada linha de contexto consome limites da janela de contexto, então as regras contêm apenas pontos sutis, casos extremos e armadilhas de renderização não óbvias.
Se você quiser enviar um pull request com sua própria regra, tenha em mente duas condições: brevidade máxima na redação e licença MIT.
Quem Vai Encontrar Este Repositório Útil
Se você desenvolve para iOS ou macOS e usa ativamente agentes de IA diretamente no editor, definitivamente vale a pena instalar. Isso evita que você precise limpar código legado gerado por redes neurais e já direciona a geração de interfaces para os padrões modernos do Swift.
Comece instalando via npx em um projeto pessoal pequeno e peça ao agente para revisar uma tela com animações. A diferença nos diffs sugeridos será visível imediatamente.
Projetos relacionados

