ruvnet/ruflo · error · Error
task step ${step.stepId} requires config.agentId or workflow
Error message
task step ${step.stepId} requires config.agentId or workflow.variables.defaultAgentId What it means
Error "task step ${step.stepId} requires config.agentId or workflow.variables.defaultAgentId" thrown in ruvnet/ruflo.
Source
Thrown at v3/@claude-flow/cli/src/mcp-tools/workflow-tools.ts:355
workflow.status = 'failed';
saveWorkflowStore(store);
break;
}
const step = workflow.steps[i];
step.status = 'running';
step.startedAt = new Date().toISOString();
const stepStart = Date.now();
saveWorkflowStore(store);
let stepEntry: typeof stepResults[number] = { stepId: step.stepId, type: step.type, status: 'running' };
try {
if (step.type === 'task') {
const cfg = step.config as Record<string, unknown>;
const agentId = (cfg.agentId as string) || (workflow.variables.defaultAgentId as string);
const promptTpl = (cfg.prompt as string) || step.name;
if (!agentId) throw new Error(`task step ${step.stepId} requires config.agentId or workflow.variables.defaultAgentId`);
const prompt = interp(promptTpl);
const result = await executeAgentTask({
agentId,
prompt,
systemPrompt: cfg.systemPrompt ? interp(String(cfg.systemPrompt)) : undefined,
maxTokens: cfg.maxTokens as number | undefined,
temperature: cfg.temperature as number | undefined,
timeoutMs: cfg.timeoutMs as number | undefined,
});
if (!result.success) throw new Error(result.error || 'agent_execute failed');
step.result = result;
workflow.variables[`${step.stepId}.output`] = result.output;
workflow.variables.lastStepOutput = result.output;
stepEntry = { stepId: step.stepId, type: 'task', status: 'completed', durationMs: result.durationMs, output: result.output };
} else if (step.type === 'wait') {
const cfg = step.config as Record<string, unknown>;
const ms = Math.min(Math.max(0, (cfg.ms as number) || 0), 60000);
await new Promise(r => setTimeout(r, ms));View on GitHub (pinned to 6b01dc5a68)
When it happens
Trigger: Thrown at v3/@claude-flow/cli/src/mcp-tools/workflow-tools.ts:355 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@6b01dc5a68 (2026-08-12).
Data as JSON: /api/errors/07b611ef28c44780.
Report an issue: GitHub.