mcpField
W
workflow-devkit

workflow-devkit

github.com/johnlindquist开发2642 次安装45 周前更新
代码仓库

关于 workflow-devkit

workflow-devkit 是用于构建持久化流程的开发技能,涵盖自动重试、状态持久化和可观测性,也介绍基于 DurableAgent 的 AI 工作流。

主要功能

  1. 01持久化工作流编排
  2. 02可重试的原子步骤
  3. 03Webhook 回调
  4. 04事件驱动的 Actor
  5. 05流式更新
  6. 06持久化 AI 工作流

适用场景

  1. 01编排长时间运行的操作
  2. 02重试暂时性任务失败
  3. 03处理人工回调
  4. 04构建事件驱动流程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/johnlindquist/claude --skill workflow-devkit

安装后在 Claude Code 中输入/workflow-devkit确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

ai-integration.md
api-reference.md
patterns.md
templates/
actor-workflow.ts
ai-agent-workflow.ts
api-routes.ts
basic-workflow.ts

详细介绍

Workflow DevKit

构建可靠、长时间运行的流程,具备自动重试、状态持久化和可观测性。

快速参考

模式使用场景关键 API
工作流编排持久化操作"use workflow" 指令
步骤原子化、可重试的单元"use step" 指令
Webhook人工介入、回调createWebhook()
Actor事件驱动状态机defineHook() + for await
流式传输实时前端更新getWritable() / run.readable
AI Agent持久化大模型工作流DurableAgent + globalThis.fetch = fetch
AI Gateway多提供商模型切换"provider/model" 字符串、@ai-sdk/gateway

前置条件

pnpm add workflow @workflow/ai ai @ai-sdk/gateway zod

核心概念

工作流("use workflow")
import { sleep } from "workflow";

export async function myWorkflow(input: string) {
  "use workflow";
  const result = await step1(input);
  await sleep("5s");
  return result;
}
步骤("use step")- 必须与工作流位于同一文件
async function step1(input: string) {
  "use step";
  return await fetch(`/api/data?q=${input}`).then(r => r.json());
}
错误类型
import { FatalError, RetryableError } from "workflow";

// Auto-retried
throw new Error("Transient failure");

// No retry - stops workflow
throw new FatalError("Invalid credentials");

// Custom retry timing
throw new RetryableError("Rate limited", { retryAfter: "60s" });

详细文档

导入速查表

// Core workflow
import {
  sleep, fetch, FatalError, RetryableError,
  createWebhook, createHook, defineHook,
  getWritable, getWorkflowMetadata, getStepMetadata,
} from "workflow";

// API routes
import { start, getRun } from "workflow/api";

// AI integration
import { DurableAgent } from "@workflow/ai/agent";
import { generateText, generateObject } from "ai";
import { createUIMessageStreamResponse } from "ai";

示例目录

参考实现:~/dev/workflow-examples/

示例模式
nextjs/基础用户注册工作流
kitchen-sink/所有模式参考
actors/事件驱动 Actor 模式
ai-sdk-workflow-patterns/AI Agent 模式
flight-booking-app/带工具的 DurableAgent
rag-agent/使用 PostgreSQL + 嵌入的 RAG
birthday-card-generator/Webhook + 调度

评论

支持 Markdown