axiom-ios-networking
iOS Networking Router
You MUST use this skill for ANY networking work including HTTP requests, WebSockets, TCP connections, or network debugging.
When to Use
Use this router when:
- Implementing network requests (URLSession)
- Using Network.framework or NetworkConnection
- Debugging connection failures
- Migrating from deprecated networking APIs
- Network performance issues
Pressure Resistance
When user has invested significant time in custom implementation:
Do NOT capitulate to sunk cost pressure. The correct approach is:
- Diagnose first — Understand what's actually failing before recommending changes
- Recommend correctly — If standard APIs (URLSession, Network.framework) would solve the problem, say so professionally
- Respect but don't enable — Acknowledge their work while providing honest technical guidance
Example pressure scenario:
"I spent 2 days on custom networking. Just help me fix it, don't tell me to use URLSession."
Correct response:
"Let me diagnose the cellular failure first. [After diagnosis] The issue is [X]. URLSession handles this automatically via [Y]. I recommend migrating the affected code path — it's 30 minutes vs continued debugging. Your existing work on [Z] can be preserved."
Why this matters: Users often can't see that migration is faster than continued debugging. Honest guidance serves them better than false comfort.
Routing Logic
Network Implementation
Networking patterns → /skill axiom-networking
- URLSession with structured concurrency
- Network.framework migration
- Modern networking patterns
- Deprecated API migration
Network.framework reference → /skill axiom-network-framework-ref
Legacy iOS 12-25 patterns → /skill axiom-networking-legacy
Migration guides → /skill axiom-networking-migration
- NWConnection (iOS 12-25)
- NetworkConnection (iOS 26+)
- TCP connections
- TLV framing
- Wi-Fi Aware
App Store Compliance
ATS / HTTP security → /skill axiom-networking-diag
- App Transport Security (ATS) configuration
- HTTP → HTTPS migration
- App Store rejection for insecure connections
- NSAllowsArbitraryLoads exceptions
Deprecated API rejection → Launch networking-auditor agent
- UIWebView → WKWebView migration
- SCNetworkReachability → NWPathMonitor
- CFSocket → Network.framework
Network Debugging
Connection issues → /skill axiom-networking-diag
- Connection timeouts
- TLS handshake failures
- Data not arriving
- Connection drops
- VPN/proxy problems
Automated Scanning
Networking audit → Launch networking-auditor agent or /axiom:audit networking (deprecated APIs like SCNetworkReachability, CFSocket, NSStream; anti-patterns like reachability checks, hardcoded IPs, missing error handling)
Decision Tree
- URLSession with structured concurrency? → networking
- Network.framework / NetworkConnection (iOS 26+)? → network-framework-ref
- NWConnection (iOS 12-25)? → networking-legacy
- Migrating from sockets/URLSession? → networking-migration
- Connection issues / debugging? → networking-diag
- ATS / HTTP / App Store rejection for networking? → networking-diag + networking-auditor
- UIWebView or deprecated API rejection? → networking-auditor (Agent)
- Want deprecated API / anti-pattern scan? → networking-auditor (Agent)
Anti-Rationalization
| Thought | Reality |
|---|---|
| "URLSession is simple, I don't need a skill" | URLSession with structured concurrency has async/cancellation patterns. networking skill covers them. |
| "I'll debug the connection timeout myself" | Connection failures have 8 causes (DNS, TLS, proxy, cellular). networking-diag diagnoses systematically. |
| "I just need a basic HTTP request" | Even basic requests need error handling, retry, and cancellation patterns. networking has them. |
| "My custom networking layer works fine" | Custom layers miss cellular/proxy edge cases. Standard APIs handle them automatically. |
Critical Patterns
Networking (networking):
- URLSession with structured concurrency
- Socket migration to Network.framework
- Deprecated API replacement
Network Framework Reference (network-framework-ref):
- NWConnection for iOS 12-25
- NetworkConnection for iOS 26+
- Connection lifecycle management
Networking Diagnostics (networking-diag):
- Connection timeout diagnosis
- TLS debugging
- Network stack inspection
Example Invocations
User: "My API request is failing with a timeout"
→ Invoke: /skill axiom-networking-diag
User: "How do I use URLSession with async/await?"
→ Invoke: /skill axiom-networking
User: "I need to implement a TCP connection"
→ Invoke: /skill axiom-network-framework-ref
User: "Should I use NWConnection or NetworkConnection?"
→ Invoke: /skill axiom-network-framework-ref
User: "My app was rejected for using HTTP connections"
→ Invoke: /skill axiom-networking-diag (ATS compliance)
User: "App Store says I'm using UIWebView"
→ Invoke: networking-auditor agent (deprecated API scan)
User: "Check my networking code for deprecated APIs"
→ Invoke: networking-auditor agent