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.
| Property | Value |
|---|---|
| Provider id | fireworks (alias: fireworks-ai) |
| Package | @openclaw/fireworks-provider |
| Auth env var | FIREWORKS_API_KEY |
| Onboarding flag | --auth-choice fireworks-api-key |
| Direct CLI flag | --fireworks-api-key <key> |
| API | OpenAI-compatible (openai-completions) |
| Base URL | https://api.fireworks.ai/inference/v1 |
| Default model | fireworks/accounts/fireworks/routers/kimi-k2p6-turbo |
| Default alias | Kimi 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 ref | Name | Input | Context | Max output | Thinking |
|---|---|---|---|---|---|
fireworks/accounts/fireworks/models/kimi-k2p6 | Kimi K2.6 | text + image | 262,144 | 262,144 | Forced off |
fireworks/accounts/fireworks/routers/kimi-k2p6-turbo | Kimi K2.6 Turbo (Fire Pass) | text + image | 256,000 | 256,000 | Forced off (default) |
Note
OpenClaw pins all Fireworks Kimi models to
thinking: offbecause 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/.envor viaenv.shellEnvto 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.
Related
-
Model providers, Choosing providers, model refs, and failover behavior.
-
Thinking modes,
/thinklevels, provider policies, and routing reasoning-capable models. -
Moonshot, Run Kimi with native thinking output through Moonshot's own API.
-
Troubleshooting, General troubleshooting and FAQ.