What problem does it solve? Long-running workflows break when processes restart, and coordinating delays, external events, and retries manually is error-prone. This Skill guides you through Inngest's step methods so each unit of work is independently retried, memoized, and survives crashes. ## Core Features & Use Cases - Durable execution with step.run: Wrap non-deterministic code (API calls, DB queries) in retriable steps that memoize results across re-runs. - Delays and event coordination: Use step.sleep, step.sleepUntil, step.waitForEvent, and step.waitForSignal for scheduled follow-ups, human approval gates, and webhook callbacks with timeouts. - Composition and parallelism: Fan out with step.sendEvent, await results with step.invoke, and run parallel work with Promise.all, loops, and chunked batch processing. - Use Case: Build a cart abandonment flow that sends a welcome email, sleeps 24 hours, waits up to 7 days for a purchase event, and invokes a discount function on timeout. ## Quick Start Use the inngest-steps skill to write an Inngest function that sends a welcome email, waits 24 hours, then waits for a user approval event with a 7-day timeout.