OpenClaw
Агенты
OpenClaw → Zukko как custom provider. Конфиг: ~/.openclaw/openclaw.json. Ключ: fetch_... (API-ключи).
Нужны оба: models.providers и allowlist agents.defaults.models (иначе будет model not allowed).
| Вариант | api | baseUrl |
|---|---|---|
| OpenAI Compatible | openai-completions | https://api.zukko.pro/v1 |
| Anthropic Messages | anthropic-messages | https://api.zukko.pro |
Onboard (OpenAI)
bash
npm install -g openclaw
openclaw onboard --non-interactive \
--mode local \
--auth-choice custom \
--custom-base-url "https://api.zukko.pro/v1" \
--custom-api-key "fetch_..." \
--custom-model-id "claude-sonnet-5"Если custom нет — те же --custom-* с --auth-choice vllm, либо ручной конфиг ниже.
OpenAI Compatible — ~/.openclaw/openclaw.json
bash
{
models: {
mode: "merge",
providers: {
zukko: {
baseUrl: "https://api.zukko.pro/v1",
apiKey: "fetch_...",
api: "openai-completions",
models: [
{
id: "claude-sonnet-5",
name: "Claude Sonnet 4.6",
input: ["text"],
contextWindow: 200000,
maxTokens: 8192,
},
],
},
},
},
agents: {
defaults: {
model: { primary: "zukko/claude-sonnet-5" },
models: {
"zukko/claude-sonnet-5": { alias: "sonnet" },
},
},
},
}bash
openclaw gateway config.apply --file ~/.openclaw/openclaw.jsonAnthropic Messages — ~/.openclaw/openclaw.json
bash
{
models: {
mode: "merge",
providers: {
zukko: {
baseUrl: "https://api.zukko.pro",
apiKey: "fetch_...",
api: "anthropic-messages",
models: [
{
id: "claude-sonnet-5",
name: "Claude Sonnet 4.6",
input: ["text"],
contextWindow: 200000,
maxTokens: 8192,
},
],
},
},
},
agents: {
defaults: {
model: { primary: "zukko/claude-sonnet-5" },
models: {
"zukko/claude-sonnet-5": { alias: "sonnet" },
},
},
},
}bash
openclaw gateway config.apply --file ~/.openclaw/openclaw.jsonЕсли не работает
- model not allowed — добавь модель в allowlist:
agents.defaults.models["zukko/<id>"] - Нет в /models — проверь и
models.providers.zukko, и allowlist - 401 — ключ
fetch_...и URL по таблице выше (с/v1или без)