Providers
OpenRouter
OpenRouter stellt eine einheitliche API bereit, die Anfragen über einen einzigen Endpunkt und API-Schlüssel an viele Modelle weiterleitet. Sie ist OpenAI-kompatibel, daher funktionieren die meisten OpenAI-SDKs durch Umstellen der Basis-URL.
Erste Schritte
API-Schlüssel abrufen
Erstellen Sie einen API-Schlüssel unter openrouter.ai/keys.
Onboarding ausführen
openclaw onboard --auth-choice openrouter-api-key
(Optional) Zu einem bestimmten Modell wechseln
Beim Onboarding ist openrouter/auto voreingestellt. Wählen Sie später ein konkretes Modell:
openclaw models set openrouter/<provider>/<model>
Konfigurationsbeispiel
{
env: { OPENROUTER_API_KEY: "sk-or-..." },
agents: {
defaults: {
model: { primary: "openrouter/auto" },
},
},
}
Modellreferenzen
Mitgelieferte Fallback-Beispiele:
| Modellreferenz | Hinweise |
|---|---|
openrouter/auto |
Automatisches Routing von OpenRouter |
openrouter/moonshotai/kimi-k2.6 |
Kimi K2.6 über MoonshotAI |
Bilderzeugung
OpenRouter kann auch das Tool image_generate unterstützen. Verwenden Sie ein OpenRouter-Bildmodell unter agents.defaults.imageGenerationModel:
{
env: { OPENROUTER_API_KEY: "sk-or-..." },
agents: {
defaults: {
imageGenerationModel: {
primary: "openrouter/google/gemini-3.1-flash-image-preview",
timeoutMs: 180_000,
},
},
},
}
OpenClaw sendet Bildanfragen an die Chat-Completions-Bild-API von OpenRouter mit modalities: ["image", "text"]. Gemini-Bildmodelle erhalten unterstützte Hinweise für aspectRatio und resolution über image_config von OpenRouter. Verwenden Sie agents.defaults.imageGenerationModel.timeoutMs für langsamere OpenRouter-Bildmodelle; der timeoutMs-Parameter pro Aufruf des Tools image_generate hat weiterhin Vorrang.
Videoerzeugung
OpenRouter kann auch das Tool video_generate über seine asynchrone /videos-API unterstützen. Verwenden Sie ein OpenRouter-Videomodell unter agents.defaults.videoGenerationModel:
{
env: { OPENROUTER_API_KEY: "sk-or-..." },
agents: {
defaults: {
videoGenerationModel: {
primary: "openrouter/google/veo-3.1-fast",
},
},
},
}
OpenClaw übermittelt Text-zu-Video- und Bild-zu-Video-Jobs an OpenRouter, fragt
die zurückgegebene polling_url ab und lädt das fertige Video von
unsigned_urls von OpenRouter oder dem dokumentierten Job-Inhaltsendpunkt herunter.
Referenzbilder werden standardmäßig als Bilder für den ersten/letzten Frame gesendet; Bilder,
die mit reference_image markiert sind, werden als OpenRouter-Eingabereferenzen gesendet. Der
mitgelieferte Standard google/veo-3.1-fast bewirbt die derzeit unterstützten Dauern von 4/6/8
Sekunden, Auflösungen 720P/1080P und Seitenverhältnisse 16:9/9:16.
Video-zu-Video ist für OpenRouter nicht registriert, da die vorgelagerte
Videoerzeugungs-API derzeit Text- und Bildreferenzen akzeptiert.
Text-to-Speech
OpenRouter kann auch als TTS-Provider über seinen OpenAI-kompatiblen
Endpunkt /audio/speech verwendet werden.
{
messages: {
tts: {
auto: "always",
provider: "openrouter",
providers: {
openrouter: {
model: "hexgrad/kokoro-82m",
voice: "af_alloy",
responseFormat: "mp3",
},
},
},
},
}
Wenn messages.tts.providers.openrouter.apiKey ausgelassen wird, verwendet TTS erneut
models.providers.openrouter.apiKey und danach OPENROUTER_API_KEY.
Authentifizierung und Header
OpenRouter verwendet intern ein Bearer-Token mit Ihrem API-Schlüssel.
Bei echten OpenRouter-Anfragen (https://openrouter.ai/api/v1) fügt OpenClaw außerdem
die dokumentierten App-Attributions-Header von OpenRouter hinzu:
| Header | Wert |
|---|---|
HTTP-Referer |
https://openclaw.ai |
X-OpenRouter-Title |
OpenClaw |
X-OpenRouter-Categories |
cli-agent,cloud-agent,programming-app,creative-writing,writing-assistant,general-chat,personal-agent |
Erweiterte Konfiguration
Antwort-Caching
OpenRouter-Antwort-Caching ist Opt-in. Aktivieren Sie es pro OpenRouter-Modell mit Modellparametern:
{
agents: {
defaults: {
models: {
"openrouter/auto": {
params: {
responseCache: true,
responseCacheTtlSeconds: 300,
},
},
},
},
},
}
OpenClaw sendet X-OpenRouter-Cache: true und, wenn konfiguriert,
X-OpenRouter-Cache-TTL. responseCacheClear: true erzwingt eine Aktualisierung für
die aktuelle Anfrage und speichert die ersetzende Antwort. Snake_case-Aliasse
(response_cache, response_cache_ttl_seconds und
response_cache_clear) werden ebenfalls akzeptiert.
Dies ist getrennt vom Prompt-Caching des Providers und von den Anthropic-Markierungen
cache_control von OpenRouter. Es wird nur auf verifizierte
openrouter.ai-Routen angewendet, nicht auf benutzerdefinierte Proxy-Basis-URLs.
Anthropic-Cache-Markierungen
Auf verifizierten OpenRouter-Routen behalten Anthropic-Modellreferenzen die
OpenRouter-spezifischen Anthropic-Markierungen cache_control bei, die OpenClaw für
bessere Wiederverwendung des Prompt-Cache in System-/Developer-Prompt-Blöcken nutzt.
Anthropic-Reasoning-Prefill
Auf verifizierten OpenRouter-Routen verwerfen Anthropic-Modellreferenzen mit aktiviertem Reasoning abschließende Assistant-Prefill-Turns, bevor die Anfrage OpenRouter erreicht. Das entspricht der Anforderung von Anthropic, dass Reasoning-Konversationen mit einem User- Turn enden.
Thinking- / Reasoning-Injektion
Auf unterstützten Nicht-auto-Routen ordnet OpenClaw die ausgewählte Thinking-Stufe
OpenRouter-Proxy-Reasoning-Payloads zu. Nicht unterstützte Modellhinweise und
openrouter/auto überspringen diese Reasoning-Injektion. Hunter Alpha überspringt außerdem
Proxy-Reasoning für veraltete konfigurierte Modellreferenzen, da OpenRouter
für diese eingestellte Route endgültigen Antworttext in Reasoning-Feldern zurückgeben könnte.
DeepSeek-V4-Reasoning-Replay
Auf verifizierten OpenRouter-Routen füllen openrouter/deepseek/deepseek-v4-flash und
openrouter/deepseek/deepseek-v4-pro fehlenden reasoning_content bei
wiedergegebenen Assistant-Turns auf, sodass Thinking-/Tool-Konversationen die für DeepSeek V4
erforderliche Follow-up-Form behalten. OpenClaw sendet von OpenRouter unterstützte
reasoning_effort-Werte für diese Routen; xhigh ist die höchste beworbene
Stufe, und veraltete max-Overrides werden xhigh zugeordnet.
Nur-OpenAI-Anfrageformung
OpenRouter läuft weiterhin über den Proxy-artigen OpenAI-kompatiblen Pfad, daher
wird native, nur für OpenAI geltende Anfrageformung wie serviceTier, Responses store,
OpenAI-Reasoning-Kompatibilitätspayloads und Prompt-Cache-Hinweise nicht weitergeleitet.
Gemini-gestützte Routen
Gemini-gestützte OpenRouter-Referenzen bleiben auf dem Proxy-Gemini-Pfad: OpenClaw behält dort die Bereinigung von Gemini-Denksignaturen bei, aktiviert aber keine native Gemini- Replay-Validierung oder Bootstrap-Rewrites.
Provider-Routing-Metadaten
Wenn Sie OpenRouter-Provider-Routing unter Modellparametern übergeben, leitet OpenClaw es als OpenRouter-Routing-Metadaten weiter, bevor die gemeinsamen Stream-Wrapper ausgeführt werden.