# Swiftui Pro > Revisa exhaustivamente código SwiftUI en busca de buenas prácticas: APIs modernas, mantenibilidad y rendimiento, con hallazgos precisos y sin inventar problemas. Fuente: https://skillsagentes.com/skills/twostraws/swiftui-agent-skill/swiftui-pro Markdown: https://skillsagentes.com/skills/twostraws/swiftui-agent-skill/swiftui-pro.md Repositorio: https://github.com/twostraws/SwiftUI-Agent-Skill Autor: twostraws Licencia: MIT Actualizado: hace 4 meses Coste de contexto: 41 tok instalada, 1k tok al activarse, 9.4k tok con todos los archivos del bundle Bundle: 16 archivos, 37 KB Permisos que pide: ninguno declarado ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent claude-code # Cursor npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent cursor # Codex npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent codex # Gemini CLI npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent gemini # Windsurf npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent windsurf # Cline npx -y skills add twostraws/SwiftUI-Agent-Skill --skill swiftui-pro --agent cline ``` ## Qué hace - Revisa código Swift y SwiftUI contra 9 archivos de referencia: API moderna, vistas, datos, navegación, diseño, accesibilidad, rendimiento, Swift e higiene de código - Reporta cada hallazgo con archivo, línea, la regla violada y un fix de antes/después - Da por defecto iOS 26 y Swift 6.2 o posterior con concurrencia moderna, evitando UIKit salvo que se pida - Cierra con un resumen priorizado de los cambios más importantes primero ## Cuándo usarla - Se lee, escribe o revisa cualquier proyecto SwiftUI ## Cuándo no - El código no usa SwiftUI (proyectos puramente UIKit sin intención de migrar) ## Qué la activa - "Revisa este código SwiftUI" - "Audita mi vista de SwiftUI antes de hacer merge" ## Archivos - .claude-plugin/plugin.json — 378 B - SKILL.md — 4 KB - agents/openai.yaml — 330 B - assets/swiftui-pro-icon.png — 3 KB - assets/swiftui-pro-icon.svg — 1 KB - references/accessibility.md — 2 KB - references/api.md — 3 KB - references/data.md — 3 KB - references/design.md — 3 KB - references/hygiene.md — 1 KB - references/navigation.md — 1 KB - references/performance.md — 3 KB - references/swift.md — 4 KB - references/views.md — 3 KB - skills/swiftui-pro/SKILL.md — 4 KB - skills/swiftui-pro/references — 16 B ## SKILL.md Reproducido tal cual desde twostraws/SwiftUI-Agent-Skill bajo MIT. Esta sección es el documento original y está en inglés. Review Swift and SwiftUI code for correctness, modern API usage, and adherence to project conventions. Report only genuine problems - do not nitpick or invent issues. Review process: 1. Check for deprecated API using `references/api.md`. 1. Check that views, modifiers, and animations have been written optimally using `references/views.md`. 1. Validate that data flow is configured correctly using `references/data.md`. 1. Ensure navigation is updated and performant using `references/navigation.md`. 1. Ensure the code uses designs that are accessible and compliant with Apple’s Human Interface Guidelines using `references/design.md`. 1. Validate accessibility compliance including Dynamic Type, VoiceOver, and Reduce Motion using `references/accessibility.md`. 1. Ensure the code is able to run efficiently using `references/performance.md`. 1. Quick validation of Swift code using `references/swift.md`. 1. Final code hygiene check using `references/hygiene.md`. If doing a partial review, load only the relevant reference files. ## Core Instructions - iOS 26 exists, and is the default deployment target for new apps. - Target Swift 6.2 or later, using modern Swift concurrency. - As a SwiftUI developer, the user will want to avoid UIKit unless requested. - Do not introduce third-party frameworks without asking first. - Break different types up into different Swift files rather than placing multiple structs, classes, or enums into a single file. - Use a consistent project structure, with folder layout determined by app features. ## Output Format Organize findings by file. For each issue: 1. State the file and relevant line(s). 2. Name the rule being violated (e.g., "Use `foregroundStyle()` instead of `foregroundColor()`"). 3. Show a brief before/after code fix. Skip files with no issues. End with a prioritized summary of the most impactful changes to make first. Example output: ### ContentView.swift **Line 12: Use `foregroundStyle()` instead of `foregroundColor()`.** ```swift // Before Text("Hello").foregroundColor(.red) // After Text("Hello").foregroundStyle(.red) ``` **Line 24: Icon-only button is bad for VoiceOver - add a text label.** ```swift // Before Button(action: addUser) { Image(systemName: "plus") } // After Button("Add User", systemImage: "plus", action: addUser) ``` **Line 31: Avoid `Binding(get:set:)` in view body - use `@State` with `onChange()` instead.** ```swift // Before TextField("Username", text: Binding( get: { model.username }, set: { model.username = $0; model.save() } )) // After TextField("Username", text: $model.username) .onChange(of: model.username) { model.save() } ``` ### Summary 1. **Accessibility (high):** The add button on line 24 is invisible to VoiceOver. 2. **Deprecated API (medium):** `foregroundColor()` on line 12 should be `foregroundStyle()`. 3. **Data flow (medium):** The manual binding on line 31 is fragile and harder to maintain. End of example. ## References - `references/accessibility.md` - Dynamic Type, VoiceOver, Reduce Motion, and other accessibility requirements. - `references/api.md` - updating code for modern API, and the deprecated code it replaces. - `references/design.md` - guidance for building accessible apps that meet Apple’s Human Interface Guidelines. - `references/hygiene.md` - making code compile cleanly and be maintainable in the long term. - `references/navigation.md` - navigation using `NavigationStack`/`NavigationSplitView`, plus alerts, confirmation dialogs, and sheets. - `references/performance.md` - optimizing SwiftUI code for maximum performance. - `references/data.md` - data flow, shared state, and property wrappers. - `references/swift.md` - tips on writing modern Swift code, including using Swift Concurrency effectively. - `references/views.md` - view structure, composition, and animation. ## Dónde encaja - Categoría: [Herramientas para desarrolladores](https://skillsagentes.com/categorias/herramientas-desarrollo.md) — Skills que cambian cómo tu agente escribe, revisa y despliega código. - Creador: [twostraws](https://skillsagentes.com/creators/twostraws.md) — 1 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Skills relacionadas - [Domain Modeling](https://skillsagentes.com/skills/mattpocock/skills/domain-modeling.md): Construye y afila el modelo de dominio de un proyecto. Úsalo para fijar la terminología o un lenguaje ubicuo, registrar una decisión arquitectónica, o cuando otro skill necesita mantener el modelo. - [Rule Writing](https://skillsagentes.com/skills/millionco/react-doctor/rule-writing.md): Implementa reglas de React Doctor a partir de un contrato validado: reglas de oxlint, detección por sintaxis o control de flujo, tests adversariales, reutilización de utilidades del árbol sintáctico y actualización del registro de reglas. - [Argent Native Profiler](https://skillsagentes.com/skills/software-mansion/argent/argent-native-profiler.md): Perfilado nativo para detectar cuellos de botella de CPU, bloqueos de UI y problemas de memoria. En iOS usa xctrace y en Android usa Perfetto. Úsalo para diagnosticar problemas de rendimiento a nivel nativo. - [Argent React Native Profiler](https://skillsagentes.com/skills/software-mansion/argent/argent-react-native-profiler.md): Perfila una app React Native Hermes para medir rendimiento de re-renders y CPU con las herramientas profiler de argent: mide antes/después de un fix, detecta componentes lentos y genera un informe clasificado. - [Fuzz](https://skillsagentes.com/skills/millionco/react-doctor/fuzz.md): Somete a fuzzing las reglas de React Doctor con `@react-doctor/fuzz` para hallar crashes, lentitud, falsos positivos y diagnósticos sensibles a mutaciones. Se usa tras pasar los tests de la regla o al confirmarse un falso positivo nuevo. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)