Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/nylo-core/claude-code/nylo-networkingnpx skills add nylo-core/claude-code --skill nylo-networkinggit clone --depth 1 https://github.com/nylo-core/claude-codeWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00048 | $0.03587 |
| Opus 5 | $0.00024 | $0.01793 |
| Sonnet 5 | $0.00010 | $0.00717 |
| Haiku 4.5 | $0.00005 | $0.00359 |
Grade A, and why
nylo-networking scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 543 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Nylo Networking
Overview
Nylo v7 networking is built on Dio and centered around NyApiService classes in lib/app/networking/. Services provide network() for typed responses and networkResponse() for full NyResponse<T> objects with status codes, headers, and error details.
When to Use
- Creating or modifying API service classes
- Making GET, POST, PUT, DELETE, PATCH requests
- Adding request/response interceptors
- Caching API responses with cache policies
- Handling authentication tokens and refresh logic
- Uploading or downloading files
- Configuring retry logic, timeouts, or connectivity checks
- When NOT to use: For local storage without network calls, use nylo-storage instead
Quick Reference
| Action | Code |
|---|---|
| Create API service (CLI) | metro make:api_service user |
| Create with model | metro make:api_service user --model="User" |
| Create interceptor (CLI) | metro make:interceptor logging |
| Simple GET | await get<User>("/users/1") |
| Simple POST | await post<User>("/users", data: payload) |
| network() call | await network<User>(request: (r) => r.get("/users/1")) |
| networkResponse() call | await networkResponse<User>(request: (r) => r.get("/users/1")) |
| Use from page | await api<ApiService>((r) => r.fetchUser()) |
| Cache response | network(..., cacheKey: "key", cacheDuration: Duration(hours: 1)) |
| Bearer token | network(..., bearerToken: "token123") |
| Retry requests | network(..., retry: 3, retryDelay: Duration(seconds: 2)) |
| Clear cache | await apiService.clearCache("key") |
API Service Structure
Services live in lib/app/networking/ and extend NyApiService:
class ApiService extends NyApiService {
ApiService({BuildContext? buildContext})
: super(
buildContext,
decoders: modelDecoders,
);
@override
String get baseUrl => getEnv('API_BASE_URL');
@override
Map<Type, Interceptor> get interceptors => {
...super.interceptors,
};
Future<User?> fetchUser(int id) async {
return await network<User>(
request: (request) => request.get("/users/$id"),
);
}
Future<List<User>?> fetchUsers() async {
return await network<List<User>>(
request: (request) => request.get("/users"),
);
}
Future<User?> createUser(Map<String, dynamic> data) async {
return await network<User>(
request: (request) => request.post("/users", data: data),
);
}
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 543 lines · 48 tokens per session scan A 096853f27490
nylo-networking is a skill published in the GitHub repository nylo-core/claude-code (4 stars, last pushed 4mo ago), licensed MIT. It adds 48 tokens to every session and 3,587 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
at_client_skills-sdk
Use this skill when a developer is building a Dart or Flutter app that depends on atclient or atclientflutter from pub.dev, stores or shares data via the Atsign Protocol, needs onboarding (CRAM new-atsign, atKeys file, keychain, APKAM) or APKAM enrollment, or asks about AtCollection , CItem , Query , sub-collections…
firebase-messaging
Use when setting up Firebase Cloud Messaging, managing permissions and tokens, handling background/foreground notification taps, or dispatching messages server-side (HTTP v1).
dart-3-updates
Use when writing switch statements, refactoring if-else chains, creating data classes, choosing records vs classes, destructuring values, or modernizing pre-Dart-3 code.
effective-dart
Use when writing Dart code, reviewing for style, refactoring naming, adding doc comments, structuring imports, or enforcing type annotations.
riverpod
Use when setting up providers, combining requests, managing state disposal, passing arguments, performing side effects, or testing providers (Riverpod).
firebase-analytics
Use when logging analytics events, setting user properties, configuring default event parameters, building funnels, or adding screen-view tracking.