Files
stack/docs/providers/synthetic.md
T
jason.woltje 193479b52d docs: concept annexation, provider/reference docs, ACT-1 groundwork
Mosaic concepts pages now own the adapted content; source/license
metadata under docs/reference/concepts. Adds ACT-1 agent-context
planning capture, pinned concept test package + preparation utility,
foundation observation notes (durability, evidence, federation,
onboarding, workflow), and the #1495 consolidation assessment.
TOOLS.md updated for the host-dev launcher.
2026-09-07 14:07:05 -05:00

4.5 KiB

summary, read_when, title
summary read_when title
Use Synthetic's Anthropic-compatible API in OpenClaw
You want to use Synthetic as a model provider
You need a Synthetic API key or base URL setup
Synthetic

Synthetic exposes Anthropic-compatible endpoints. OpenClaw provides it through the official @openclaw/synthetic-provider plugin and uses the Anthropic Messages API.

Property Value
Provider synthetic
Auth SYNTHETIC_API_KEY
API Anthropic Messages
Base URL https://api.synthetic.new/anthropic

Getting started

```bash openclaw plugins install @openclaw/synthetic-provider openclaw gateway restart ``` Get a `SYNTHETIC_API_KEY` from your Synthetic account, or let onboarding prompt you for one. ```bash openclaw onboard --auth-choice synthetic-api-key ``` Onboarding sets the default model to: ```text synthetic/hf:MiniMaxAI/MiniMax-M3 ``` OpenClaw's Anthropic client appends `/v1` to the base URL automatically, so use `https://api.synthetic.new/anthropic` (not `/anthropic/v1`). If Synthetic changes its base URL, override `models.providers.synthetic.baseUrl`.

Config example

{
  env: { vars: { SYNTHETIC_API_KEY: "sk-..." } },
  agents: {
    defaults: {
      model: { primary: "synthetic/hf:MiniMaxAI/MiniMax-M3" },
      models: { "synthetic/hf:MiniMaxAI/MiniMax-M3": { alias: "MiniMax M3" } },
    },
  },
  models: {
    mode: "merge",
    providers: {
      synthetic: {
        baseUrl: "https://api.synthetic.new/anthropic",
        apiKey: "${SYNTHETIC_API_KEY}",
        api: "anthropic-messages",
        models: [
          {
            id: "hf:MiniMaxAI/MiniMax-M3",
            name: "MiniMax M3",
            reasoning: true,
            input: ["text", "image"],
            cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
            contextWindow: 262144,
            maxTokens: 65536,
          },
        ],
      },
    },
  },
}

Model discovery

With a Synthetic credential, OpenClaw discovers current text models from Synthetic's /openai/v1/models API. Inference still uses the Anthropic Messages API. Newly advertised models, including small models and syn: aliases, do not need an OpenClaw catalog update.

The live catalog supplies context and output limits, image input, reasoning, tool support, and usage-based token prices. Those prices are estimates, not a subscription bill. See Synthetic's current model list for availability and its recommended aliases.

Offline catalog generation and unavailable or unusable discovery responses use the bundled seed models. Your selected model is not changed automatically. When you override the inference base URL, OpenClaw skips Synthetic's fixed discovery URL so a proxy credential is not sent to Synthetic.

Model refs use the form `synthetic/`. Use `openclaw models list --provider synthetic` to inspect your configured models. If you enable a model allowlist (`agents.defaults.modelPolicy.allow`), add every Synthetic model you plan to use. Models not in the allowlist are hidden from the agent. If Synthetic changes its API endpoint, override the base URL:
```json5
{
  models: {
    providers: {
      synthetic: {
        baseUrl: "https://new-api.synthetic.new/anthropic",
      },
    },
  },
}
```

OpenClaw still appends `/v1` automatically.
Provider rules, model refs, and failover behavior. Full config schema including provider settings. Synthetic dashboard and API docs.