> ## Documentation Index
> Fetch the complete documentation index at: https://docs.olostep.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Olostep + Nanobot Integratie

> Gebruik Olostep als een webzoek-backend voor nanobot’s web_search tool.

Olostep voegt een zoek-backend toe voor nanobot's `web_search` tool, waardoor agenten AI-vriendelijke webantwoorden en bronlinks krijgen zonder dat je een aangepaste retrieval-pipeline hoeft te bouwen.

## Functies

<CardGroup cols={2}>
  <Card title="AI Antwoorden" icon="sparkles">
    Geef een beknopt antwoord plus ondersteunende bronlinks.
  </Card>

  <Card title="Eenvoudige Installatie" icon="plug">
    Schakel de provider in met een enkele configuratiewaarde en een API-sleutel.
  </Card>

  <Card title="Optionele Afhankelijkheid" icon="boxes-stacked">
    Installeer Olostep alleen wanneer je het nodig hebt.
  </Card>

  <Card title="Proxy Ondersteuning" icon="network-wired">
    Routeer verzoeken via `tools.web.proxy` indien nodig.
  </Card>

  <Card title="Veilige Terugvallen" icon="shield-halved">
    Valt terug op DuckDuckGo wanneer er geen Olostep-sleutel beschikbaar is.
  </Card>

  <Card title="Genormaliseerde Uitvoer" icon="list">
    Gebruikt dezelfde webzoek-uitvoerformattering als de andere providers.
  </Card>
</CardGroup>

## Installatie

<CodeGroup>
  ```bash pip theme={null}
  pip install "nanobot-ai[olostep]"
  ```

  ```bash poetry theme={null}
  poetry add "nanobot-ai[olostep]"
  ```
</CodeGroup>

<Note>
  Als je afhankelijkheden handmatig beheert, is het onderliggende pakket `olostep>=0.1.0`.
</Note>

## Configuratie

Stel je API-sleutel in met een omgevingsvariabele of je nanobot-configuratie.

### Omgevingsvariabele

```bash theme={null}
export OLOSTEP_API_KEY="your-api-key"
```

### Configuratiebestand

Voeg dit toe aan `~/.nanobot/config.json`:

```json theme={null}
{
  "tools": {
    "web": {
      "search": {
        "provider": "olostep",
        "apiKey": "YOUR_OLOSTEP_API_KEY"
      }
    }
  }
}
```

### Optionele proxy

Als je omgeving een proxy vereist, configureer deze dan eenmalig onder `tools.web.proxy`:

```json theme={null}
{
  "tools": {
    "web": {
      "proxy": "http://127.0.0.1:7890"
    }
  }
}
```

## Beschikbare Tools / Methoden

### `web_search`

Gebruik Olostep door `tools.web.search.provider` in te stellen op `olostep`.

#### Parameters

<ParamField path="provider" type="string">
  Stel in op `olostep` om deze integratie in te schakelen. Standaard: `duckduckgo`
</ParamField>

<ParamField path="apiKey" type="string">
  Olostep API-sleutel. Je kunt ook de `OLOSTEP_API_KEY` omgevingsvariabele gebruiken.
</ParamField>

<ParamField path="baseUrl" type="string">
  Niet gebruikt door Olostep. Wordt behouden voor configuratieconsistentie.
</ParamField>

<ParamField path="maxResults" type="integer" default="5">
  Resultaten per zoekopdracht, van 1–10.
</ParamField>

<ParamField path="timeout" type="integer" default="30">
  Zoek-timeout in seconden.
</ParamField>

<ParamField path="proxy" type="string or null">
  Proxy-URL geconfigureerd onder `tools.web`.
</ParamField>

<CodeGroup>
  ```json Basic Setup theme={null}
  {
    "tools": {
      "web": {
        "search": {
          "provider": "olostep",
          "apiKey": "YOUR_OLOSTEP_API_KEY"
        }
      }
    }
  }
  ```

  ```json With Environment Variable theme={null}
  {
    "tools": {
      "web": {
        "search": {
          "provider": "olostep"
        }
      }
    }
  }
  ```

  ```bash theme={null}
  export OLOSTEP_API_KEY="your-api-key"
  ```

  ```json With Proxy theme={null}
  {
    "tools": {
      "web": {
        "proxy": "http://127.0.0.1:7890",
        "search": {
          "provider": "olostep",
          "apiKey": "YOUR_OLOSTEP_API_KEY"
        }
      }
    }
  }
  ```
