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 skills add HoangNguyen0403/agent-skills-standard --skill flutter-concurrencygit clone --depth 1 https://github.com/HoangNguyen0403/agent-skills-standardWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/hoangnguyen0403/agent-skills-standard/flutter-concurrency)<a href="https://agentmods.dev/skills/hoangnguyen0403/agent-skills-standard/flutter-concurrency"><img src="https://agentmods.dev/badge/skills/hoangnguyen0403/agent-skills-standard/flutter-concurrency/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/hoangnguyen0403/agent-skills-standard/flutter-concurrency"><img src="https://agentmods.dev/badge/skills/hoangnguyen0403/agent-skills-standard/flutter-concurrency.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What 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.1 | $0.00036 | $0.00674 |
| Opus 5 | $0.00018 | $0.00337 |
| Sonnet 5 | $0.00007 | $0.00135 |
| Haiku 4.5 | $0.00004 | $0.00067 |
Grade A, and why
flutter-concurrency 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 9d 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 — 76 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Dart Concurrency and Isolates
Priority: P1 (HIGH)
Core Concepts
Dart uses a single-threaded event loop. All Flutter code runs on the Main Isolate by default. Blocking it causes jank.
- async/await: For non-blocking I/O (network, file). The event loop continues while waiting.
- Isolates: Dart's lightweight threads with isolated memory. Communicate via message passing only.
Decision Matrix
| Condition | Approach |
|---|---|
| I/O bound (HTTP, database) | async/await on Main Isolate |
| CPU-bound, < 16ms | async/await on Main Isolate |
| CPU-bound, one-off heavy task | Isolate.run() |
| Continuous background processing | Isolate.spawn() with ports |
Workflow: Offloading Heavy Computation
- 1. Identify the CPU-bound operation blocking the UI.
- 2. Extract computation into a standalone top-level or static function.
- 3. Ensure the function accepts exactly one argument (Isolate constraint).
- 4. Call
Isolate.run(() => myFunction(data)). - 5.
awaitthe result on the Main Isolate.
Workflow: Long-Lived Worker Isolate
- 1. Create a
ReceivePorton the Main Isolate. - 2. Spawn worker with
Isolate.spawn(entryPoint, mainPort.sendPort). - 3. In worker, create its own
ReceivePortand send itsSendPortback. - 4. Store worker's
SendPortfor bidirectional communication. - 5. Close ports and kill isolate on dispose.
See examples for complete code.
Anti-Patterns
- No JSON parsing on Main Isolate: Large JSON decoding (>1MB) blocks frames. Use
Isolate.run. - No shared mutable state: Isolates cannot share memory. Pass data via messages.
- No FutureBuilder in build without caching:
FutureBuilderre-fires on every rebuild if the future is created inline.
Verification
- No frame drops during heavy computation (check with DevTools).
- Worker isolates are disposed when no longer needed.
-
flutter testpasses.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 9d ago First seen · 76 lines · 36 tokens per session scan A b4add4aaf0b8
flutter-concurrency is a skill published in the GitHub repository HoangNguyen0403/agent-skills-standard (565 stars, last pushed 3d ago), licensed MIT. It adds 36 tokens to every session and 674 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-09-03.
Other skills, from other repositories
android-finance-spec
Use when generating, reviewing, or refactoring Android Kotlin code for financial apps that require BigDecimal/String precision, RTL/i18n safety, Kotlin style discipline, and "do not reinvent existing project patterns" constraints.
mobile-automation
Control Android and iOS devices, emulators and simulators — launch apps, tap, swipe, type, take screenshots, read the accessibility tree. Use when a task involves a mobile device or app, mobile UI testing, or reproducing a bug on a phone.
building-ui
Complete guide for building beautiful apps with Expo Router. Covers fundamentals, styling, components, navigation, animations, patterns, and native tabs.
use-dom
Use Expo DOM components to run web code in a webview on native and as-is on web. Migrate web code to native incrementally.
ii-app
Use this skill when you need to initialize or restart local web and mobile app projects through the bundled Rust ii-app CLI instead of calling MCP tools.
ios-simulator-preview
Show a live iOS Simulator in the dashboard's Browser side panel while building or testing an iOS app. Use when the user asks to preview an iOS/SwiftUI app, run an app in the simulator, "show me the app", test in the iOS simulator, or watch you drive an iOS app. macOS + Xcode only.