Providers
A step's [provider](../glossary.md#provider) is the agent CLI that runs it. `claude-code`, the user's configured Claude Code, is the default. `cursor` is optional. Each provider's [capabilities](../glossary.md#capability) say what a step can require.
A step's provider is the agent CLI that runs it. claude-code, the user's configured Claude Code, is the default. cursor is optional. Each provider's capabilities say what a step can require.
Set a factory default with top-level provider. Set one step with steps.<id>.provider. Intake always runs on claude-code in this version, even if those keys say otherwise. Omitted keys mean claude-code. See kusaw.yaml.
The factory runs locally and starts no cloud agents or remote workers. A Cursor step sends the code it reads to Cursor's service, like any Cursor session. Use Cursor only for personal and demo code. Cursor is off until it's enabled on the machine. On a restricted setup, meaning a machine where only the user's configured Claude Code is approved for work, nobody enables it, so it stays off.
Setup: Claude Code, Cursor. What each can enforce: capabilities. Whether a third CLI can be a built-in: adding a provider.
Enabling Cursor (restricted setups)
Cursor is off by default on every machine. The user-level default is allowed_providers: [claude-code], because the factory can't tell a restricted setup from any other machine. Nothing needs to be done on a restricted setup.
To enable Cursor on a personal machine, add allowed_providers: [claude-code, cursor] to <user config dir>/kusaw/registry.yaml (or $KUSAW_HOME/registry.yaml):
allowed_providers: [claude-code, cursor]Then run kusaw validate and check that Cursor selections no longer show GF-56 E14.
Only this user-level line enables Cursor. A kusaw.yaml can't, so a factory or repo copied onto a restricted setup can't turn Cursor on.
To turn Cursor off again, remove cursor from the line. The setting is checked again before every agent step.
Before enabling, check that the machine is for personal or demo code, never a restricted setup.
Migration note
Existing factories need no change. They behave exactly as before and make no Cursor calls. pricing keeps meaning Claude Code.
Adding a provider
Use the checklist to judge a third agent CLI in about an hour. Fill in the template. Do not name a specific third CLI here.
OS sandbox
An optional OS-native sandbox around a [step](glossary.md#step) process: the user's configured Claude Code or Cursor CLI (and everything they start), built-in steps, and custom command steps.
Claude Code
Claude Code is the default provider (`claude-code`). Setup is unchanged from v1 and v2: install it, sign in with your own account, and point the factory at the executable. The factory does not copy Claude Code's install steps and does not ask for credentials or a model.