</CodeGroup>

## Volledige Agent Voorbeelden

### Voorbeeld 1: Snelle Onderzoeksassistent

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config()
    result = await bot.run(
        "Use web search to summarize the latest Olostep SDK capabilities and cite sources.",
        session_key="olostep-research",
    )
    print(result.content)


asyncio.run(main())
```

### Voorbeeld 2: Onderzoeksworkflow in een Werkruimte

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config(workspace="/home/user/projects/research")
    result = await bot.run(
        "Find recent documentation for programmatic web access tools and list the key tradeoffs.",
        session_key="olostep-workspace-demo",
    )
    print(result.content)


asyncio.run(main())
```

### Voorbeeld 3: Proxy-bewuste Zoekopstelling

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config(workspace="/home/user/projects/research")
    result = await bot.run(
        "Search for implementation notes about web-scraping SDKs and summarize the differences.",
        session_key="olostep-proxy-demo",
    )
    print(result.content)


asyncio.run(main())
```

## Configuratie / Opties

* Stel `tools.web.search.provider` in op `olostep` om de integratie in te schakelen.
* Houd `tools.web.enable` als `true` als je zowel `web_search` als `web_fetch` wilt.
* Stel `tools.web.enable` in op `false` om alle ingebouwde webtools uit te schakelen.
* Stel `tools.web.proxy` in als je omgeving uitgaand verkeer via een proxy vereist.
* Laat `provider` leeg als je het standaard DuckDuckGo-terugvalgedrag wilt.

### Terugvalgedrag

Als Olostep is geselecteerd maar er geen API-sleutel beschikbaar is, valt nanobot terug op DuckDuckGo in plaats van hard te falen.

## Gespecialiseerde Functies

* **Bronbewuste antwoorden** — Olostep retourneert een antwoord plus bronlinks.
* **Gedeelde opmaak** — resultaten worden weergegeven in dezelfde genormaliseerde zoekuitvoer die door de andere providers wordt gebruikt.
* **Geen harde afhankelijkheid** — de provider wordt geïmporteerd achter een `try/except` guard, zodat nanobot nog steeds werkt zonder Olostep geïnstalleerd.
* **Proxy-bewuste transport** — `tools.web.proxy` wordt toegepast op de onderliggende HTTP-client die door de integratie wordt gebruikt.

## Prijzen

Olostep-prijzen worden direct door Olostep beheerd en kunnen in de loop van de tijd veranderen. Controleer je Olostep-accountdashboard voor huidige plannen, quota's en gebruikskosten.

## Ondersteuning

* **PyPI**: [pypi.org/project/olostep](https://pypi.org/project/olostep/)
* **Documentatie**: [docs.olostep.com](https://docs.olostep.com)
* **Startpagina**: [olostep.com](https://www.olostep.com)
* **GitHub-repository**: [github.com/olostep-api/olostep-py](https://github.com/olostep-api/olostep-py)
* **GitHub-issues**: [github.com/olostep-api/olostep-py/issues](https://github.com/olostep-api/olostep-py/issues)
* **E-mail**: [team@olostep.com](mailto:team@olostep.com)

## Gerelateerde Bronnen

<CardGroup cols={2}>
  <Card title="Answers API" icon="question" href="/features/answers/answers">
    Leer meer over het Answers eindpunt dat deze integratie aandrijft
  </Card>

  <Card title="Python SDK" icon="python" href="/sdks/python">
    Ontdek de Olostep Python SDK
  </Card>

  <Card title="Zoekresultaten" icon="magnifying-glass" href="/searches/searches">
    Begrijp de webzoekmogelijkheden
  </Card>

  <Card title="API Documentatie" icon="book" href="/get-started/authentication">
    Blader door de volledige API-referentie
  </Card>
</CardGroup>
