Networking
You MUST use this skill for ANY networking work including HTTP requests, WebSockets, TCP connections, or network debugging.
<!-- AXIOM_AUDITOR_INLINE_BEGIN — rewritten for Codex by scripts/build-codex.ts; do not hand-edit --><!-- AXIOM_AUDITOR_INLINE_END -->Auditors are skills here. Where this router says "Launch
some-auditoragent", invoke the matching Codex skill instead — same procedure, no Claude Code agent required.Available:
axiom-audit-networking.The ones that shell out — builds, tests, simulators, crash symbolication — need shell access to run.
Quick Reference
Decision Tree
- URLSession with structured concurrency? →
skills/networking-discipline.md - Network.framework / NetworkConnection (iOS 26+)? →
skills/network-framework-ref.md - NWConnection (iOS 12-18)? →
skills/networking-legacy.md - Migrating from sockets/URLSession? →
skills/networking-migration.md - Connection issues / debugging? →
skills/networking-diag.md - Typed RPC / streaming against a service you control? → gRPC Swift (
skills/networking-discipline.md) - ATS / HTTP / App Store rejection for networking? →
skills/networking-diag.md+ networking-auditor - Certificate pinning, signing API requests, encrypting payloads? →
/skill axiom-security - UIWebView or deprecated API rejection? → networking-auditor (Agent)
- Want deprecated API / anti-pattern scan? → networking-auditor (Agent)
Platform-specific networking
- watchOS low-level-networking limits (TN3135) → See axiom-watchos (skills/background-and-networking.md)
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
Critical Patterns
Networking (skills/networking-discipline.md):
- URLSession with structured concurrency
- 8 red-flag anti-patterns (SCNetworkReachability, blocking sockets, hardcoded IPs)
- Decision tree for choosing TCP/UDP/TLS patterns
- NetworkConnection patterns (iOS 26+): TLS, UDP, TLV framing, Coder protocol
- 3 pressure scenarios with professional push-back templates
- Pre-shipping checklist
Network Framework Reference (skills/network-framework-ref.md):
- NetworkConnection (iOS 26+): all 12 WWDC 2025 examples
- NWConnection (iOS 12-18): complete API with examples
- TLV framing, Coder protocol, NetworkListener, NetworkBrowser
- Mobility: viability, better path, Multipath TCP, NWPathMonitor
- Security: TLS, certificate pinning, cipher suites
- Performance: user-space networking, ECN, service class, TCP Fast Open
Diagnostics (skills/networking-diag.md):
- Systematic decision tree for all connection failure types
- DNS failures, TLS certificate validation, message framing
- TCP congestion, IPv6-only cellular, VPN interference, ATS
- Production crisis scenario with professional communication templates
Legacy (skills/networking-legacy.md):
- NWConnection with TLS (completion handlers)
- UDP batch (30% CPU reduction)
- NWListener, NWBrowser (Bonjour discovery)
Automated Scanning
Networking audit → axiom-audit-networking (deprecated APIs, anti-patterns, and completeness gaps — transition handling, TLS coverage, connection cleanup, framework selection)
Anti-Rationalization
Example Invocations
User: "My API request is failing with a timeout"
→ Read: skills/networking-diag.md
User: "How do I use URLSession with async/await?"
→ Read: skills/networking-discipline.md
User: "I need to implement a TCP connection"
→ Read: skills/network-framework-ref.md
User: "Should I use NWConnection or NetworkConnection?"
→ Read: skills/network-framework-ref.md
User: "My app was rejected for using HTTP connections"
→ Read: skills/networking-diag.md (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



