AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Android Coroutines Pro

skill-kelvinkosbab-appbootstrapai-android-coroutines-pro · by kelvinkosbab

Deep-reviews Kotlin coroutines and Flow code for structured-concurrency correctness — scope and dispatcher discipline, cooperative cancellation, exception propagation, hot/cold flow patterns, and coroutine testing. Use when reading, writing, or reviewing concurrency-heavy Kotlin/Android code.

No reviews yet
0 installs
9 views
0.0% view→install

Install

$ agentstack add skill-kelvinkosbab-appbootstrapai-android-coroutines-pro

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-kelvinkosbab-appbootstrapai-android-coroutines-pro)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Android Coroutines Pro? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Review Kotlin coroutines and Flow code for correctness. This is the deep-review companion to the always-on android-coroutines-best-practices.md rule — the rule steers while writing; this skill audits what was written. The Android sibling of swift-concurrency-pro. Report only genuine problems; don't nitpick.

Review process:

  1. Check scope and dispatcher discipline using references/structured-concurrency.md — every coroutine's lifetime tied to a real lifecycle, dispatchers injected.
  2. Check cancellation cooperation using references/cancellation.mdCancellationException discipline, CPU-loop checkpoints, cleanup paths.
  3. Check exception propagation using references/exceptions.mdlaunch vs async semantics, supervisor boundaries, handler placement.
  4. Check Flow construction and exposure using references/flows.md — cold/hot boundaries, stateIn/shareIn configuration, operator semantics.
  5. Check the tests using references/testing.md — virtual time, dispatcher substitution, Turbine discipline.

If doing a partial review, load only the relevant reference files.

Core Instructions

  • Every coroutine needs an owner. The first question for any launch/async: which scope, why that scope, and what cancels it. "Nothing cancels it" is a finding.
  • Cancellation is the invariant most code silently breaks. Trace every broad catch and every runCatching around suspend code — swallowed CancellationException corrupts structured concurrency at a distance.
  • Distinguish bug classes from style. A swallowed cancellation or a deferred async exception is correctness; a missing flowOn that happens to run on the right dispatcher anyway is a latent risk; name which is which.
  • Flow exposure is API design. What a ViewModel/repository exposes (StateFlow vs SharedFlow vs cold Flow, replay, sharing policy) determines consumer behavior — review it like a public interface.
  • Suspend under a non-suspending lock is a deadlock pattern (synchronized/ReentrantLock around suspension points) — always flag.
  • Assume Kotlin 2.x, kotlinx.coroutines 1.8+, Hilt for injection. Dispatchers arrive via qualified injection (@IoDispatcher), never hardcoded at use sites.

Output Format

Organize findings by file. For each issue: file/line, the violated principle, brief before/after. Skip clean files. End with a prioritized summary — correctness (cancellation/exceptions/leaks) first, then structure, then style.

Example finding:

SyncRepository.kt

Line 58: runCatching around suspend call swallows cancellation.

// Before — cancellation is caught as failure; the coroutine keeps running "successfully"
val result = runCatching { api.sync() }

// After — rethrow cancellation; catch only what you can handle
val result = try {
    Result.success(api.sync())
} catch (e: CancellationException) {
    throw e
} catch (e: IOException) {
    Result.failure(e)
}

References

  • references/structured-concurrency.md — scope-to-lifecycle mapping, repeatOnLifecycle, dispatcher injection, GlobalScope/runBlocking bans, job hierarchy review.
  • references/cancellation.md — cooperation checkpoints (ensureActive/yield), CancellationException discipline, NonCancellable cleanup, withTimeout edges.
  • references/exceptions.mdlaunch vs async propagation, coroutineScope vs supervisorScope, CoroutineExceptionHandler placement, rethrow patterns.
  • references/flows.md — cold vs hot, stateIn/shareIn + WhileSubscribed(5_000), flowOn placement, callbackFlow/awaitClose, collectLatest/flatMapLatest/conflate semantics.
  • references/testing.mdrunTest, StandardTestDispatcher vs UnconfinedTestDispatcher, MainDispatcherRule, Turbine, backgroundScope for stateIn, virtual-time control.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.