eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
40 lines (39 loc) • 1.49 kB
TypeScript
import type { WebSearchProvider } from "#shared/web-search.js";
export type { WebSearchProvider };
declare const WEB_SEARCH_TOOL_KIND = "eve:web-search-tool";
/** Configuration accepted by {@link webSearch}. */
export interface WebSearchToolInput {
/** Provider to use when the agent model is routed through AI Gateway. */
readonly provider: WebSearchProvider;
}
/**
* Provider-managed web search configuration.
*
* Export this from `agent/tools/web_search.ts` to select the AI Gateway
* search provider for that agent. Direct provider models continue to use
* their native web search implementation.
*/
export interface WebSearchToolDefinition {
readonly kind: typeof WEB_SEARCH_TOOL_KIND;
readonly provider: WebSearchProvider;
}
/**
* Configures the framework-provided `web_search` tool.
*
* When no configuration file is present, eve uses Exa for AI Gateway
* models.
*
* @example
* ```ts
* // agent/tools/web_search.ts
* import { webSearch } from "eve/tools/web_search";
*
* export default webSearch({ provider: "parallel" });
* ```
*/
export declare function webSearch(input: WebSearchToolInput): WebSearchToolDefinition;
/** Default provider-managed web search configuration. */
export declare const defaultWebSearch: WebSearchToolDefinition;
export default defaultWebSearch;
/** Returns whether a value is a provider-managed web search definition. */
export declare function isWebSearchToolDefinition(value: unknown): value is WebSearchToolDefinition;