axiom-networking — скилл для Claude Code: сетевой код Apple-приложений
Скилл с правилами и справочниками для сетевого кода в Apple-приложениях. Внутри — маршрутизация по типу задачи, диагностика сбоев и паттерны для URLSession и Network.framework.
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a claude-codeЧто делает axiom-networking
Скилл покрывает реализацию и отладку любых сетевых соединений в Apple-приложениях: HTTP-запросы, WebSocket, TCP, диагностику таймаутов и TLS-ошибок. Внутри — несколько файлов-справочников: networking-discipline.md с паттернами URLSession и структурированной конкурентностью, network-framework-ref.md с API NetworkConnection (iOS 26+) и NWConnection (iOS 12–18), networking-diag.md с деревом решений по сбоям соединений, networking-legacy.md для старых паттернов и networking-migration.md для перехода с BSD-сокетов.
Скилл заставляет агента сначала прочитать нужный файл по таблице симптомов, а не изобретать решение с нуля. Например, при «API request is failing with a timeout» агент идёт в networking-diag.md, где разобраны 8 причин отказов: DNS, проверка TLS-сертификатов, фрейминг сообщений, перегрузка TCP, сотовые сети с IPv6-only, вмешательство VPN и ATS.
Есть встроенное давление-тестирование: если пользователь уже вложил время в кастомную реализацию, скилл предписывает агенту не сдаваться под sunk cost, а диагностировать проблему и честно сказать, что стандартный API решил бы задачу. Для автоматической проверки вызывается субагент axiom-audit-networking, который ищет deprecated API, анти-паттерны и пропуски в обработке переходов и TLS-покрытии. Для certificate pinning и подписи запросов скилл перенаправляет в axiom-security через /skill axiom-security.
Какие задачи решает
- Найти причину таймаута API-запроса
- Настроить URLSession с async/await и отменой
- Мигрировать с NWConnection на NetworkConnection
- Пройти проверку App Store без отказов по ATS/HTTP
- Выбрать паттерн для TCP/UDP/TLS-соединения
Примеры запросов агенту
- Мой API-запрос падает по таймауту — разбери причину через axiom-networking
- Как использовать URLSession с async/await в Swift?
- Мне нужен TCP-коннект, покажи паттерн из axiom-networking
Как установить axiom-networking
1Через Skills CLI (Vercel)
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a claude-code2Вручную: положить файлы
~/.claude/skills/axiom-networking/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/axiom-networking/
1Через Skills CLI (Vercel)
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a codex2Вручную: положить файлы
.agents/skills/axiom-networking/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a cursor2Вручную: положить файлы
.cursor/skills/axiom-networking/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install CharlesWiltgen/Axiom axiom-networking2Вручную: положить файлы
.github/skills/axiom-networking/SKILL.md1Через Skills CLI (Vercel)
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a gemini-cli2Командой платформы
gemini skills install https://github.com/CharlesWiltgen/Axiom --path axiom-codex/skills/axiom-networkingВручную: положить файлы
.devin/skills/axiom-networking/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора27
Похожие
Рядом в теме «Настройка агента: память, контекст, субагенты»
Все скиллы по теме «Настройка агента: память, контекст, субагенты» →Вопросы о axiom-networking
Как установить axiom-networking в Claude Code?
Выполните npx skills add CharlesWiltgen/Axiom --skill axiom-networking -a claude-code. После установки скилл лежит в ~/.claude/skills/axiom-networking/SKILL.md.
Что делает axiom-networking?
Даёт агенту набор справочников и правил для сетевого кода в Apple-приложениях: URLSession с конкурентностью, Network.framework, диагностику сбоев, миграцию с устаревших API и паттерны для iOS 12–18 и iOS 26+.
Чем отличается от обычного совета «используй URLSession»?
Скилл заставляет агента идти по дереву решений и читать конкретный файл под задачу, а не выдавать общий ответ. Для сбоев соединений там систематический разбор 8 причин, для миграции — отдельные гайды с BSD-сокетов и StreamTask.
Исходный текст
SKILL.md · MIT
---
name: axiom-networking
description: Use when implementing or debugging ANY network connection, API call, or socket in an Apple app. Covers URLSession, Network.framework, NetworkConnection, connection diagnostics.
license: MIT
---
# 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 -->
> **Auditors are skills here.** Where this router says "Launch `some-auditor` agent", 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.
<!-- AXIOM_AUDITOR_INLINE_END -->
## Quick Reference
| Symptom / Task | Reference |
|----------------|-----------|
| URLSession with structured concurrency | See `skills/networking-discipline.md` |
| Network.framework anti-patterns | See `skills/networking-discipline.md` |
| Deprecated API migration | See `skills/networking-discipline.md` |
| gRPC Swift — typed RPC, streaming, `.proto` codegen (WWDC 2026) | See `skills/networking-discipline.md` |
| Pressure scenarios (reachability, sockets) | See `skills/networking-discipline.md` |
| NetworkConnection (iOS 26+) API reference | See `skills/network-framework-ref.md` |
| NWConnection (iOS 12-18) API reference | See `skills/network-framework-ref.md` |
| TLV framing, Coder protocol | See `skills/network-framework-ref.md` |
| NetworkListener, NetworkBrowser, Wi-Fi Aware | See `skills/network-framework-ref.md` |
| Connection timeouts, TLS failures | See `skills/networking-diag.md` |
| Data not arriving, connection drops | See `skills/networking-diag.md` |
| ATS / HTTP / App Store rejection | See `skills/networking-diag.md` |
| Production crisis diagnosis | See `skills/networking-diag.md` |
| NWConnection patterns (iOS 12-18) | See `skills/networking-legacy.md` |
| UDP batch, NWListener, NWBrowser | See `skills/networking-legacy.md` |
| BSD sockets → NWConnection migration | See `skills/networking-migration.md` |
| Push/calls on networks without internet (Local Push Connectivity, NEAppPushProvider) | **Use axiom-integration (skills/local-push-connectivity.md)** |
| NWConnection → NetworkConnection migration | See `skills/networking-migration.md` |
| URLSession StreamTask → NetworkConnection | See `skills/networking-migration.md` |
## Decision Tree
```dot
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-18)"];
what -> "skills/networking-diag.md" [label="debug connection\nfailures"];
what -> "skills/networking-legacy.md" [label="iOS 12-18\nNWConnection patterns"];
what -> "skills/networking-migration.md" [label="migrate from\nsockets/URLSession"];
}
```
1. URLSession with structured concurrency? → `skills/networking-discipline.md`
2. Network.framework / NetworkConnection (iOS 26+)? → `skills/network-framework-ref.md`
3. NWConnection (iOS 12-18)? → `skills/networking-legacy.md`
4. Migrating from sockets/URLSession? → `skills/networking-migration.md`
5. Connection issues / debugging? → `skills/networking-diag.md`
6. Typed RPC / streaming against a service you control? → gRPC Swift (`skills/networking-discipline.md`)
7. ATS / HTTP / App Store rejection for networking? → `skills/networking-diag.md` + networking-auditor
8. Certificate pinning, signing API requests, encrypting payloads? → `/skill axiom-security`
9. UIWebView or deprecated API rejection? → networking-auditor (Agent)
10. 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:
1. **Diagnose first** — Understand what's actually failing before recommending changes
2. **Recommend correctly** — If standard APIs (URLSession, Network.framework) would solve the problem, say so professionally
3. **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
| Thought | Reality |
|---------|---------|
| "URLSession is simple, I don't need a skill" | URLSession with structured concurrency has async/cancellation patterns. `skills/networking-discipline.md` covers them. |
| "I'll debug the connection timeout myself" | Connection failures have 8 causes (DNS, TLS, proxy, cellular). `skills/networking-diag.md` 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
© CharlesWiltgen · MIT · CharlesWiltgen/Axiom