Skills2026年4月9日·1 分钟阅读

Inngest — Durable AI Workflow Orchestration

Run reliable AI workflows with automatic retries and state persistence. Replace queues and scheduling with durable step functions. TypeScript, Python, Go SDKs. 5,200+ stars.

Agent 就绪

先审查再安装

这个资产需要先审查。复制的指令会要求 Agent dry-run、列出写入项,确认后再继续。

Needs Confirmation · 66/100策略:需确认
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Community
入口
step-1.md
先审查命令
npx -y tokrepo@latest install f09e8059-33e5-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run,确认写入项后再运行此命令。

TL;DR
Inngest provides durable step functions with automatic retries and state persistence for building reliable AI workflows in TypeScript, Python, or Go.
§01

What it is

Inngest is a durable workflow orchestration platform for building reliable AI pipelines and event-driven applications. It provides step functions that persist state between steps, automatic retries on failure, concurrency control, and scheduling. Your code runs as regular functions; Inngest handles the durability and orchestration layer.

Inngest targets developers building AI pipelines, background jobs, and event-driven workflows who need reliability without managing queue infrastructure. The SDKs support TypeScript, Python, and Go.

§02

How it saves time or tokens

Inngest replaces the combination of message queues, cron schedulers, and retry logic that you would otherwise build yourself. Each step in a workflow is automatically retried on failure and its result is persisted. If a multi-step AI pipeline fails at step 3, it resumes from step 3 rather than starting over. This saves both compute time and LLM tokens for AI workloads.

§03

How to use

  1. Start the Inngest dev server: npx inngest-cli@latest dev to get a local dashboard at http://localhost:8288.
  2. Define durable functions using the Inngest SDK with step.run() for each persisted step.
  3. Trigger functions via events from your application code.
§04

Example

import { inngest } from './client';

export const processDocument = inngest.createFunction(
  { id: 'ai-pipeline' },
  { event: 'app/document.uploaded' },
  async ({ event, step }) => {
    // Step 1: Extract text (retried on failure)
    const text = await step.run('extract', async () => {
      return await extractText(event.data.url);
    });

    // Step 2: Summarize with LLM (state persisted)
    const summary = await step.run('summarize', async () => {
      return await llm.summarize(text);
    });

    // Step 3: Store result
    await step.run('store', async () => {
      await db.insert({ id: event.data.id, summary });
    });
  }
);
§05

Related on TokRepo

§06

Common pitfalls

  • Each step.run() call must be idempotent because Inngest may retry it. Side effects (sending emails, API calls) should use idempotency keys.
  • The free tier has limits on function executions per month. Check pricing before relying on Inngest for high-volume workloads.
  • Step functions serialize state between steps. Large objects (images, PDFs) should be stored externally and referenced by URL rather than passed between steps.

常见问题

What makes Inngest different from a regular queue?+

Inngest provides durable step functions, not just message passing. Each step persists its result, retries on failure, and the workflow resumes from the last successful step. Queues require you to build this durability logic yourself.

Can Inngest run locally?+

Yes. The Inngest dev server (npx inngest-cli@latest dev) runs locally with a dashboard for testing and debugging. It mirrors the cloud behavior without needing an account.

Does Inngest support scheduled jobs?+

Yes. You can trigger functions on cron schedules using the cron event trigger. This replaces traditional cron jobs with durable, retryable execution.

How does Inngest handle failures?+

Each step has configurable retry policies with exponential backoff. If a step fails after all retries, the function is marked as failed with the error details. You can configure dead letter queues for failed events.

Is Inngest open source?+

The Inngest server and SDKs are open source. You can self-host the server or use the managed Inngest Cloud service. The SDKs are available for TypeScript, Python, and Go.

引用来源 (3)
🙏

来源与感谢

Created by Inngest. Licensed under SSPL/Apache-2.0.

Inngest — ⭐ 5,200+

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产