Skip to content

Models and costs

Save your provider key and base URL in the project’s Settings page. The hosted starter uses https://api.openai.com/v1 and gpt-5.6-luna. The key is encrypted at rest and is not returned by the settings API. You pay the provider for model usage.

The public hosted workflow supports the curated model IDs gpt-5.6-luna, gpt-5.6-terra, and gpt-5.6-sol. Your provider account must have access to the chosen model. The gateway contains an internal mechanism for declaring other models, but the hosted console and public CLI do not expose that configuration. Do not use an undocumented database edit as an onboarding step.

The starter runs listOrders before this model step:

{
"name": "reply",
"model": {
"model": "gpt-5.6-luna",
"messages": [
{ "role": "system", "content": "Answer using the customer's order data." },
{ "role": "user", "content": "$input" }
],
"contextSteps": ["orders"],
"maxTokens": 1000
}
}

contextSteps names completed earlier steps whose recorded results become model context. Each name must identify exactly one preceding step. This avoids asking the browser to supply data it should not control.

$input substitutes a whole string value with the customer’s input. It is not string interpolation: "Customer says: $input" remains literal text. Model messages accept system, user, and assistant roles. temperature is optional, between 0 and 2; individual providers or models may refuse unsupported settings.

In config.endUserRuns, configure a per-run budget and customer start limits:

{
"budget": { "tokens": 20000, "usd": 0.5 },
"limits": { "runsPerHour": 60, "usdPerDay": 5 }
}

These are fields to add alongside steps. runsPerHour is required for customer starts. usdPerDay is optional and requires a per-run budget.usd.

Budgets use recorded usage and stop work between steps. They are not a prepaid balance, a price quote, or a hard cap on the provider’s invoice: an in-flight model call or tool can incur charges before its result is recorded, and concurrent admitted runs can affect daily totals. Set provider-side limits as well, and keep output and input sizes bounded.

The gateway prices provider-reported usage using its versioned table and rounds ledger charges up to microdollars. Its current code snapshot is dated September 8, 2026. Inspect recorded usage in Runs or getstead trace. Missing usage or an unpriceable model is a failure to resolve, not permission to invent a cost estimate.

Terminal window
npx --yes getstead@0.2.1 doctor
npx --yes getstead@0.2.1 doctor --check-provider

The first command checks configuration without making a model call. The second sends a small billable gpt-5.6-luna request, up to 16 output tokens, and records it in Runs. It verifies the saved endpoint and key for that model; it does not prove every possible model, prompt, or provider setting will work.

If the provider reports missing credit, verify the key saved in this project’s settings. A terminal’s OPENAI_API_KEY does not replace the hosted project’s saved key. For CLI key updates, STEAD_PROVIDER_KEY takes precedence over piped input; see credential rotation.