> SpecStream is the live web data engine for teams and agents. This is the Markdown copy of https://specstream.ai/docs/integrations/hob. Every page, with what SpecStream does and costs: https://specstream.ai/llms.txt

# hob

Set hob's SearXNG search provider to SpecStream's address and key, and hob's assistants and background jobs search the web through SpecStream's Search API. There is no SearXNG instance to run beside hob.

[SpecStream for hobAI assistants](https://specstream.ai/integrations/hob.md)

## What you need

-   hob, run with `npx hob-bot`, from source or with Docker. This guide follows hob 1.6.0's source.
-   A SpecStream key. [Get your key](https://specstream.ai/workspace/search?route=searxng&utm_source=hob&utm_medium=howto) on the Search API screen of your SpecStream workspace. New accounts start with $10 of credit, no card.

1.  1

    ## 1. Open the SearXNG provider

    hob's settings are in Chinese. Open **设置** (Settings), then **联网搜索** (Web search). Under **选择服务商** (Choose a provider), or **其他服务商** (Other providers) once one is on, click **SearXNG**.

2.  2

    ## 2. Enter the address and your key

    In **服务地址** (Service address), enter the address below. hob adds `/search` itself, so leave it off.

    In **API Key（可选）** (API key, optional), paste your SpecStream key. hob sends it as `Authorization: Bearer`, which SpecStream accepts, and keeps it on the hob server; it is not shown again after saving.

    服务地址

    ```text
    https://api.specstream.ai/searxng
    ```

3.  3

    ## 3. Save, then turn it on

    Click **保存** (Save). hob runs **测试搜索** (Test search) first and saves only when the test passes. A passing test reads `搜索成功，返回 8 条结果` (search succeeded, 8 results).

    Then switch on **启用** (Enable) at the top of the page.

4.  4

    ## 4. Put it first

    Back on **联网搜索**, the providers under **已启用** (Enabled) are used in order, and the next one is tried when one fails. Click **上移** (Move up) on SearXNG until it is first, or leave it lower as a fallback.

## How hob uses it

Once any provider is on, hob gives assistants and jobs a `web_search` tool. A `fast` search walks the enabled providers in order and stops at the first that answers. A `deep` search asks every enabled provider at once and merges the results by URL, so SearXNG is one call of each deep search.

The setting applies at once, with no restart.

## What hob sends, and what comes back

| hob sends | SpecStream |
| --- | --- |
| `GET {服务地址}/search?q=...&format=json&safesearch=0` | `https://api.specstream.ai/searxng/search` |
| `Authorization: Bearer <key>` | Your SpecStream key |
| Reads `results[].title`, `url` and `content` | SearXNG's JSON shape, with those fields on every result |

## Or keep the key in the address

If you leave **API Key（可选）** empty, put the key in the address instead: `https://api.specstream.ai/searxng/YOUR_SPECSTREAM_KEY`. The address is then saved in hob's settings with the key in it, so the key field is the better place.

## Why not a local SearXNG

hob's own placeholder is a local instance, `http://127.0.0.1:8888`. A stock SearXNG only answers JSON once `json` is in `search.formats`; SearXNG's docs say "Requesting an unset format will return a 403 Forbidden error." A local instance then sends each query on to public engines from your own address.

SpecStream answers in SearXNG's JSON shape on every request, and the search runs on SpecStream's servers.

## What each search costs

Each search through the SearXNG address is one Search API call on the fast tier: $1 per 1,000 searches of up to 10 results, a fifth of the default search's $5. hob asks for up to 20 results, but its SearXNG provider sends no count, so each search gets one page of 10 at that price, and a search that returns nothing costs nothing. **测试搜索** spends one search.

Calls come out of your balance with no quote and no approval. New accounts start with $10 of credit, which covers 10,000 searches at this price.

## Reading pages

The SearXNG provider only searches. hob's `web_fetch` reads pages with the reader of an enabled Exa, Tavily, Jina or Firecrawl provider, or with hob's own HTML reader when none of those is on.

## Limits and errors

-   When search is busy, SpecStream answers `429` and charges nothing. In a `fast` search, hob moves on to the next enabled provider.
-   If the test fails, check that **服务地址** is exactly `https://api.specstream.ai/searxng` and that the key is your SpecStream key. hob hides your keys in its error text.
-   hob in Docker reaches `api.specstream.ai` from inside the container, so no port or network change is needed.

## Turn it off

Open SearXNG under **联网搜索** and switch off **启用**. Questions: [support@specstream.ai](mailto:support@specstream.ai).

## More

[SpecStream for hob](https://specstream.ai/integrations/hob.md) covers what it does in hob on one page. Every other tool has its guide in [Connect your tools](https://specstream.ai/docs/integrations.md). You see the most a request can cost before it starts, and the matches are paid from your balance. [Billing](https://specstream.ai/docs/billing.md) has the details. For help, email [support@specstream.ai](mailto:support@specstream.ai).
