Skip to main content

Web Search Packages

Built-in web search packages install a package-owned web_search authored tool. The current providers are Brave Search and Tavily Search.

Install only one web search provider package in a core at a time. Both packages target:

agent/tools/web_search/

Packages

PackageProviderCapability
web_search_braveBrave Searchnetwork.fetch
web_search_tavilyTavily Searchnetwork.fetch

Both packages also install a provider-owned lib:

agent/lib/web_search_brave/
agent/lib/web_search_tavily/

Install

Use the interactive manager:

uv run demiurge package

Or preview and install with subcommands:

uv run demiurge package install web_search_brave --core assistant --preview
uv run demiurge package install web_search_brave --core assistant

To switch providers:

uv run demiurge package uninstall web_search_brave --core assistant
uv run demiurge package install web_search_tavily --core assistant

Options and Credentials

PackageOptionEnvironment variables
web_search_braveapi_keyDEMIURGE_BRAVE_SEARCH_API_KEY, BRAVE_SEARCH_API_KEY, or BRAVE_API_KEY
web_search_tavilyapi_keyDEMIURGE_TAVILY_API_KEY or TAVILY_API_KEY

The api_key option is optional and secret. Leave it empty to use environment variables at runtime.

Tool Approval

Both packages install web_search with:

FieldValue
riskmedium
approval_policyprompt
capabilitynetwork.fetch
display_policysummary
model_output_policycontent

The host approval and capability systems still control actual network use.

Brave Tool Arguments

web_search_brave accepts:

ArgumentDescription
queryRequired search query.
countNumber of results, 1 to 20. Default is 5.
countryOptional 2-letter country code.
search_langOptional Brave search language code.
ui_langOptional UI locale.
safesearchoff, moderate, or strict.
freshnessBrave time filter: pd, pw, pm, or py.
date_after and date_beforeOptional YYYY-MM-DD range. They must be provided together.

Tavily Tool Arguments

web_search_tavily accepts:

ArgumentDescription
queryRequired search query.
search_depthbasic or advanced.
topicgeneral, news, or finance.
time_rangeday, week, month, year, d, w, m, or y.
start_date and end_dateOptional YYYY-MM-DD bounds.
max_resultsNumber of results, 1 to 20. Default is 5.
include_answerfalse, true, basic, or advanced.
include_domainsOptional list of included domains.
exclude_domainsOptional list of excluded domains.
countryOptional country hint.

Verify

List installed packages:

uv run demiurge package list --core assistant

Inspect tools in the TUI:

/tools

Run a turn that asks for current information. The model should request approval before the web_search tool performs a network call.

Uninstall

uv run demiurge package uninstall web_search_brave --core assistant --preview
uv run demiurge package uninstall web_search_brave --core assistant

Uninstall removes the package-owned web_search tool and provider lib.