Fireworks Provider Setup: Auth, Models, and Configuration

Learn how to install the Fireworks provider plugin, set your API key, and select from pre-cataloged Kimi models or any Fireworks model at runtime. This guide is for developers integrating Fireworks with the Neura platform.

Read this when

  • You want to use Fireworks with OpenClaw
  • You need the Fireworks API key env var or default model id
  • You are debugging Kimi thinking-off behavior on Fireworks

Fireworks provides open-weight and routed models through an API compatible with OpenAI. Install the official Fireworks provider plugin to use two pre-cataloged Kimi models and any Fireworks model or router id at runtime.

PropertyValue
Provider idfireworks (alias: fireworks-ai)
Package@openclaw/fireworks-provider
Auth env varFIREWORKS_API_KEY
Onboarding flag--auth-choice fireworks-api-key
Direct CLI flag--fireworks-api-key <key>
APIOpenAI-compatible (openai-completions)
Base URLhttps://api.fireworks.ai/inference/v1
Default modelfireworks/accounts/fireworks/routers/kimi-k2p6-turbo
Default aliasKimi K2.6 Turbo

Getting started

Install the plugin

openclaw plugins install @openclaw/fireworks-provider

Set the Fireworks API key

openclaw onboard --auth-choice fireworks-api-key
openclaw onboard --non-interactive \
  --auth-choice fireworks-api-key \
  --fireworks-api-key "$FIREWORKS_API_KEY"
export FIREWORKS_API_KEY=fw-...

Onboarding saves the key under the fireworks provider in your auth profiles and assigns the Fire Pass Kimi K2.6 Turbo router as the default model.

Verify the model is available

openclaw models list --provider fireworks

The list should contain Kimi K2.6 and Kimi K2.6 Turbo (Fire Pass). If FIREWORKS_API_KEY is unresolved, openclaw models status --json reports the missing credential under auth.unusableProfiles.

Non-interactive setup

For scripted or CI installs, pass everything on the command line:

openclaw onboard --non-interactive \
  --mode local \
  --auth-choice fireworks-api-key \
  --fireworks-api-key "$FIREWORKS_API_KEY" \
  --skip-health \
  --accept-risk

Built-in catalog

Model refNameInputContextMax outputThinking
fireworks/accounts/fireworks/models/kimi-k2p6Kimi K2.6text + image262,144262,144Forced off
fireworks/accounts/fireworks/routers/kimi-k2p6-turboKimi K2.6 Turbo (Fire Pass)text + image256,000256,000Forced off (default)

Note

OpenClaw pins all Fireworks Kimi models to thinking: off because Kimi on Fireworks can leak chain-of-thought into the visible reply unless the request explicitly disables thinking. Routing the same model through Moonshot directly preserves Kimi reasoning output. See thinking modes for switching between providers.

Custom Fireworks model ids

OpenClaw accepts any Fireworks model or router id at runtime. Use the exact id shown by Fireworks and prefix it with fireworks/. Dynamic resolution clones the Fire Pass template (text + image input, OpenAI-compatible API, default cost zero) and disables thinking automatically when the id matches the Kimi pattern. GLM dynamic ids are marked text-only unless you configure a custom model entry with image input.

{
  agents: {
    defaults: {
      model: {
        primary: "fireworks/accounts/fireworks/models/<your-model-id>",
      },
    },
  },
}

How model id prefixing works

Every Fireworks model ref in OpenClaw starts with fireworks/ followed by the exact id or router path from the Fireworks platform. For example:

  • Router model: fireworks/accounts/fireworks/routers/kimi-k2p6-turbo
  • Direct model: fireworks/accounts/fireworks/models/<model-name>

OpenClaw removes the fireworks/ prefix when building the API request and sends the remaining path to the Fireworks endpoint as the OpenAI-compatible model field.

Why thinking is forced off for Kimi

Fireworks serves Kimi without a separate reasoning channel, so chain-of-thought can appear in the visible content stream. On every Fireworks Kimi request OpenClaw sends thinking: { type: "disabled" } and strips reasoning, reasoning_effort, and reasoningEffort from the payload (extensions/fireworks/stream.ts). The provider policy (extensions/fireworks/thinking-policy.ts) advertises only the off thinking level for Kimi model ids, so manual /think switches and provider-policy surfaces stay aligned with the runtime contract.

To use Kimi reasoning end-to-end, configure the Moonshot provider and route the same model through it.

Environment availability for the daemon

If the Gateway runs as a managed service (launchd, systemd, Docker), the Fireworks key must be visible to that process, not just to your interactive shell.

Warning

A key exported only in an interactive shell will not help a launchd or systemd daemon unless that environment is imported there too. Set the key in ~/.openclaw/.env or via env.shellEnv to make it readable from the gateway process.

OpenClaw loads ~/.openclaw/.env when it loads config, so keys stored there reach managed gateway services on every platform. Restart the gateway (or re-run openclaw doctor --fix) after rotating the key.

  • Model providers, Choosing providers, model refs, and failover behavior.

  • Thinking modes, /think levels, provider policies, and routing reasoning-capable models.

  • Moonshot, Run Kimi with native thinking output through Moonshot's own API.

  • Troubleshooting, General troubleshooting and FAQ.