# OpenRouter

Source: https://zshot-cli.com/reference/llm_connections/openrouter/
Markdown: https://zshot-cli.com/reference/llm_connections/openrouter/index.md
Section: [Reference](https://zshot-cli.com/reference/) › [LLM Connections](https://zshot-cli.com/reference/llm_connections/)
Protocol: [`openrouter://`](https://zshot-cli.com/reference/llm_connections/) · Default model: `anthropic/claude-haiku-5.5`
Key env: `OPENROUTER_API_KEY` · [Roles](https://zshot-cli.com/reference/llm_connections/roles/): [Formats](https://zshot-cli.com/reference/llm_connections/roles/#formats) · [Navigates](https://zshot-cli.com/reference/llm_connections/roles/#navigates) · [Writes](https://zshot-cli.com/reference/llm_connections/roles/#writes)
License: [Pro](https://zshot-cli.com/support/licenses/pro)

Runs any model OpenRouter serves, named `maker/model` as OpenRouter names it. The model's protocol sets what it does:

| `protocol=` | Models | Runs as |
| --- | --- | --- |
| `typesafe` | Decision models, the default `typesafe/jev-latest` | [`typesafe`](/reference/llm_connections/typesafe) does: navigator only, choosing among listed alternatives |
| `openai` | Chat models, such as `openai/gpt-6-luna` | A chat provider, which also formats and writes |

Without `protocol=`, a known decision model such as TypeSafe's `jev` speaks `typesafe` and any other model `openai`. [`--llm-usage`](/reference/flags/diagnostics/llm-usage) carries the cost OpenRouter reports for each call, its server tools included.

## Options

| Option | On OpenRouter |
| --- | --- |
| `protocol` | `typesafe` or `openai`, from the model when absent |
| [`tool`](/reference/llm_connections/options#tool) | `web_search` and `web_fetch`, OpenRouter's own server tools, on any chat model. A tool block such as `{"type":"openrouter:web_search","parameters":{"engine":"exa","max_results":3}}` sets their parameters |
| [`vision`](/reference/llm_connections/options#vision-and-frames) | A chat model by its maker's rules: an `openai`, `anthropic`, `google`, `deepseek` or `mistralai` model as on that provider's page, and another maker's by the [Ollama](/reference/llm_connections/ollama) list. A decision model reads no screenshot |
| [`body.<path>`](/reference/llm_connections/options#request-body-fields) | Sent to OpenRouter as written, so `body.max_tool_calls=3` caps the tool calls and `body.provider.order=["anthropic"]` picks where the model runs |
| `header`, `max_tokens`, `temperature`, `top_p`, `frames`, `timeout`, `insecure` | As [listed](/reference/llm_connections/options); the chat options apply to chat models |

## Example

A decision model with a chat model as its writer:

**CLI**

```sh
zshot --navigate "Open the formats page" \
  --navigator-type "openrouter://?protocol=typesafe&name=scout" \
  --navigator-type "openrouter://?model=openai/gpt-6-luna&name=writer&writer=true" \
  -f out.png https://zshot-cli.com/
```

## Related

Flags:

- [`--llm-format-model`](https://zshot-cli.com/reference/flags/document/llm-format-model/)
- [`--navigator-type`](https://zshot-cli.com/reference/flags/navigator/navigator-type/)
- [`--llm-usage`](https://zshot-cli.com/reference/flags/diagnostics/llm-usage/)

Topics:

- [Connection String Options](https://zshot-cli.com/reference/llm_connections/options/)
- [TypeSafe](https://zshot-cli.com/reference/llm_connections/typesafe/)
- [OpenRouter docs](https://openrouter.ai/docs)

## Navigation

- [Examples](https://zshot-cli.com/examples/)
- [Download](https://zshot-cli.com/download/)
- [Purchase](https://zshot-cli.com/purchase/)
- [Reference](https://zshot-cli.com/reference/)
  - [Formats](https://zshot-cli.com/reference/formats/)
  - [Flags](https://zshot-cli.com/reference/flags/)
  - [Agents](https://zshot-cli.com/reference/agents/)
  - [Configuration](https://zshot-cli.com/reference/configuration/)
  - [Crawling](https://zshot-cli.com/reference/crawling/)
  - [Docker](https://zshot-cli.com/reference/docker/)
  - [Exit Codes](https://zshot-cli.com/reference/exit_codes/)
  - [Linux](https://zshot-cli.com/reference/linux/)
  - [LLM Connections](https://zshot-cli.com/reference/llm_connections/)
    - [Connection String Options](https://zshot-cli.com/reference/llm_connections/options/)
    - [Roles](https://zshot-cli.com/reference/llm_connections/roles/)
    - [Anthropic](https://zshot-cli.com/reference/llm_connections/anthropic/)
    - [OpenAI](https://zshot-cli.com/reference/llm_connections/openai/)
    - [Google](https://zshot-cli.com/reference/llm_connections/google/)
    - [Ollama](https://zshot-cli.com/reference/llm_connections/ollama/)
    - [Mistral](https://zshot-cli.com/reference/llm_connections/mistral/)
    - [DeepSeek](https://zshot-cli.com/reference/llm_connections/deepseek/)
    - [Mercury](https://zshot-cli.com/reference/llm_connections/mercury/)
    - [Groq](https://zshot-cli.com/reference/llm_connections/groq/)
    - [HuggingFace](https://zshot-cli.com/reference/llm_connections/huggingface/)
    - [TypeSafe](https://zshot-cli.com/reference/llm_connections/typesafe/)
    - [Cloudflare](https://zshot-cli.com/reference/llm_connections/cloudflare/)
    - **OpenRouter**
    - [stdio](https://zshot-cli.com/reference/llm_connections/stdio/)
  - [LLM Formatting](https://zshot-cli.com/reference/llm_formatting/)
  - [Local Inputs](https://zshot-cli.com/reference/inputs/)
  - [Navigator](https://zshot-cli.com/reference/navigator/)
  - [Security](https://zshot-cli.com/reference/security/)
  - [Server](https://zshot-cli.com/reference/server/)
  - [Shell completions](https://zshot-cli.com/reference/shell_completions/)
  - [Storage](https://zshot-cli.com/reference/storage/)
  - [Timeouts](https://zshot-cli.com/reference/timeouts/)
  - [Web Bot Auth](https://zshot-cli.com/reference/web_bot_auth/)
- [Support](https://zshot-cli.com/support/)
- [Changelog](https://zshot-cli.com/changelog/)

Site index: https://zshot-cli.com/llms.txt

