tokio-async-code-review
Installation
SKILL.md
Tokio Async Code Review
Review Workflow
- Check Cargo.toml — Note tokio feature flags (
full,rt-multi-thread,macros,sync, etc.). Missing features cause confusing compile errors. - Check runtime setup — Is
#[tokio::main]or manual runtime construction used? Multi-thread vs current-thread? - Scan for blocking — Search for
std::fs,std::net,std::thread::sleep, CPU-heavy loops in async functions. - Check channel usage — Match channel type to communication pattern (mpsc, broadcast, oneshot, watch).
- Check sync primitives — Verify correct mutex type, proper guard lifetimes, no deadlock potential.
Gates (objective passes before conclusions)
Complete in order for the review scope. Do not assert Critical or Major until the relevant gate passes.
- Dependency surface — Read the crate (and workspace, if inherited)
Cargo.tomlthat suppliestokio. Pass: Written note oftokioversion and enabled features, or explicit statement that there is no directtokiodependency and where it comes from (workspace/path). - Runtime model — Locate runtime construction (
#[tokio::main],Runtime::builder, tests, or library with no owned runtime). Pass: One line naming flavor (multi_thread/current_thread/ tests-only / none) and where it is defined. - Blocking inventory — Search reviewed paths for blocking APIs (
std::fs::,std::net::without async wrappers,std::thread::sleep, heavy CPU loops inasync fn). Pass: Each hit listed aspath:line(or tool output excerpt), or explicit “no blocking patterns found in reviewed async code” after the search. - Protocol — Load the review-verification-protocol skill. Pass: Its pass conditions met before any finding is reported (file:line evidence for asserted issues).