Workers

Choose and configure you-agent-factory workers: runtime executors declared in the factory and invoked by workstations, with six Factory WorkerType variants plus a separate mock-worker surface.

A worker is a named runtime executor a workstation invokes by name. factory.json declares each worker; the WorkerType discriminator selects the implementation family. Pick the matching variant page before you author type-specific fields, and keep mock workers on their own test-only schema.

How To Use

Use the selection table to open the WorkerType page that matches the work. Prefer current public WorkerType names in new configs; legacy MODEL_WORKER and HOSTED_WORKER remain loadable aliases with their own migration pages. Author shared identity fields such as name, type, body, timeout, and resources before variant-specific configuration. Mock workers are not a Factory WorkerType — keep them on the mock-workers schema for deterministic test dispatch only.

Select A Worker Variant

Use the comparison below to open the matching variant page. Prefer current public WorkerType names in new configs. Legacy MODEL_WORKER and HOSTED_WORKER remain loadable aliases and have their own pages for migration review.
WorkerTypeUse whenVariant page
INFERENCE_WORKEROne-shot harness inference such as TTS, ASR, or typed INFERENCE_RUN dispatchesInference worker
AGENT_WORKERAgent-loop execution for AGENT_RUN workstations until acceptance, rejection, or failureAgent worker
SCRIPT_WORKERCommand-backed SCRIPT_RUN workstationsScript worker
POLLER_WORKERHosted poller ingress paired with workstation behavior POLLERPoller worker
MODEL_WORKERLegacy managed or local model capability alias — prefer INFERENCE_WORKER or AGENT_WORKER for new configsModel worker
HOSTED_WORKERLegacy hosted provider alias — prefer POLLER_WORKER for new configsHosted worker
Mock worker (not a WorkerType)Test-only deterministic accept, script, or reject dispatch from the mock-workers schemaMock worker

Mock workers are not a seventh Factory WorkerType. Keep them on the mock-workers schema and the mock worker page.

Shared Fields

These fields apply across Factory Worker variants. Variant pages add type-specific fields such as model routing, command and args, or hosted provider auth. The live Worker schema embed below shows the base contract from the installed Factory package.
FieldRole
nameWorker identity declared in the factory and bound by workstations
typeWorkerType discriminator that selects the implementation family
bodyShared markdown body — system prompt for agent workers; descriptive for other types
timeoutExecution time bound for the worker run
resourcesResource claims the worker needs at runtime

Worker Schema

The embed shows the live Factory Worker base definition from the installed package. Open the full Factory schema reference for exhaustive field lookup rather than copying contract text into this index.

Worker

object

A reusable worker definition that tells the factory how a workstation should execute work, such as through a model-backed agent or a script.

  • additionalPropertiesfalse (closed)

Fields

  • agentToolsagentToolsOptionalallOf

    Explicit agent-loop tool policy for AGENT_WORKER definitions. Omit or set policy DISABLED to run agent loops without advertising or executing tools.

    $ref →AgentWorkerToolsConfig (reference link; not expanded recursively)
  • argsargsOptionalarray

    Additional command arguments passed to the configured command.

  • authauthOptionalallOf

    Hosted-worker authentication contract. V1 hosted workers accept only auth.secretRef.

    $ref →HostedWorkerAuth (reference link; not expanded recursively)
  • bodybodyOptionalstring

    Inline worker instructions or script body when the worker is authored directly in factory config.

  • commandcommandOptionalstring

    Command to execute when this worker runs through a command or script provider.

  • executorProviderexecutorProviderOptionalallOf

    Canonical executor adapter identifier used to select the worker execution provider or wrapper. The current public built-in value is `SCRIPT_WRAP`.

    $ref →WorkerProvider (reference link; not expanded recursively)
  • ididOptionalstring

    Optional durable public identifier for this worker. When present, graph and layout references should use this id instead of the mutable name.

  • linearlinearOptionalallOf

    Provider-specific configuration for the built-in hosted LINEAR worker.

    $ref →HostedLinearWorkerConfig (reference link; not expanded recursively)
  • modelmodelOptionalstring

    Model identifier to request from the configured model provider when this worker uses model execution.

  • modelLocalitymodelLocalityOptionalallOf

    Provider locality for this model capability declaration. Use `LOCAL` for embedded or host-managed inference and `CLOUD` for remote provider execution.

    $ref →WorkerModelLocality (reference link; not expanded recursively)
  • modelProvidermodelProviderOptionalallOf

    Canonical model-provider identifier used for model routing and provider diagnostics. Current public built-in values are `CLAUDE` and `CODEX`; the runtime maps them onto the underlying provider command IDs.

    $ref →WorkerModelProvider (reference link; not expanded recursively)
  • namenameRequiredstring

    Worker name referenced by Workstation.worker.

  • openCodeAgentopenCodeAgentOptionalstring

    Optional OpenCode agent profile name for model workers that dispatch through the OpenCode runner. When set, OpenCode dispatches invoke `opencode run --agent <name>`. Discover agent names with `opencode agent list` (see https://opencode.ai/docs/cli/).

  • operationsoperationsOptionalModelOperation[]

    Provider-agnostic model operations that this worker can execute, including named input and output slots.

  • providerproviderOptionalallOf

    Built-in hosted provider identity when this worker uses repository-owned hosted execution.

    $ref →HostedWorkerProvider (reference link; not expanded recursively)
  • resourcesresourcesOptionalResourceRequirement[]

    Resource capacity this worker requires before it can be dispatched.

  • skipPermissionsskipPermissionsOptionalboolean

    When true, bypasses permission checks for providers that support permission gating.

  • stopTokenstopTokenOptionalstring

    Marker that tells model-oriented workers where to stop generated output when the provider supports it.

  • timeouttimeoutOptionalstring

    Optional Go duration that caps one worker execution attempt.

  • typetypeOptionalallOf

    Worker implementation family to instantiate for this definition.

    $ref →WorkerType (reference link; not expanded recursively)