Skip to main content
Hyperterse resolves model providers per agent from model.provider, model.model, and model.options.

Provider matrix

When an agent loads, Hyperterse normalizes provider values (lowercased; - becomes _).

Option keys and env behavior

Model option string values support {{ env.VAR_NAME }} substitution when the agent model is initialized.

Gemini (Google AI Studio)

Supported auth options:
  • api_key (inline or {{ env.VAR_NAME }} substitution)
  • fallback env: GOOGLE_API_KEY (recommended)

Vertex AI

Resolution behavior:
  • project option or env GOOGLE_CLOUD_PROJECT
  • location option or env GOOGLE_CLOUD_LOCATION, fallback GOOGLE_CLOUD_REGION
  • optional api_key support, fallback GOOGLE_API_KEY

OpenAI-compatible

Resolution behavior:
  • base_url defaults to https://api.openai.com/v1
  • key from api_key, fallback OPENAI_API_KEY
Direct means you can use openai_compatible with that provider’s OpenAI-compatible endpoint directly. Indirect means you should put a compatibility gateway in front first.
For production, run a quick smoke test with your exact model and one tool call before rollout.

OpenAI compatibility

openai_compatible is defined by protocol behavior, not by vendor name.

Accepted provider identifiers

After normalization (lowercase, with - converted to _), Hyperterse accepts:
  • openai_compatible (canonical)
  • openai (alias)

Required protocol contract

For direct integration, the target endpoint must support:
  • POST {base_url}/chat/completions
  • Authorization: Bearer <token>
  • OpenAI-compatible request/response payloads
  • OpenAI-compatible tool-call payloads when tools are enabled

Direct vs indirect usage

Use openai_compatible directly only when the contract above is satisfied. Use a compatibility gateway when any of these differ:
  • endpoint path
  • auth mechanism (for example non-Bearer or required custom headers)
  • payload/response/tool-call schema

Production-safe examples

Gemini with env-managed key

Vertex with explicit project/location

OpenAI-compatible with custom gateway

OpenRouter with a free model

  • Keep secrets in provider default env vars (OPENAI_API_KEY, GOOGLE_API_KEY) instead of inline literals.
  • Pin model values deliberately per agent role (cheap vs reasoning-heavy).
  • Add one agent per workflow role rather than reusing a single all-purpose prompt.
Avoid committing inline api_key values to source control. Prefer provider default env vars and managed secret injection in deployment.
For full agent shape, see Agent configuration reference and Quickstart.