This is your concurrency troubleshooting companion that stops you from blindly wrapping everything in Arc<Mutex<T>>. It intercepts those dreaded E0277 Send/Sync errors and forces you to ask whether you actually need threads at all. The trace up/trace down model is solid: it connects compiler errors to domain constraints (like why Rc fails in web handlers) and walks you through CPU-bound versus I/O-bound decisions before you reach for primitives. The error-to-design-question table is the real value here, turning "Future not Send" into "Is async the right choice?" instead of just adding bounds until it compiles. Particularly strong on the async footguns like holding MutexGuard across await points.
npx skills add https://github.com/actionbook/rust-skills --skill m07-concurrency