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 Poorgramer-Zack/dart-expert-skills --skill flutter-isolategit clone --depth 1 https://github.com/Poorgramer-Zack/dart-expert-skillsWrote 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/poorgramer-zack/dart-expert-skills/flutter-isolate)<a href="https://agentmods.dev/skills/poorgramer-zack/dart-expert-skills/flutter-isolate"><img src="https://agentmods.dev/badge/skills/poorgramer-zack/dart-expert-skills/flutter-isolate/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/poorgramer-zack/dart-expert-skills/flutter-isolate"><img src="https://agentmods.dev/badge/skills/poorgramer-zack/dart-expert-skills/flutter-isolate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00164 | $0.02744 |
| Opus 5 | $0.00082 | $0.01372 |
| Sonnet 5 | $0.00033 | $0.00549 |
| Haiku 4.5 | $0.00016 | $0.00274 |
Grade A, and why
running-flutter-isolates 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 11d 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 — 347 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Flutter Isolate
Goal
Move heavy computations off the main isolate to prevent UI jank (>16ms frame gaps), using the simplest API that fits the use case.
Decision: Which API to Use?
Use compute() when: |
Use Isolate.spawn() when: |
|---|---|
| ✅ One-off computation | ✅ Long-lived worker needed |
| ✅ Simple serializable data | ✅ Multiple messages over time |
| ✅ Auto-cleanup desired | ✅ Custom messaging protocol |
| ✅ Web compatibility required | ✅ Avoid repeated spawn overhead |
| ❌ NOT for long-running tasks | ❌ NOT for single one-shot tasks |
| Additional Scenarios | API |
|---|---|
| One-shot, single return value (Dart 2.19+) | Isolate.run() |
| Need platform plugins in background | BackgroundIsolateBinaryMessenger |
1. Short-lived Isolate: Isolate.run()
Best for single, one-off computations. The isolate spawns, runs the task, returns the value, then shuts down automatically.
// Decode a large JSON file without blocking the UI thread
Future<List<Photo>> getPhotos() async {
// Load asset on the main isolate first (rootBundle not accessible in isolate)
final String jsonString = await rootBundle.loadString('assets/photos.json');
// Offload CPU-heavy decoding to a new isolate
final List<Photo> photos = await Isolate.run<List<Photo>>(() {
final List<Object?> photoData = jsonDecode(jsonString) as List<Object?>;
return photoData.cast<Map<String, Object?>>().map(Photo.fromJson).toList();
});
return photos;
}
Key behavior: The result is transferred (not copied) back to the main isolate via
Isolate.exitinternally — zero-copy for the return value.
2. Cross-platform: compute()
compute() is Flutter's wrapper that falls back gracefully on Flutter Web (runs on the main thread there, since web doesn't support isolates).
// Equivalent to Isolate.run on mobile/desktop, runs on main thread on web
Future<List<Photo>> getPhotos(String jsonString) async {
return compute(_parsePhotos, jsonString);
}
// Top-level or static function only — closures are NOT supported by compute()
List<Photo> _parsePhotos(String jsonString) {
final data = jsonDecode(jsonString) as List<Object?>;
return data.cast<Map<String, Object?>>().map(Photo.fromJson).toList();
}
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.
- 11d ago First seen · 347 lines · 164 tokens per session scan A 1bc6a854ec33
running-flutter-isolates is a skill published in the GitHub repository Poorgramer-Zack/dart-expert-skills (7 stars, last pushed 1mo ago), licensed MIT. It adds 164 tokens to every session and 2,744 once invoked, about $0.0008 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…
signals-hooks
Comprehensive reactive state hooks for integration with flutterhooks.
signals-flutter
Highly optimized Flutter UI bindings and GPU rendering for reactive signals.
flutter-pre-caching
Use when preloading fonts, asset/network images, Lottie/Rive animations, local JSON/config, warming initial API data, or optimizing Flutter Web startup.
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).
bloc
Use when creating a Cubit or Bloc, modeling state with sealed classes or status enums, wiring BlocBuilder/BlocListener/BlocProvider, writing bloc tests, or choosing between Cubit and Bloc.