mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-05 17:05:06 +02:00
130 lines
3.5 KiB
TypeScript
130 lines
3.5 KiB
TypeScript
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"],
|
|
realtimeTranscriptionProviderIds: ["openai"],
|
|
realtimeVoiceProviderIds: ["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>;
|