From 581868365d718c8cd165707de90de936b38fc759 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 21 Feb 2026 15:04:28 +0100 Subject: [PATCH] fix: finish volcengine/byteplus landing polish (#7967) (thanks @funmore123) --- CHANGELOG.md | 1 + docs/concepts/model-providers.md | 8 ++++---- src/agents/models-config.providers.ts | 8 ++++---- src/commands/auth-choice.apply.byteplus.ts | 2 +- src/commands/auth-choice.apply.ts | 2 +- src/commands/auth-choice.apply.volcengine.ts | 2 +- src/commands/onboard-non-interactive/local/auth-choice.ts | 2 +- 7 files changed, 13 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ba82d5d2741..0b43df36734 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Docs: https://docs.openclaw.ai ### Changes +- Providers/Onboarding: add Volcano Engine (Doubao) and BytePlus providers/models (including coding variants), wire onboarding auth choices for interactive + non-interactive flows, and align docs to `volcengine-api-key`. (#7967) Thanks @funmore123. - Channels/CLI: add per-account/channel `defaultTo` outbound routing fallback so `openclaw agent --deliver` can send without explicit `--reply-to` when a default target is configured. (#16985) Thanks @KirillShchetinin. - Channels: allow per-channel model overrides via `channels.modelByChannel` and note them in /status. Thanks @thewilloftheshadow. - Telegram/Streaming: simplify preview streaming config to `channels.telegram.streaming` (boolean), auto-map legacy `streamMode` values, and remove block-vs-partial preview branching. (#22012) thanks @obviyus. diff --git a/docs/concepts/model-providers.md b/docs/concepts/model-providers.md index 01d1029e01c..c8037d63935 100644 --- a/docs/concepts/model-providers.md +++ b/docs/concepts/model-providers.md @@ -228,8 +228,8 @@ Volcano Engine (火山引擎) provides access to Doubao and other models in Chin ```json5 { agents: { - defaults: { model: { primary: "volcengine/doubao-seed-1-8-251228" } } - } + defaults: { model: { primary: "volcengine/doubao-seed-1-8-251228" } }, + }, } ``` @@ -261,8 +261,8 @@ BytePlus ARK provides access to the same models as Volcano Engine for internatio ```json5 { agents: { - defaults: { model: { primary: "byteplus/seed-1-8-251228" } } - } + defaults: { model: { primary: "byteplus/seed-1-8-251228" } }, + }, } ``` diff --git a/src/agents/models-config.providers.ts b/src/agents/models-config.providers.ts index f999d153cee..b272921c9bd 100644 --- a/src/agents/models-config.providers.ts +++ b/src/agents/models-config.providers.ts @@ -6,10 +6,6 @@ import { } from "../providers/github-copilot-token.js"; import { ensureAuthProfileStore, listProfilesForProvider } from "./auth-profiles.js"; import { discoverBedrockModels } from "./bedrock-discovery.js"; -import { - buildCloudflareAiGatewayModelDefinition, - resolveCloudflareAiGatewayBaseUrl, -} from "./cloudflare-ai-gateway.js"; import { buildBytePlusModelDefinition, BYTEPLUS_BASE_URL, @@ -17,6 +13,10 @@ import { BYTEPLUS_CODING_BASE_URL, BYTEPLUS_CODING_MODEL_CATALOG, } from "./byteplus-models.js"; +import { + buildCloudflareAiGatewayModelDefinition, + resolveCloudflareAiGatewayBaseUrl, +} from "./cloudflare-ai-gateway.js"; import { buildDoubaoModelDefinition, DOUBAO_BASE_URL, diff --git a/src/commands/auth-choice.apply.byteplus.ts b/src/commands/auth-choice.apply.byteplus.ts index edbbd728e28..de62f6bd082 100644 --- a/src/commands/auth-choice.apply.byteplus.ts +++ b/src/commands/auth-choice.apply.byteplus.ts @@ -1,4 +1,3 @@ -import type { ApplyAuthChoiceParams, ApplyAuthChoiceResult } from "./auth-choice.apply.js"; import { resolveEnvApiKey } from "../agents/model-auth.js"; import { upsertSharedEnvVar } from "../infra/env-file.js"; import { @@ -6,6 +5,7 @@ import { normalizeApiKeyInput, validateApiKeyInput, } from "./auth-choice.api-key.js"; +import type { ApplyAuthChoiceParams, ApplyAuthChoiceResult } from "./auth-choice.apply.js"; import { applyPrimaryModel } from "./model-picker.js"; /** Default model for BytePlus auth onboarding. */ diff --git a/src/commands/auth-choice.apply.ts b/src/commands/auth-choice.apply.ts index 54e516f948f..7d9791f34dc 100644 --- a/src/commands/auth-choice.apply.ts +++ b/src/commands/auth-choice.apply.ts @@ -1,7 +1,6 @@ import type { OpenClawConfig } from "../config/config.js"; import type { RuntimeEnv } from "../runtime.js"; import type { WizardPrompter } from "../wizard/prompts.js"; -import type { AuthChoice, OnboardOptions } from "./onboard-types.js"; import { applyAuthChoiceAnthropic } from "./auth-choice.apply.anthropic.js"; import { applyAuthChoiceApiProviders } from "./auth-choice.apply.api-providers.js"; import { applyAuthChoiceBytePlus } from "./auth-choice.apply.byteplus.js"; @@ -16,6 +15,7 @@ import { applyAuthChoiceQwenPortal } from "./auth-choice.apply.qwen-portal.js"; import { applyAuthChoiceVllm } from "./auth-choice.apply.vllm.js"; import { applyAuthChoiceVolcengine } from "./auth-choice.apply.volcengine.js"; import { applyAuthChoiceXAI } from "./auth-choice.apply.xai.js"; +import type { AuthChoice, OnboardOptions } from "./onboard-types.js"; export type ApplyAuthChoiceParams = { authChoice: AuthChoice; diff --git a/src/commands/auth-choice.apply.volcengine.ts b/src/commands/auth-choice.apply.volcengine.ts index 7b22b964908..0616dc177ad 100644 --- a/src/commands/auth-choice.apply.volcengine.ts +++ b/src/commands/auth-choice.apply.volcengine.ts @@ -1,4 +1,3 @@ -import type { ApplyAuthChoiceParams, ApplyAuthChoiceResult } from "./auth-choice.apply.js"; import { resolveEnvApiKey } from "../agents/model-auth.js"; import { upsertSharedEnvVar } from "../infra/env-file.js"; import { @@ -6,6 +5,7 @@ import { normalizeApiKeyInput, validateApiKeyInput, } from "./auth-choice.api-key.js"; +import type { ApplyAuthChoiceParams, ApplyAuthChoiceResult } from "./auth-choice.apply.js"; import { applyPrimaryModel } from "./model-picker.js"; /** Default model for Volcano Engine auth onboarding. */ diff --git a/src/commands/onboard-non-interactive/local/auth-choice.ts b/src/commands/onboard-non-interactive/local/auth-choice.ts index ea97d12e51a..17aac159327 100644 --- a/src/commands/onboard-non-interactive/local/auth-choice.ts +++ b/src/commands/onboard-non-interactive/local/auth-choice.ts @@ -8,6 +8,7 @@ import { shortenHomePath } from "../../../utils.js"; import { normalizeSecretInput } from "../../../utils/normalize-secret-input.js"; import { buildTokenProfileId, validateAnthropicSetupToken } from "../../auth-token.js"; import { applyGoogleGeminiModelDefault } from "../../google-gemini-model-default.js"; +import { applyPrimaryModel } from "../../model-picker.js"; import { applyAuthProfileConfig, applyCloudflareAiGatewayConfig, @@ -55,7 +56,6 @@ import { resolveCustomProviderId, } from "../../onboard-custom.js"; import type { AuthChoice, OnboardOptions } from "../../onboard-types.js"; -import { applyPrimaryModel } from "../../model-picker.js"; import { applyOpenAIConfig } from "../../openai-model-default.js"; import { detectZaiEndpoint } from "../../zai-endpoint-detect.js"; import { resolveNonInteractiveApiKey } from "../api-keys.js";