unitask

Provide zero-allocation async/await tasks integrated with Unity's PlayerLoop.

3|Updated Apr 8, 2026
One-click install
npx skills add https://github.com/XeldarAlz/KlondikeSolitaire --skill unitask
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: unitask
Source: https://github.com/XeldarAlz/KlondikeSolitaire/tree/main/.claude/skills/third-party/unitask
Command: npx skills add https://github.com/XeldarAlz/KlondikeSolitaire --skill unitask

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

UniTask provides zero-allocation async/await for Unity, replacing reliance on coroutines with a safer, more predictable model.

Core Features & Use Cases

  • Zero-allocation awaitable tasks that run on Unity's PlayerLoop without GC allocations.
  • Built-in cancellation support via CancellationToken and clean error handling.
  • Async LINQ, task-like patterns, and helpers for common Unity workflows (loading, scene management, UI).

Quick Start

Install UniTask and start awaiting Unity operations directly in MonoBehaviours.

Frequently Asked Questions about unitask

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I use async/await in Unity without causing GC allocations?

You can achieve zero-allocation async/await in Unity by using UniTask to run awaitable tasks directly on the PlayerLoop, eliminating the GC allocations typically associated with standard asynchronous operations.

What is the best way to handle cancellation in Unity async tasks?

Handling cancellation in Unity async tasks is best done using CancellationToken, which provides safe task cancellation and clean error handling without relying on unpredictable coroutine behaviors.

Does UniTask work with standard Unity workflows like scene loading and UI tasks?

UniTask works seamlessly with standard Unity workflows, providing task-like patterns and helpers that enable you to await scene management, loading, and UI tasks directly within MonoBehaviours.

How does UniTask integrate with the Unity PlayerLoop?

UniTask integrates with the Unity PlayerLoop by running zero-allocation awaitable tasks natively on it, ensuring asynchronous operations execute safely within gameplay loops without frame synchronization issues.

Can I use async LINQ for gameplay loops in Unity?

You can use async LINQ for gameplay loops in Unity through UniTask, which provides built-in async LINQ support to streamline complex asynchronous sequences and task-like patterns.

Why should I replace Unity coroutines with zero-allocation async/await?

You should replace Unity coroutines with zero-allocation async/await to gain a safer, more predictable asynchronous model that eliminates GC memory spikes and supports robust CancellationToken error handling.