config
Configuration for the web-search plugin: the typed WebSearchPluginConfig (the plugin’s slice of AppKit config), the JSON Schema the manifest publishes for it, and resolveWebSearchConfig which layers that config over environment defaults into the concrete ResolvedWebSearchConfig the runtime + tools read.
web_search runs on the Databricks Model Serving native web-search tool
(see provider.ts / search.ts), so the key knob is which web-search-
capable model to use. It resolves independently of the calling agent’s chat
model: model (a name, loose name, or capability class) is fuzzy-matched
against the workspace catalogue, and when nothing is pinned the
WebSearchPluginConfig.modelFallbacks order (Gemini, then GPT, then a
repo floor) picks the first web-search-capable endpoint that exists.
Which endpoint id is used follows the standard precedence - explicit plugin config, then environment, then a default - with two environment sources:
modelin plugin config;WEB_SEARCH_MODEL, the dedicated override, so a deployment can point web search at a different endpoint than the agent’s chat model;DATABRICKS_SERVING_ENDPOINT_NAME, AppKit’s standard name for a Model Serving binding, honored so the resource declared in the manifest wires this plugin up like any other. Because that binding is shared with whatever else the app serves, it is treated as a preference: an endpoint that cannot run the native web-search tool is skipped in favor of WebSearchPluginConfig.modelFallbacks rather than failing the call. A pin from (1) or (2) is explicit and DOES fail;- otherwise the fallback order, resolved against the live catalogue.
Which model wins is decided lazily, at call time, against the live
catalogue. Resolution here is eager about everything else and fails loudly
on a contradiction: an unparseable WEB_SEARCH_TOOLS, an unknown
UrlPolicyMode, or a URL policy that disagrees with the allow-list it
was given.
Env fallbacks: WEB_SEARCH_MODEL, DATABRICKS_SERVING_ENDPOINT_NAME,
WEB_SEARCH_MODEL_FALLBACKS, WEB_SEARCH_TOOLS (JSON),
WEB_SEARCH_URL_POLICY, WEB_SEARCH_ALLOWED_URLS,
WEB_SEARCH_MAX_CITATIONS, WEB_SEARCH_FETCH_MAX_LENGTH,
WEB_SEARCH_TIMEOUT_MS, WEB_SEARCH_SCRAPE_FALLBACK, WEB_SEARCH_FUZZY,
WEB_SEARCH_FUZZY_THRESHOLD.
Interfaces
Section titled “Interfaces”Type Aliases
Section titled “Type Aliases”Variables
Section titled “Variables”- DEFAULT_FETCH_MAX_LENGTH
- DEFAULT_MAX_CITATIONS
- DEFAULT_MODEL_FALLBACKS
- DEFAULT_TIMEOUT_MS
- MODEL_ENV
- SERVING_ENDPOINT_ENV
- WEB_SEARCH_CONFIG_SCHEMA