Enabled when
OPENROUTER_API_KEY is set in your environment.Overview
The@standardagents/openrouter package provides the OpenRouter provider factory for Standard Agents. OpenRouter is a multi-provider gateway that routes requests to various LLM providers (OpenAI, Anthropic, Google, Meta, and more) through a single API.
Key Features
- Access to 200+ models from multiple providers
- Automatic pricing data fetched from OpenRouter API
- Typed
providerOptionsfor routing configuration - Provider selection, fallbacks, and price limits
- Zero Data Retention (ZDR) endpoints
- Provider-executed OpenRouter server tools
Installation
npm
pnpm
yarn
Quick Start
agents/models/claude_sonnet.ts
OpenRouter models automatically fetch pricing from the OpenRouter API. You do not need to specify
inputPrice or outputPrice.Provider Factory
Theopenrouter export is a provider factory function:
Model ID Format
OpenRouter uses aprovider/model-name format for model IDs:
Browse all available models at openrouter.ai/models.
Provider Options
Theopenrouter factory includes a typed schema for routing configuration:
Routing Options
All routing options are nested under theprovider key:
Server Tool Options
OpenRouter server tools are provider-executed tools. Enable the tool names withproviderTools, select them from prompts like normal tools, and pass optional
OpenRouter parameters through providerOptions.serverTools:
serverTools configures native OpenRouter tool parameters only. It is stripped
from the request body after the provider converts selected tools into
openrouter:* tool definitions.
Price Limits
Set hard limits on pricing (request fails if no provider meets threshold):Provider Selection
Control which providers handle your requests:Sorting
Sort available providers by different criteria:Zero Data Retention (ZDR)
For sensitive data, restrict to ZDR endpoints:Performance Preferences
Set soft preferences for throughput and latency:Type Safety
TheproviderOptions type is automatically inferred:
Model Capabilities
Set capabilities for proper framework behavior:Environment Setup
Set your OpenRouter API key:.dev.vars
Example Configurations
Budget-Conscious Model
High-Security Configuration
Multi-Provider Fallback
Performance-Optimized
Tool Calling
OpenRouter tool calls are sent with strict function schemas. The provider normalizes object schemas for OpenAI-backed endpoints by listing every object property inrequired, while Standard Agents Builder still validates the returned tool arguments against the original tool Zod schema before execution.
When tools are present, tool_choice: "auto" is omitted because OpenRouter treats that as the default. This keeps endpoints that support tools but do not advertise the separate tool_choice parameter eligible for routing.
Provider-Executed Server Tools
The OpenRouter provider exposes these built-in server tools throughgetTools():
Standard Agents Builder marks these tools as provider-executed. The OpenRouter provider
translates them to native
openrouter:* tools for both Chat Completions and
Responses requests, and records completed server tool usage through the generic
provider-tool log path.
Responses API
SetproviderOptions.useResponsesApi to true to select the Responses API.
This mode supports tool-call history and image inputs.
Generation settings apply to streaming and non-streaming requests.
inspectRequest() shows the serialized API fields.
Opaque provider options retain their wire field names.
Responses preserve canonical reasoningDetails across turns.
Builder also normalizes stored legacy summary and encrypted detail names before replay.
Encrypted details use the data field.
Each replayed reasoning item retains its provider ID.
A token-limit truncation reports the length finish reason.
Partial image events retain their generated bytes.
Tool-call arguments remain objects.
Invalid JSON argument values use an empty object.
Generation Metadata
Stream finish chunks carry a response ID for metadata lookups. The provider keeps credentials in its configuration. SDK request timeouts produce retryable provider errors. Rate-limit errors retain the SDK response’sRetry-After value in seconds.
OpenRouter provides additional metadata about request routing that can be fetched after completion:
Exports
Next Steps
Models
Learn about model configuration
OpenAI Provider
Direct OpenAI API access
Prompts
Configure prompts with models
defineModel API
Complete API reference