Files
openclaw/extensions/brave/web-search-contract-api.ts

29 lines
921 B
TypeScript

import {
createWebSearchProviderContractFields,
type WebSearchProviderPlugin,
} from "openclaw/plugin-sdk/provider-web-search-config-contract";
export function createBraveWebSearchProvider(): WebSearchProviderPlugin {
const credentialPath = "plugins.entries.brave.config.webSearch.apiKey";
return {
id: "brave",
label: "Brave Search",
hint: "Structured results · country/language/time filters",
onboardingScopes: ["text-inference"],
credentialLabel: "Brave Search API key",
envVars: ["BRAVE_API_KEY"],
placeholder: "BSA...",
signupUrl: "https://brave.com/search/api/",
docsUrl: "https://docs.openclaw.ai/brave-search",
autoDetectOrder: 10,
credentialPath,
...createWebSearchProviderContractFields({
credentialPath,
searchCredential: { type: "top-level" },
configuredCredential: { pluginId: "brave" },
}),
createTool: () => null,
};
}