github nicobailon/pi-web-access v0.44.0

3 hours ago

pi-web-access 0.44.0 lets you send most search providers through your own API gateway or proxy. Set a base URL in config or with an environment variable, and requests keep each provider's normal paths after your gateway's prefix. API keys are now removed whenever a provider redirects a request to a different site. If you work through Pi's codemode or tool_search, the web tools can also add nothing to your context until a script actually calls one.

Highlights

  • Your own gateway for about 24 providers: Parallel, Serper, SerpApi, Perplexity, DeepSeek, Ollama, Jina, Mistral, and more.
  • Keys stay with the provider: API key headers and the api_key query parameter are dropped when a redirect goes to a different site.
  • Leaner context with codemode: the new "toolActivation": "none" removes the web_enable loader, so scripts load only the web tool they need.

Changelog

Highlights

  • Send most search providers through your own API gateway or proxy, using a config key or an environment variable per provider.
  • API keys are removed when a provider redirects a request to a different site.
  • If you use Pi's codemode or tool_search, the web tools can now add nothing to your context until a script actually calls one.

Added

  • Gateway support for Parallel, Serper, SerpApi, Perplexity, DeepSeek, Ollama, Jina search, Mistral, and the other providers listed in the README's gateway table. Set <provider>BaseUrl in config, or the matching environment variable, which wins over config. Ollama and DeepSeek read PI_OLLAMA_BASE_URL and PI_DEEPSEEK_BASE_URL, because the plain names are often already set for a local Ollama server or other DeepSeek clients. Any path prefix on your gateway URL is kept, and the official endpoints stay the default. When a provider redirects to a different site, API key headers and the api_key query parameter are dropped. Thanks to @XWIlluDelu for PR #590.
  • "toolActivation": "none" removes the web_enable loader, so the web tools are reached only from Pi codemode scripts or tool_search and add no tool definitions until a script calls one. It only works with "toolExposure": "deferred", and it needs codemode or tool_search turned on in Pi. The other toolActivation values work as before. Thanks to @johnhenaot for PR #591.

Changed

  • Jina search rejects the queries . and .., which would otherwise escape a gateway's path. Provider API calls follow at most 5 redirects.

Don't miss a new pi-web-access release

NewReleases is sending notifications on new releases.