Skip to main content
Route a cloud execution section through an Anthropic-compatible gateway or proxy, or through Amazon Bedrock. Provider routing is best effort, and a gateway or non-Anthropic model can behave differently from the Anthropic default.

Provider Entry Settings

Each key under providers is a provider name.
.prflow/config.json is committed repository content. Never place tokens, passwords, private keys or other secret values in providers.<name>.env. Store credentials in GitHub Actions secrets and reference only supported secret-backed inputs.

Names Checked in the env Map

The env map is checked before anything is exported. Some names stop the run outright, and four others produce a warning and keep running. Open the list you need.
The env map is exported into the environment of the whole job, not just the model step, so a name that means something to the runner does more than add a variable. Before exporting anything, the job checks every key against a fixed list of names and fails with an error naming the key if it finds one. Nothing is exported on that run. Matching ignores case, so a lowercase spelling is refused too. Any other valid environment-variable name is exported exactly as written.To supply the provider credential, set the DEVFLOW_PROVIDER_API_KEY secret instead. To change only the background model, use ANTHROPIC_DEFAULT_HAIKU_MODEL, which is not refused. The remaining names have no alternative and must be removed from the map — including NODE_OPTIONS and PYTHONPATH, which are refused even where your intended use is benign.
Separately from the refused names above — which stop the run — four names are warned but not refused. If your env map sets any of them, the job prints a warning naming every one it found and then keeps running; the value you set still takes effect. These are:Because the env map is applied last, a value you set for one of these wins over the dedicated field or the job’s own setting. The warning exists so this override is visible in the run log rather than surprising you. Matching ignores case and is whole-name, the same rule the refused list uses: home warns exactly as HOME does, while HOMEDIR produces no warning. A map that names none of the four warned names logs nothing new.

Section Routing Settings

Configure a Provider Route

  1. Add DEVFLOW_PROVIDER_API_KEY as a repository or environment secret.
  2. Add the provider entry.
  3. Point each desired active section at the entry.
  4. Keep CLAUDE_CODE_OAUTH_TOKEN until every active section is routed and tested.
Expected result: the general command path and implementation runs send their model requests to https://gateway.example.com using the key in DEVFLOW_PROVIDER_API_KEY, and neither passes an effort value, because this entry declares that the route does not support one.

Route Through Amazon Bedrock

Set auth to bedrock_api_key to reach Amazon Bedrock instead of an HTTP gateway. Store a long-lived Bedrock API key in the same DEVFLOW_PROVIDER_API_KEY secret — no second secret and no AWS role setup. Such an entry needs no base_url; instead it must set AWS_REGION in its env map, and its section’s claude_model must be a Bedrock-form model identifier (the shipped Claude default is not served by Bedrock).
Expected result: implementation runs reach Claude through Amazon Bedrock in us-east-1 with the Bedrock API key in DEVFLOW_PROVIDER_API_KEY. Every other section keeps the default Anthropic route. A bedrock_api_key job whose env map sets no AWS_REGION fails before the model action starts, with an error naming the section and provider. A bedrock_api_key entry that also carries a base_url runs, but the base_url is ignored with a warning. A selected provider with a missing secret, undefined entry, empty URL (on the bearer/api_key arms), invalid auth value, invalid environment-variable name, or a refused env name fails before the model action starts.