Axiom axiom-networking
Use when implementing or debugging ANY network connection, API call, or socket. Covers URLSession, Network.framework, NetworkConnection, connection diagnostics.
git clone https://github.com/CharlesWiltgen/Axiom
T=$(mktemp -d) && git clone --depth=1 https://github.com/CharlesWiltgen/Axiom "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude-plugin/plugins/axiom/skills/axiom-networking" ~/.claude/skills/charleswiltgen-axiom-axiom-networking && rm -rf "$T"
.claude-plugin/plugins/axiom/skills/axiom-networking/SKILL.mdNetworking
You MUST use this skill for ANY networking work including HTTP requests, WebSockets, TCP connections, or network debugging.
Quick Reference
| Symptom / Task | Reference |
|---|---|
| URLSession with structured concurrency | See |
| Network.framework anti-patterns | See |
| Deprecated API migration | See |
| Pressure scenarios (reachability, sockets) | See |
| NetworkConnection (iOS 26+) API reference | See |
| NWConnection (iOS 12-25) API reference | See |
| TLV framing, Coder protocol | See |
| NetworkListener, NetworkBrowser, Wi-Fi Aware | See |
| Connection timeouts, TLS failures | See |
| Data not arriving, connection drops | See |
| ATS / HTTP / App Store rejection | See |
| Production crisis diagnosis | See |
| NWConnection patterns (iOS 12-25) | See |
| UDP batch, NWListener, NWBrowser | See |
| BSD sockets → NWConnection migration | See |
| NWConnection → NetworkConnection migration | See |
| URLSession StreamTask → NetworkConnection | See |
Decision Tree
digraph networking { start [label="Networking task" shape=ellipse]; what [label="What do you need?" shape=diamond]; start -> what; what -> "skills/networking-discipline.md" [label="implement patterns,\nanti-patterns,\npressure scenarios"]; what -> "skills/network-framework-ref.md" [label="API reference\n(iOS 26+ or 12-25)"]; what -> "skills/networking-diag.md" [label="debug connection\nfailures"]; what -> "skills/networking-legacy.md" [label="iOS 12-25\nNWConnection patterns"]; what -> "skills/networking-migration.md" [label="migrate from\nsockets/URLSession"]; }
- URLSession with structured concurrency? →
skills/networking-discipline.md - Network.framework / NetworkConnection (iOS 26+)? →
skills/network-framework-ref.md - NWConnection (iOS 12-25)? →
skills/networking-legacy.md - Migrating from sockets/URLSession? →
skills/networking-migration.md - Connection issues / debugging? →
skills/networking-diag.md - ATS / HTTP / App Store rejection for networking? →
+ networking-auditorskills/networking-diag.md - 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-25): 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 → Launch
networking-auditor agent or /axiom:audit networking (deprecated APIs, anti-patterns, and completeness gaps — transition handling, TLS coverage, connection cleanup, framework selection)
Anti-Rationalization
| Thought | Reality |
|---|---|
| "URLSession is simple, I don't need a skill" | URLSession with structured concurrency has async/cancellation patterns. covers them. |
| "I'll debug the connection timeout myself" | Connection failures have 8 causes (DNS, TLS, proxy, cellular). diagnoses systematically. |
| "I just need a basic HTTP request" | Even basic requests need error handling, retry, and cancellation patterns. |
| "My custom networking layer works fine" | Custom layers miss cellular/proxy edge cases. Standard APIs handle them automatically. |
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