Skip to main content
Pioneer exposes an OpenAI-compatible inference endpoint, so OpenClaw can use Pioneer as a custom provider today. This guide covers the custom-provider setup until Pioneer is available as an official OpenClaw provider.
OpenClaw is a third-party local agent tool. Keep the gateway bound to loopback unless you have intentionally hardened remote access, channel allowlists, and tool permissions.

Prerequisites

  • OpenClaw installed:
  • A Pioneer API key from the Pioneer dashboard.
  • jq installed for converting the live Pioneer model catalog into OpenClaw config.
  • Check to see if OpenClaw is available:

Setup steps

  1. Save Pioneer auth in OpenClaw
    • Paste your Pioneer API key once. OpenClaw stores it in the local auth profile store and the gateway reuses it across terminal sessions.
      Do not paste real API keys into docs, screenshots, shared shell history, or issue trackers. Rotate the key if it has been exposed.
  2. Discover and register Pioneer models
    • Pioneer’s supported inference models can change over time. Use the OpenAI-compatible GET /v1/models catalog as the source of truth and convert it directly into OpenClaw model config.
    • This command reads the Pioneer key from the OpenClaw auth profile saved in step 1, uses it for the catalog fetch, and writes the discovered model catalog into ~/.openclaw/openclaw.json.
    • The command manually adds pioneer/auto for Pioneer Auto, then reads the top-level .models[] catalog when present and falls back to the top-level .models[] catalog when present and falls back to .data[], deduplicates by id, filters anthropic/* Claude Code discovery aliases so OpenClaw does not show duplicate models, and exposes every Pioneer model under agents.defaults.models for the model picker and openclaw models status.
    • OpenClaw uses /think for reasoning controls. Models that advertise supported_reasoning_levels, reasoning, supports_reasoning, or thinking metadata are registered with reasoning: true; when Pioneer advertises exact reasoning levels, the command also writes compat.supportedReasoningEfforts so OpenClaw can include levels such as xhigh.
    • OpenClaw uses /think for reasoning controls. Models that advertise supported_reasoning_levels, reasoning, supports_reasoning, or thinking metadata are registered with reasoning: true; when Pioneer advertises exact reasoning levels, the command also writes compat.supportedReasoningEfforts so OpenClaw can include levels such as xhigh.
    • To refresh the catalog later, re-run the same command. It replaces the Pioneer provider models and Pioneer agent allowlist while preserving non-Pioneer agent model entries.
  3. Start the local gateway and open the Web UI
    • The model-discovery command already sets pioneer/auto as the default model. You do not need to run openclaw models set pioneer/auto separately.
    • Use the LaunchAgent service for normal local setup. Do not run openclaw gateway run unless you are intentionally debugging in the foreground.
    • This avoids the noisy full openclaw doctor flow during normal setup. openclaw gateway install --force keeps the macOS LaunchAgent service definition current, including the service environment. openclaw gateway restart then applies the Pioneer model config and gateway token.
    • openclaw dashboard may print a clean URL such as http://127.0.0.1:18789/ while copying a token-authenticated URL to your clipboard.
    • In the Web UI, choose a reasoning-capable Pioneer model and use the thinking selector to switch levels. From the CLI or chat input, send /think low, /think medium, /think high, or /think off. Send /think with no argument to see the current effective level.
    • In the Web UI, choose a reasoning-capable Pioneer model and use the thinking selector to switch levels. From the CLI or chat input, send /think low, /think medium, /think high, or /think off. Send /think with no argument to see the current effective level.
  4. Verify the setup (optional)
    • These checks are useful when validating a fresh setup or debugging a user report:
    • Expected result: defaultModel is pioneer/auto, allowed_count is greater than 1, and the Pioneer auth probe succeeds.
    • OpenClaw may probe only the default/effective target even when the agent allowlist contains many Pioneer models. That is fine as long as the configured model count is greater than 1 and pioneer/auto probes successfully.
  5. Run a first agent message from the CLI (optional)
    • OpenClaw needs a target session for agent messages. A plain --message is not enough.
    • To continue the same local session:
    • You can list sessions with:

Troubleshooting OpenClaw integration

OpenClaw does not have a Pioneer auth profile. Run:
The catalog fetch likely did not read the saved OpenClaw auth profile. Confirm the Pioneer profile exists, then rerun the discovery command.Confirm the saved auth profile exists:
Confirm the catalog exposes the expected Pioneer router models before rerunning the discovery command:
Expected output includes at least pioneer/auto. Versioned router entries such as pioneer/auto_v1.1, pioneer/auto_v1.2, and pioneer/general appear when they are exposed by the production catalog for your key. If the catalog output is correct, rerun the discovery command and restart the gateway.
This usually means the config points at an environment variable that is not visible to the OpenClaw process or gateway service. Prefer the auth-profile setup:
If you intentionally use an env reference, confirm the variable is visible to the process that runs OpenClaw:
For launchd, launchctl setenv does not persist across reboots and may not be enough if OpenClaw uses a generated service environment wrapper.
Reinstall and restart the LaunchAgent:
Pass a session target:
This usually means the LaunchAgent service is already bound to the gateway port. That is normal; do not start a second gateway with openclaw gateway run.For normal use, restart the service and open the Web UI:
If gateway status says the service config is out of date, repair and restart:
For foreground debugging only, stop the service first, then run the gateway in the foreground:
Use the configured shared gateway token. The Control UI expects the same token from gateway.auth.token or OPENCLAW_GATEWAY_TOKEN:
Paste that value into the Web UI Gateway Token field and click Connect.If the command is empty, create a token and restart the gateway:
Do not manually extract tokens from OpenClaw’s SQLite state database.
Check reachability and logs: