mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-22 06:32:00 +00:00
test(contracts): split plugin registration lanes
This commit is contained in:
127
test/helpers/plugins/plugin-registration-contract-cases.ts
Normal file
127
test/helpers/plugins/plugin-registration-contract-cases.ts
Normal file
@@ -0,0 +1,127 @@
|
||||
import { describePluginRegistrationContract } from "./plugin-registration-contract.js";
|
||||
|
||||
type PluginRegistrationContractParams = Parameters<typeof describePluginRegistrationContract>[0];
|
||||
|
||||
export const pluginRegistrationContractCases = {
|
||||
anthropic: {
|
||||
pluginId: "anthropic",
|
||||
providerIds: ["anthropic"],
|
||||
mediaUnderstandingProviderIds: ["anthropic"],
|
||||
cliBackendIds: ["claude-cli"],
|
||||
requireDescribeImages: true,
|
||||
},
|
||||
brave: {
|
||||
pluginId: "brave",
|
||||
webSearchProviderIds: ["brave"],
|
||||
},
|
||||
deepgram: {
|
||||
pluginId: "deepgram",
|
||||
mediaUnderstandingProviderIds: ["deepgram"],
|
||||
},
|
||||
duckduckgo: {
|
||||
pluginId: "duckduckgo",
|
||||
webSearchProviderIds: ["duckduckgo"],
|
||||
},
|
||||
elevenlabs: {
|
||||
pluginId: "elevenlabs",
|
||||
speechProviderIds: ["elevenlabs"],
|
||||
requireSpeechVoices: true,
|
||||
},
|
||||
exa: {
|
||||
pluginId: "exa",
|
||||
webSearchProviderIds: ["exa"],
|
||||
},
|
||||
fal: {
|
||||
pluginId: "fal",
|
||||
providerIds: ["fal"],
|
||||
imageGenerationProviderIds: ["fal"],
|
||||
},
|
||||
firecrawl: {
|
||||
pluginId: "firecrawl",
|
||||
webFetchProviderIds: ["firecrawl"],
|
||||
webSearchProviderIds: ["firecrawl"],
|
||||
toolNames: ["firecrawl_search", "firecrawl_scrape"],
|
||||
},
|
||||
google: {
|
||||
pluginId: "google",
|
||||
providerIds: ["google", "google-gemini-cli"],
|
||||
webSearchProviderIds: ["gemini"],
|
||||
mediaUnderstandingProviderIds: ["google"],
|
||||
imageGenerationProviderIds: ["google"],
|
||||
cliBackendIds: ["google-gemini-cli"],
|
||||
requireDescribeImages: true,
|
||||
requireGenerateImage: true,
|
||||
},
|
||||
groq: {
|
||||
pluginId: "groq",
|
||||
mediaUnderstandingProviderIds: ["groq"],
|
||||
},
|
||||
microsoft: {
|
||||
pluginId: "microsoft",
|
||||
speechProviderIds: ["microsoft"],
|
||||
requireSpeechVoices: true,
|
||||
},
|
||||
minimax: {
|
||||
pluginId: "minimax",
|
||||
providerIds: ["minimax", "minimax-portal"],
|
||||
mediaUnderstandingProviderIds: ["minimax", "minimax-portal"],
|
||||
imageGenerationProviderIds: ["minimax", "minimax-portal"],
|
||||
requireDescribeImages: true,
|
||||
requireGenerateImage: true,
|
||||
},
|
||||
mistral: {
|
||||
pluginId: "mistral",
|
||||
mediaUnderstandingProviderIds: ["mistral"],
|
||||
},
|
||||
moonshot: {
|
||||
pluginId: "moonshot",
|
||||
providerIds: ["moonshot"],
|
||||
webSearchProviderIds: ["kimi"],
|
||||
mediaUnderstandingProviderIds: ["moonshot"],
|
||||
requireDescribeImages: true,
|
||||
manifestAuthChoice: {
|
||||
pluginId: "kimi",
|
||||
choiceId: "kimi-code-api-key",
|
||||
choiceLabel: "Kimi Code API key (subscription)",
|
||||
groupId: "moonshot",
|
||||
groupLabel: "Moonshot AI (Kimi K2.5)",
|
||||
groupHint: "Kimi K2.5",
|
||||
},
|
||||
},
|
||||
openai: {
|
||||
pluginId: "openai",
|
||||
providerIds: ["openai", "openai-codex"],
|
||||
speechProviderIds: ["openai"],
|
||||
mediaUnderstandingProviderIds: ["openai", "openai-codex"],
|
||||
imageGenerationProviderIds: ["openai"],
|
||||
cliBackendIds: ["codex-cli"],
|
||||
requireSpeechVoices: true,
|
||||
requireDescribeImages: true,
|
||||
requireGenerateImage: true,
|
||||
},
|
||||
openrouter: {
|
||||
pluginId: "openrouter",
|
||||
providerIds: ["openrouter"],
|
||||
mediaUnderstandingProviderIds: ["openrouter"],
|
||||
requireDescribeImages: true,
|
||||
},
|
||||
perplexity: {
|
||||
pluginId: "perplexity",
|
||||
webSearchProviderIds: ["perplexity"],
|
||||
},
|
||||
tavily: {
|
||||
pluginId: "tavily",
|
||||
webSearchProviderIds: ["tavily"],
|
||||
toolNames: ["tavily_search", "tavily_extract"],
|
||||
},
|
||||
xai: {
|
||||
pluginId: "xai",
|
||||
providerIds: ["xai"],
|
||||
webSearchProviderIds: ["grok"],
|
||||
},
|
||||
zai: {
|
||||
pluginId: "zai",
|
||||
mediaUnderstandingProviderIds: ["zai"],
|
||||
requireDescribeImages: true,
|
||||
},
|
||||
} satisfies Record<string, PluginRegistrationContractParams>;
|
||||
Reference in New Issue
Block a user