UNPKG

@workflow-manager/runner

Version:

CLI runner for in-memory and markdown workflow orchestration using ATEP-like envelopes

40 lines (39 loc) 1.41 kB
export const DEFAULT_TASK_ADAPTER = "pi-agent"; export const SUPPORTED_ADAPTERS = [ "pi-agent", "mock", "opencode", "codex", "claude-code", "kimi", "gemini", "qwen", "acp", ]; export function resolveTaskAdapter(adapter) { return adapter ?? DEFAULT_TASK_ADAPTER; } /** * Resolves the adapter and payload the engine will use for a step's agent validator * (validation.mode "agent"), or null when the step has no agent validator. * The validator inherits the step's adapter when validation.agent.adapterKey is not * set, and inherits an explicit useRealAdapter: false opt-out from the step payload * unless the validator payload sets its own useRealAdapter — so a step opted out to * mock never silently spawns a real agent to validate itself. */ export function resolveValidatorAgentSpec(step) { if (step.validation?.mode !== "agent") { return null; } const agentSpec = step.validation.agent ?? {}; const adapterKey = agentSpec.adapterKey ?? resolveTaskAdapter(step.taskSpec?.adapterKey); const payload = { ...(agentSpec.payload ?? {}) }; const stepPayload = step.taskSpec?.payload; if (!("useRealAdapter" in payload) && stepPayload !== null && typeof stepPayload === "object" && stepPayload.useRealAdapter === false) { payload.useRealAdapter = false; } return { adapterKey, payload }; }