Documentation Index
Fetch the complete documentation index at: https://smithers.sh/llms.txt
Use this file to discover all available pages before exploring further.
// Props
import { Supervisor } from "smithers-orchestrator";
type SupervisorProps = {
id?: string; // default: "supervisor"
boss: AgentLike;
workers: Record<string, AgentLike>; // { coder, tester, ... }
planOutput: OutputTarget; // { tasks: [{ id, workerType, instructions }] }
workerOutput: OutputTarget;
reviewOutput: OutputTarget; // { allDone: boolean, retriable: string[] }
finalOutput: OutputTarget;
maxIterations?: number; // default: 3
maxConcurrency?: number; // default: 5
useWorktrees?: boolean; // default: false
skipIf?: boolean;
children: string | ReactNode; // goal/prompt for the boss
};
export default smithers(() => (
<Workflow name="build-feature">
<Supervisor
boss={boss}
workers={{ coder, tester }}
planOutput={outputs.plan}
workerOutput={outputs.workerResult}
reviewOutput={outputs.review}
finalOutput={outputs.final}
maxIterations={3}
maxConcurrency={4}
>
Build the user authentication module with tests.
</Supervisor>
</Workflow>
));
Notes
- Generated node ids:
{id}-plan, {id}-loop, {id}-worker-{type}, {id}-review, {id}-final.
- Workers run with
continueOnFail; a single failure does not abort the cycle.
- With
useWorktrees, each worker runs in .worktrees/{prefix}-worker-{type} on branch worker/{prefix}-worker-{type}.