ステップ
Stepクラスは、ワークフロー内の個々の作業単位を定義し、実行ロジック、データ検証、および入出力処理をカプセル化します。
使用法
const processOrder = new Step({
id: "processOrder",
inputSchema: z.object({
orderId: z.string(),
userId: z.string(),
}),
outputSchema: z.object({
status: z.string(),
orderId: z.string(),
}),
execute: async ({ context, runId }) => {
return {
status: "processed",
orderId: context.orderId,
};
},
});
コンストラクターパラメータ
id:
string
ステップの一意の識別子
inputSchema:
z.ZodSchema
実行前に入力データを検証するためのZodスキーマ
outputSchema:
z.ZodSchema
ステップの出力データを検証するためのZodスキーマ
payload:
Record<string, any>
変数とマージされる静的データ
execute:
(params: ExecuteParams) => Promise<any>
ステップのロジックを含む非同期関数
ExecuteParams
context:
StepContext
ワークフローのコンテキストとステップの結果へのアクセス
runId:
string
現在のワークフロー実行の一意の識別子
suspend:
() => Promise<void>
ステップの実行を一時停止する関数
mastra:
Mastra
Mastraインスタンスへのアクセス