运行者
工人包使用的工作流程发现和步骤执行工具.
安装
bun install
出口
// Step execution
executeStepInProcess(stepFile, stepId, dependencies, ctx, attemptNumber, backend, onLog?, options?): Promise<{ result, logs }>;
// Discovery
discoverWorkflows(dir?: string): Promise<WorkflowMetadata[]>;
discoverSteps(workflowDir: string): Promise<LoadedStep[]>;
// Versioning
calculateWorkflowHash(workflow): Promise<string>;
getGitInfo(dir): Promise<GitInfo | undefined>;
// Validation
getAllDependents(stepId, steps): string[];
validateWorkflowVersion(workflowSlug, runId, currentVersionId, backend, log): Promise<string>;
// Types
LoadedStep // Step with resolved dependencies
关键特性
- 工作流程发现 - 自动发现工作流程
./workflows/目录 - 步骤发现 - 装入和接线台阶依赖性,并附有完整的类型脚本推论
- 子进程执行 - 执行孤立儿童过程中的步骤
- 循环检测 - 外勤部验证防止循环依赖
- 版本跟踪 - SHA-256散列工作流程版本比较
工作流程结构
workflows/my-workflow/
├── workflow.json # {"name": "My Workflow"}
├── input-schema.ts # Optional: Zod schema
└── steps/
├── step-1/step.ts # Flat step
├── step-2/step.ts # Flat step
└── data-processing/ # Optional: Group directory
└── extract/
└── fetch-data/step.ts # Nested step
说明
用于工作流程编写 API(defineStep, (中文(简体) ), baseDefineStep, (中文(简体) ), Skip, (中文(简体) ), optional见 @cascade-flow/workflow 软件包.