pi-web-search
v1.3.1
Published
Provider-native web search for pi across Google Gemini, OpenAI, and Anthropic, plus Gemini URL Context
Maintainers
Readme
pi-web-search
Provider-native web search for pi, across Google Gemini, OpenAI, and Anthropic, plus Gemini-only URL Context analysis.
Tools
web_search
Search the web using your currently selected model. Automatically picks the right provider API:
| Provider | API | |---|---| | Google Gemini | Grounding with Google Search | | OpenAI | Responses API web search | | OpenAI Codex | Codex Responses API web search | | Anthropic | Messages API web search |
Supports passing up to 20 additional URLs to analyze alongside the query.
url_context
Gemini-only. Analyze up to 20 public URLs — web pages, documents, images, and YouTube videos. Uses Gemini's native URL Context retrieval with verified metadata.
When using google-generative-ai, YouTube URLs are passed as file_data for native video understanding.
Install
pi install npm:pi-web-searchUsage
No extra config needed. Select a supported current model in pi and the tools auto-detect the matching provider API.
web_search will not scan configured models and pick one automatically when the current model does not support native search. To use a dedicated search model, opt in explicitly with ~/.pi/agent/web-search.json:
{
"provider": "openai",
"model": "gpt-5.1"
}When this file exists, web_search uses the configured provider/model first. If it is missing, web_search uses the current conversation model. If the selected model does not support native search, the tool returns an error instead of falling back.
url_context is automatically removed from active tools when using a non-Gemini model.
Test
cp .env.example .env # edit with your models
npm test # unit tests
npm run test:real:web-search
npm run test:real:url-contextLicense
MIT
