Files
openclaw/extensions/moonshot/provider-catalog.ts
2026-06-04 21:02:07 -04:00

36 lines
1.2 KiB
TypeScript

// Moonshot provider module implements model/runtime integration.
import {
buildManifestModelProviderConfig,
applyProviderNativeStreamingUsageCompat,
supportsNativeStreamingUsageCompat,
} from "openclaw/plugin-sdk/provider-catalog-shared";
import type { ModelProviderConfig } from "openclaw/plugin-sdk/provider-model-shared";
import manifest from "./openclaw.plugin.json" with { type: "json" };
export const MOONSHOT_BASE_URL = "https://api.moonshot.ai/v1";
export const MOONSHOT_CN_BASE_URL = "https://api.moonshot.cn/v1";
export const MOONSHOT_DEFAULT_MODEL_ID = "kimi-k2.6";
export function isNativeMoonshotBaseUrl(baseUrl: string | undefined): boolean {
return supportsNativeStreamingUsageCompat({
providerId: "moonshot",
baseUrl,
});
}
export function applyMoonshotNativeStreamingUsageCompat(
provider: ModelProviderConfig,
): ModelProviderConfig {
return applyProviderNativeStreamingUsageCompat({
providerId: "moonshot",
providerConfig: provider,
});
}
export function buildMoonshotProvider(): ModelProviderConfig {
return buildManifestModelProviderConfig({
providerId: "moonshot",
catalog: manifest.modelCatalog.providers.moonshot,
});
}