AI agents validate, audit, and improve iOS apps. Developers use these agents to automate code reviews, identify bugs, and optimize performance. Integrates with Xcode and GitHub workflows.
git clone https://github.com/gygantskiyMatilyock/ios-developer-agents.gitiOS Developer Agents automate validation of your iOS apps against Apple's Review Guidelines, OWASP Mobile Top 10 2024 security standards, and accessibility compliance (WCAG 2.2, VoiceOver, Dynamic Type). The skill includes three specialized agents: App Store Validator catches rejections before submission, Security Auditor identifies vulnerabilities and best practice violations, and Accessibility Validator ensures compliance with Apple HIG and modern accessibility standards. Designed for iOS developers and teams, it integrates seamlessly with Claude Code, Cursor, and Claude.ai Projects—no external dependencies required. Set up takes minutes by copying configuration files to your project, enabling automated code review workflows in your development environment.
1. **Prepare Your Environment**: Ensure your iOS project is in a Git repository (GitHub/GitLab) or provide direct file paths. Have Xcode installed (version 14+ recommended). 2. **Run the Agent**: Paste the prompt template into your AI tool (Claude/ChatGPT) and replace [PLACEHOLDERS] with your project details. For GitHub repos, use the repository URL; for local files, provide the file path. 3. **Focus the Review**: Specify your priorities (e.g., memory leaks, performance bottlenecks) to avoid generic output. Use terms like "SwiftUI" or "Combine" if your project uses those frameworks. 4. **Integrate with CI/CD**: Use the agent’s output to generate GitHub Actions or Fastlane scripts. For example, add a step to run the agent as a pre-commit hook to block critical issues. 5. **Iterate**: Run the agent after major changes (e.g., new features, dependency updates). Use the prioritized list to address high-risk issues first. Tip: Save the agent’s output as a markdown file in your repo (e.g., `code-review-<timestamp>.md`) for tracking.
Pre-validate iOS apps against Apple Review Guidelines to reduce App Store rejections
Audit Swift code and configurations for OWASP Mobile Top 10 security vulnerabilities
Check accessibility compliance with WCAG 2.2, VoiceOver, and Dynamic Type support
Integrate automated app validation into team PR workflows and development processes
No install command available. Check the GitHub repository for manual installation instructions.
git clone https://github.com/gygantskiyMatilyock/ios-developer-agentsCopy the install command above and run it in your terminal.
Launch Claude Code, Cursor, or your preferred AI coding agent.
Use the prompt template or examples below to test the skill.
Adapt the skill to your specific use case and workflow.
Act as an iOS development agent. Review the Swift codebase for [PROJECT_NAME] in [REPOSITORY_URL] or [FILE_PATH]. Focus on: [1] Identifying potential memory leaks or retain cycles, [2] Checking for thread-safety issues in [SPECIFIC_MODULE], [3] Suggesting optimizations for [PERFORMANCE_BOTTLENECK], and [4] Ensuring compliance with [CODING_STANDARD]. Provide a prioritized list of issues with suggested fixes and code snippets. Include a summary of the most critical risks to address first.
### iOS Code Review Report for *WeatherApp* (v2.4.1)
**Critical Issues (Fix Immediately)**
1. **Memory Leak in `LocationManager`**
- *Issue*: The `CLLocationManager` delegate is not being deallocated due to a strong reference cycle in the `WeatherViewController`.
- *Evidence*: Instruments shows a 12MB memory growth after 5 location updates.
- *Fix*:
```swift
class WeatherViewController: UIViewController {
private weak var locationManager: CLLocationManager! // Changed to weak
}
```
- *Impact*: Could cause crashes on older devices after prolonged use.
2. **Thread-Safety Violation in `DataCache`**
- *Issue*: The `cachedWeatherData` dictionary is accessed from multiple threads without synchronization.
- *Evidence*: Crash logs show `EXC_BAD_ACCESS` in `viewDidLoad()`.
- *Fix*:
```swift
private let cacheQueue = DispatchQueue(label: "com.weatherapp.cache", attributes: .concurrent)
func save(data: WeatherData) {
cacheQueue.async(flags: .barrier) { [weak self] in
self?.cachedWeatherData[data.id] = data
}
}
```
**Performance Optimizations**
1. **Image Loading Bottleneck**
- *Issue*: `UIImage(named:)` is called synchronously in `tableView(_:cellForRowAt:)`, causing UI stutter.
- *Fix*: Use `DispatchQueue.global().async` with a placeholder image.
- *Result*: Measured improvement: 40% faster scroll performance.
2. **Unnecessary Core Data Saves**
- *Issue*: The app saves context after every minor UI update (e.g., `viewWillDisappear`).
- *Fix*: Batch saves every 5 seconds using `NSManagedObjectContext.perform` with a debounce.
**Compliance Notes**
- ✅ Follows Swift API Design Guidelines (no force-unwrapping in production code).
- ⚠️ Violation: `UserDefaults` used for sensitive data (should use `Keychain`).
- 🔧 Suggestion: Add `swiftlint` to CI pipeline to enforce style rules.
**Top 3 Risks to Address**
1. Memory leak in `LocationManager` (high crash risk).
2. Thread-safety issues in `DataCache` (data corruption possible).
3. Sensitive data stored in `UserDefaults` (security risk).
**Next Steps**
- Prioritize memory leak fixes for the next hotfix release.
- Add unit tests for `DataCache` thread safety.
- Schedule a security review for data storage practices.
---
*Generated by iOS Development Agent | Xcode 15.2 | Swift 5.9*Cloud ETL platform for non-technical data integration
IronCalc is a spreadsheet engine and ecosystem
Get more done every day with Microsoft Teams – powered by AI
Customer feedback management made simple
Complete help desk solution for growing teams
The AI automation platform built for everyone
Take a free 3-minute scan and get personalized AI skill recommendations.
Take free scan