OpenClaw
Run OpenClaw on Nebul models through a custom provider with a base URL.
OpenClaw is an open-source personal AI assistant gateway: one process that runs your agents, connects them to chat channels, and manages tools and sessions. It ships with a provider catalog covering the big vendors, and any OpenAI-compatible endpoint can be registered as a custom provider. Register Nebul, and your agents run on your project's models.
Prerequisites
- Node.js 20 or later
- A Nebul AI Studio account with API access
- An API key for your active project
- A model ID from the Model Catalog
Installation
npm install -g openclaw@latest --allow-scripts=openclawOn npm 11.15 and earlier, omit --allow-scripts=openclaw. Then run onboarding:
openclaw onboard --install-daemonThe wizard verifies model access, creates the workspace, and configures the gateway. See the getting started guide for the full walkthrough, including chat channels like Telegram and Discord.
Connect it to Nebul
Custom providers live under models.providers in your OpenClaw config, or in ~/.openclaw/agents/<agentId>/agent/models.json. Register Nebul like this:
{
models: {
mode: "merge",
providers: {
nebul: {
baseUrl: "https://api.inference.nebul.io/v1",
apiKey: "sk-your-api-key-here",
api: "openai-completions",
models: [
{
id: "zai-org/GLM-5.3",
name: "GLM 5.3",
reasoning: true,
input: ["text"],
contextWindow: 1048576,
maxTokens: 16384
}
]
}
}
}
}Field notes:
apiselects the request format.openai-completionsis the Chat Completions format;openai-responsesalso works with Nebul if you prefer the Responses API.- The
idmust exactly match a catalog model ID. Model references elsewhere in OpenClaw then readnebul/zai-org/GLM-5.3. contextWindowandmaxTokensshape context management. TakecontextWindowfrom/v1/model/info; a conservative output cap like the one above is fine.reasoning: trueenables the thinking controls for models that support them.
Prefer not to edit files by hand? The same block can be set from the command line:
openclaw config set models.providers.nebul '<json>' --strict-json --mergeFor worked examples of custom providers, see the provider examples in the OpenClaw docs.
Run it
After a config change, restart the gateway or run the agent again. Pick the nebul/zai-org/GLM-5.3 model in the dashboard or wherever your agent's model is selected, then send a message. Check the route first if you like:
openclaw gateway statusTroubleshooting
404on requests:baseUrlmust behttps://api.inference.nebul.io/v1, with the/v1suffix.- Model not selectable: model IDs in OpenClaw are
provider_id/model_id. Confirm theidmatches a catalog ID exactly. - Requests rejected with unusual fields: Nebul accepts the
developerrole,max_completion_tokens, andreasoning_effort, so the defaults work. If you copiedcompatflags from another provider's example, remove them; OpenClaw's own catalog owns those for known routes.
Data and telemetry
OpenClaw's anonymous feature statistics are off by default, but it does send a daily update check that includes your OpenClaw version, OS, Node version, and CPU architecture. Two controls, from least to most thorough:
openclaw telemetry offThat disables the optional statistics. To stop the daily update check as well:
{
update: {
checkOnStart: false
}
}Run openclaw telemetry show to see exactly what would be sent. See the OpenClaw telemetry page for the full breakdown.
Model traffic goes only to the providers you configure. For how Nebul treats requests, see Privacy & Security.