AI SDK - 工作流程策略
运行 AI SDK HarnessAgent (Claude Code, Codex, Pi)作为一个 持久工作流程
使用 工作流程 DevKit。转弯可以
分为时间切片或语义剂步骤.
设置
npm i ai @ai-sdk/workflow-harness workflow @ai-sdk/harness @ai-sdk/harness-claude-code @ai-sdk/sandbox-vercel zod
使用量
import {
runHarnessAgentStep,
type HarnessWorkflowState,
} from '@ai-sdk/workflow-harness';
export async function agentStep(
state: HarnessWorkflowState,
): Promise<HarnessWorkflowState> {
'use step';
const { HarnessAgent } = await import('@ai-sdk/harness/agent');
const { claudeCode } = await import('@ai-sdk/harness-claude-code');
const { isStepCount } = await import('ai');
const {
createVercelNetworkSandboxSession,
resumeVercelNetworkSandboxSession,
} = await import('@ai-sdk/sandbox-vercel');
const steppedAgent = new HarnessAgent({
harness: claudeCode,
stopWhen: isStepCount(1),
});
const sandboxId = `harness-${state.sessionId}`;
const sandboxSession =
state.resumeFrom == null && state.continueFrom == null
? await createVercelNetworkSandboxSession({
sandboxId,
runtime: 'node24',
ports: [4000],
template: await steppedAgent.getSandboxTemplate(),
})
: await resumeVercelNetworkSandboxSession({ sandboxId });
return runHarnessAgentStep({ agent: steppedAgent, state, sandboxSession });
}
见 公用事业文件 更多信息.