Skip to main content

bub-web-search

Provider-selectable web tools for bub, covering two capabilities:

  • web.search: search the web, backed by one search provider
  • web.read: read a webpage as clean markdown, backed by one reader provider

Each capability has its own provider dimension, so they can be mixed freely (e.g. SearXNG for search, Jina for reading).

Search providers

Set BUB_SEARCH_PROVIDER (or provider in the web-search: config section) to enable exactly one search provider:

  • ollama
  • searxng
  • jina

If the provider is unset it is inferred from which provider-specific configuration is present. If nothing resolves, web.search is not registered.

Reader providers

There is no explicit reader selector: web.read is enabled by configuring a reader-capable platform. Currently that means a jina_api_key (Jina Reader); without one, web.read is not registered. A selector field will only be introduced once more than one reader platform exists.

Installation

bub install bub-web-search

Run bub onboard to select a provider and write its configuration interactively.

Ollama

Required:

  • BUB_SEARCH_PROVIDER=ollama
  • BUB_SEARCH_OLLAMA_API_KEY

Optional:

  • BUB_SEARCH_OLLAMA_API_BASE
    • Default: https://ollama.com/api

The web.search tool accepts query and max_results.

Jina

Required:

  • BUB_SEARCH_PROVIDER=jina for search; BUB_SEARCH_JINA_API_KEY alone already enables the web.read reader
  • BUB_SEARCH_JINA_API_KEY

Optional:

  • BUB_SEARCH_JINA_SEARCH_BASE
    • Default: https://s.jina.ai
  • BUB_SEARCH_JINA_READER_BASE
    • Default: https://r.jina.ai
  • BUB_SEARCH_JINA_TIMEOUT_SECONDS
    • Default: 30

The web.search tool accepts query. The web.read tool accepts url and returns the page content as markdown.

All settings can also be written to the web-search: section of the Bub config file, e.g.:

web-search:
  provider: jina
  jina_api_key: jina_...

or mixing platforms per capability (SearXNG searches, Jina reads):

web-search:
  provider: searxng
  searxng_base_url: https://searx.example.com
  jina_api_key: jina_...

SearXNG

Required:

  • BUB_SEARCH_PROVIDER=searxng
  • BUB_SEARCH_SEARXNG_BASE_URL

Optional:

  • BUB_SEARCH_SEARXNG_TIMEOUT_SECONDS
    • Default: 10
  • BUB_SEARCH_SEARXNG_DEFAULT_LANGUAGE
  • BUB_SEARCH_SEARXNG_DEFAULT_SAFE_SEARCH
    • 0 off, 1 moderate, 2 strict
    • Default: 1
  • BUB_SEARCH_SEARXNG_USER_AGENT
    • Default: bub-web-search/1.0
  • BUB_SEARCH_SEARXNG_AUTH_HEADER
  • BUB_SEARCH_SEARXNG_AUTH_VALUE

The searxng.search tool accepts:

  • query
  • max_results
  • categories
  • engines
  • language
  • time_range
  • safe_search

The SearXNG instance must allow JSON responses from its /search endpoint.

Replace the package with bub-web-search, set BUB_SEARCH_PROVIDER=searxng, and rename the environment variables:

  • BUB_SEARXNG_SEARCH_BASE_URL to BUB_SEARCH_SEARXNG_BASE_URL
  • other BUB_SEARXNG_SEARCH_* variables to BUB_SEARCH_SEARXNG_*

Metadata

Release files for bub-web-search 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bub-web-search 0.1.1
File Size Uploaded Provenance
bub_web_search-0.1.1.tar.gz 8.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for bub-web-search 0.1.1
File Interpreter ABI Platform
bub_web_search-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 20.3 kB

Release files / bub_web_search-0.1.1.tar.gz

Download URL bub_web_search-0.1.1.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
81030ba3b1e540adee18be32fa998c4613bd02fcabc3fcd4c347d17a7e5b402f
BLAKE2b-256 checksum
How to use checksums
8a33053e633a0958e5551831b65e8f2312d8771681c8a2d21f7a7340bceb84f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / bub_web_search-0.1.1-py3-none-any.whl

Download URL bub_web_search-0.1.1-py3-none-any.whl
Size 11.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
30fa5f59cd4a0a9be1ed3c0eb55c9c1a8b8386e5bed2ad4904d76f17ae80b785
BLAKE2b-256 checksum
How to use checksums
93bdb6a84a10e86b48f7e05a6452dd68b5adc192e135e9a12aa5fa42e8a2df70
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for bub-web-search 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page