Files

Meta provider

Official OpenClaw provider plugin for the Meta API — an OpenAI-compatible Responses API endpoint (POST /v1/responses).

  • Base URL: https://api.meta.ai/v1
  • Auth: Authorization: Bearer $MODEL_API_KEY
  • Models: muse-spark-1.1, muse-spark-1.2, muse-spark-1.2-contributor (reasoning models)
    • Context window: 1,048,576 tokens (input + output share the budget)
    • Reasoning effort: minimal | low | medium | high | xhigh (OpenClaw default: high)
    • Vision: image input in user messages
    • Tool calling + streaming
    • Stateless encrypted reasoning replay (store: false)

Warning

Meta's pricing documentation and Terms of Service distinguish Standard Services from Contributor/Discounted Services:

  • Standard Services are the default. Meta says prompts and completions submitted to Standard Services are not used to train Meta models.
  • By using Contributor/Discounted Services, you permit Meta to use Content submitted to and generated by those services as described in the Terms. Under the Terms, use of Discounted Services acknowledges that permission. You must not submit sensitive, confidential, or personal information to the Discounted Services.

Meta's Geographic Use Policy governs availability. It limits API access in some jurisdictions and adds end-user deployment restrictions for products built with the Contributor/Discounted model; those additional restrictions do not apply to your own use or products built with Standard Services.

Meta's model catalog lists text, image, video, audio, and PDF input for these models. OpenClaw's model catalog directly represents text and image input only; the other upstream modalities are not model-manifest input values. Meta does not publish an exact maximum-output figure for these catalog rows.

Usage

Install the plugin and restart Gateway:

openclaw plugins install @openclaw/meta-provider
openclaw gateway restart

Set the API key and select the model:

export MODEL_API_KEY=<key>
// ~/.openclaw/openclaw.json
{
  agents: {
    defaults: {
      model: { primary: "meta/muse-spark-1.1" },
    },
  },
}

Or run onboarding and choose Meta.

Thinking / reasoning

--thinking <level> and /think <level> map to Responses API reasoning.effort. OpenClaw defaults to high. Meta's reasoning documentation says that an omitted effort uses a model-determined level, so high is an OpenClaw policy rather than Meta's omitted-parameter default. off maps to minimal because Muse Spark does not accept none.

Docs

See docs/providers/meta.md for setup, onboarding, and smoke tests.

Live test

export MODEL_API_KEY=<key>
pnpm test:live -- extensions/meta/meta.live.test.ts

The live suite exercises enabled Meta cases against POST /v1/responses.