Plugin SDK: route provider metadata through public models subpath

This commit is contained in:
Vincent Koc
2026-03-18 11:17:50 -07:00
parent 62edfdffbd
commit fa52d122c4
5 changed files with 45 additions and 130 deletions

View File

@@ -36,8 +36,10 @@ export { OPENCODE_ZEN_DEFAULT_MODEL } from "../plugins/provider-model-defaults.j
export { OPENCODE_ZEN_DEFAULT_MODEL_REF } from "../agents/opencode-zen-models.js";
export {
buildMinimaxApiModelDefinition,
buildMinimaxModelDefinition,
DEFAULT_MINIMAX_BASE_URL,
MINIMAX_API_BASE_URL,
MINIMAX_API_COST,
MINIMAX_CN_API_BASE_URL,
MINIMAX_HOSTED_COST,
MINIMAX_HOSTED_MODEL_ID,
@@ -47,6 +49,7 @@ export {
export {
buildMistralModelDefinition,
MISTRAL_BASE_URL,
MISTRAL_DEFAULT_COST,
MISTRAL_DEFAULT_MODEL_ID,
MISTRAL_DEFAULT_MODEL_REF,
} from "../../extensions/mistral/model-definitions.js";
@@ -54,15 +57,29 @@ export {
buildModelStudioDefaultModelDefinition,
buildModelStudioModelDefinition,
MODELSTUDIO_CN_BASE_URL,
MODELSTUDIO_DEFAULT_COST,
MODELSTUDIO_DEFAULT_MODEL_ID,
MODELSTUDIO_DEFAULT_MODEL_REF,
MODELSTUDIO_GLOBAL_BASE_URL,
} from "../../extensions/modelstudio/model-definitions.js";
export { MOONSHOT_BASE_URL } from "../../extensions/moonshot/provider-catalog.js";
export {
buildMoonshotProvider,
MOONSHOT_BASE_URL,
MOONSHOT_DEFAULT_MODEL_ID,
} from "../../extensions/moonshot/provider-catalog.js";
export { MOONSHOT_CN_BASE_URL } from "../../extensions/moonshot/onboard.js";
export {
KIMI_CODING_BASE_URL,
KIMI_CODING_DEFAULT_MODEL_ID,
} from "../../extensions/kimi-coding/provider-catalog.js";
export {
QIANFAN_BASE_URL,
QIANFAN_DEFAULT_MODEL_ID,
} from "../../extensions/qianfan/provider-catalog.js";
export {
buildXaiModelDefinition,
XAI_BASE_URL,
XAI_DEFAULT_COST,
XAI_DEFAULT_MODEL_ID,
XAI_DEFAULT_MODEL_REF,
} from "../../extensions/xai/model-definitions.js";
@@ -72,6 +89,7 @@ export {
ZAI_CODING_CN_BASE_URL,
ZAI_CODING_GLOBAL_BASE_URL,
ZAI_CN_BASE_URL,
ZAI_DEFAULT_COST,
ZAI_DEFAULT_MODEL_ID,
ZAI_DEFAULT_MODEL_REF,
ZAI_GLOBAL_BASE_URL,

View File

@@ -16,6 +16,7 @@ import * as lineCoreSdk from "openclaw/plugin-sdk/line-core";
import * as msteamsSdk from "openclaw/plugin-sdk/msteams";
import * as nostrSdk from "openclaw/plugin-sdk/nostr";
import * as ollamaSetupSdk from "openclaw/plugin-sdk/ollama-setup";
import * as providerModelsSdk from "openclaw/plugin-sdk/provider-models";
import * as providerSetupSdk from "openclaw/plugin-sdk/provider-setup";
import * as replyPayloadSdk from "openclaw/plugin-sdk/reply-payload";
import * as routingSdk from "openclaw/plugin-sdk/routing";
@@ -178,6 +179,14 @@ describe("plugin-sdk subpath exports", () => {
);
});
it("exports provider model helpers from the dedicated subpath", () => {
expect(typeof providerModelsSdk.buildMinimaxApiModelDefinition).toBe("function");
expect(typeof providerModelsSdk.buildMinimaxModelDefinition).toBe("function");
expect(typeof providerModelsSdk.buildMoonshotProvider).toBe("function");
expect(typeof providerModelsSdk.resolveZaiBaseUrl).toBe("function");
expect(providerModelsSdk.QIANFAN_BASE_URL).toBe("https://qianfan.baidubce.com/v2");
});
it("exports shared setup helpers from the dedicated subpath", () => {
expect(typeof setupSdk.DEFAULT_ACCOUNT_ID).toBe("string");
expect(typeof setupSdk.createAccountScopedAllowFromSection).toBe("function");