← ClaudeAtlas

inngest-durable-functionslisted

Create and configure Inngest durable functions. Covers triggers (events, cron, invoke), step execution and memoization, idempotency, cancellation, error handling, retries, logging, and observability.
inngest/inngest-skills · ★ 22 · AI & Automation · score 64
Install: claude install-skill inngest/inngest-skills
# Inngest Durable Functions Master Inngest's durable execution model for building fault-tolerant, long-running workflows. This skill covers the complete lifecycle from triggers to error handling. > **These skills are focused on TypeScript.** For Python or Go, refer to the [Inngest documentation](https://www.inngest.com/llms.txt) for language-specific guidance. Core concepts apply across all languages. ## Core Concepts You Need to Know ### **Durable Execution Model** - **Each step** should encapsulate side-effects and non-deterministic code - **Memoization** prevents re-execution of completed steps - **State persistence** survives infrastructure failures - **Automatic retries** with configurable retry count ### **Step Execution Flow** ```typescript // ❌ BAD: Non-deterministic logic outside steps async ({ event, step }) => { const timestamp = Date.now(); // This runs multiple times! const result = await step.run("process-data", () => { return processData(event.data); }); }; // ✅ GOOD: All non-deterministic logic in steps async ({ event, step }) => { const result = await step.run("process-with-timestamp", () => { const timestamp = Date.now(); // Only runs once return processData(event.data, timestamp); }); }; ``` ## Function Limits **Every Inngest function has these hard limits:** - **Maximum 1,000 steps** per function run - **Maximum 4MB** returned data for each step - **Maximum 32MB** combined function run state including, event data, step out