A daily log of product changes, improvements, and new model releases on OpenRouter
Product changes
- Playground side panel on model pages — Model detail pages now include a “Playground” button in the header that opens a slide-out panel for testing the model inline, with support for all available modalities.
- OpenCode integration guide — Added a guide for configuring OpenCode with OpenRouter to the coding agents documentation.
- Fixed: BYOK model filter showing incomplete results — Bring-your-own-key provider pages now show all models a provider serves, not just models whose cheapest endpoint is from that provider.
- Fixed: 500 errors for router model variant mismatches — Requests to router models with unavailable variants (e.g.
openrouter/auto:thinking) now return a descriptive 404 instead of a generic 500 error. - Fixed: vertical scrollbar on models page modality tabs — Removed an unwanted vertical scrollbar on the models page modality filter tabs.
New models
Product changes
- Fusion server tool now available via API and Chatroom — Fusion is now available as an API plugin, a server tool, and in the chatroom composer — it routes your prompt to multiple models in parallel and synthesizes their responses into a single, higher-quality answer.
- Automatic prompt caching in the Responses API — The Responses API now accepts top-level
cache_controlfor Anthropic Claude models, closing a gap where cached input tokens stayed at zero on/api/v1/responses. Docs - Logs page pagination toggle — The Generations tab on the logs page now lets you switch between “Load more” and traditional paged navigation, with your preference saved across sessions.
- Replit community guide — Added a community guide for configuring your OpenRouter API key in Replit projects.
- Fixed: Codex multi-turn reasoning context lost through OpenRouter — Codex CLI and Desktop conversations proxied through OpenRouter no longer lose reasoning context across turns, fixing issues where the model would repeat completed steps.
- Fixed: chatroom artifacts ignoring prior prompts — Follow-up artifact generations now include the full prompt history, preventing the model from generating unrelated content when iterating.
- Fixed: routing preferences ignored with fallbacks disabled —
preferred_min_throughputandpreferred_max_latencynow take effect whenallow_fallbacksis set tofalse. Docs - Fixed: mobile sidebar on iPad-size viewports — The sidebar drawer on tablet-sized screens no longer renders behind the backdrop overlay.
- Fixed: Recraft vector model SVG output — Recraft vector model variants now return properly encoded
image/svg+xmldata URLs instead of incorrectly labeled raster output. Docs
Product changes
- Private Models Beta — Published a new Private Models page covering the beta for routing to your own custom, fine-tuned, or dedicated model endpoints via the standard completions and responses endpoints.
- Anthropic Claude Opus 4.7 Fast mode —
speed: "fast"now routes Claude Opus 4.7 to Anthropic’s new fast-mode endpoint; the fast permaslug is also directly callable asanthropic/claude-opus-4.7-fast. - BYOK keys grouped by priority — The BYOK provider detail page now splits keys into a Prioritized section (tried in order) and a Fallback section (tried only after OpenRouter credits), each independently reorderable via drag-and-drop. Docs
- Adaptive Exa highlights for web search — The default web-search server tool and
webplugin now request adaptive highlights from Exa (roughly 2–4K characters per result) instead of a fixed 15K-character cap; setsearch_context_sizetolow,medium, orhighto opt back into a larger fixed budget. - Fixed: playground preserves uploaded images after video generation — Submitting a video generation in the playground no longer clears the images you previously attached to the prompt.
- Fixed: model compare page on mobile — The model compare page now scrolls horizontally with a sticky header row on narrow screens, and the “Add model” trigger no longer surfaces Quick suggestions.
New models
Product changes
- Personal profile pages — Profiles have a brand new design with a refreshed activity-chart layout.
- Deep Linking to Workspaces — Workspace URLs now resolve via an immutable workspace id, so links keep working after a slug rename. Docs.
- Redesigned model page header — The header section on every model page has been rebuilt to be faster to scan and easier to navigate between providers and tabs.
- Tier-aware pricing pills on provider cards — Provider cards on the model page now surface
flexandprioritypricing as compact pills so you can see how each service tier changes cost at a glance. Docs. - Redesigned BYOK provider detail page — The Bring-Your-Own-Key provider detail page has been refreshed with a cleaner provider summary and clearer connection status. Docs.
- Docs button on app pages — App pages on /apps now include a Docs button that links directly to relevant cookbook guides and integration docs for that framework.
- Logs table renders entities as pills — The logs table now displays model, provider, app, and other entity columns as compact pills, and the Supporting Models column is consolidated into a count with a click-through popup instead of an overflowing list.
- Guardrails search and status filter — The guardrails list now supports searching by name and filtering by status. Docs.
- Session-id-based provider stickiness — Requests that share the same session id now route to the same provider when possible, improving cache hit rates for multi-turn agentic workflows. Docs.
- Hermes Agent cookbook — Added a Hermes Agent cookbook page covering how to use Nous Research’s Hermes Agent with OpenRouter.
- Human-in-the-loop tools announcement — Published a blog post announcing human-in-the-loop tool calling support across the API and SDKs.
- Fixed: Jupyter notebook attachments in chat — Attaching
.ipynbfiles in the chatroom no longer balloons the prompt with embedded cell outputs. - Fixed: server-tool cost aggregation — The
cost_detailsfield returned to clients now aggregates costs correctly when a server tool runs multiple inner turns inside one user-facing request.
Product changes
- Fixed: Langfuse broadcast trace Environment and Release fields — The Langfuse broadcast destination now populates Langfuse’s first-class
EnvironmentandReleasetrace fields (and the matching project filter) from theenvironment/releasevalues you send ontrace.metadataorobs.metadata— previously they always showeddefault. Docs.
Product changes
- Fixed: collapsible sections in chatroom responses — Assistant messages in the chatroom once again render markdown-embedded HTML such as
<details>/<summary>blocks and inline tags like<b>.
Product changes
- Regex-based Prompt Injection Detection — The guardrails editor now allows adding a new Prompt Injection Detection guardrail with regex-based flag, redact, and block action modes. Docs.
- Per-provider ZDR controls — Privacy settings and the guardrail editor now expose separate Zero Data Retention toggles for non-frontier, Anthropic, OpenAI, and Google providers, with per-provider account-level lock support.
- Introducing the
pareto-coderouter — A new, experimental coding router that allows you to setmin_coding_scorein your request and route to the cheapest code-capable model that clears your bar. - Playground server tool controls — The chatroom Composer’s Server Tools panel now exposes every supported parameter for Web Search, Web Fetch, Image Generation, and Datetime, matching the API surface for full parity between the playground and direct API calls.
- Logs time picker shorthand — The logs page’s time-range picker now accepts typed shorthand like
15min,1h,3d,8w,1mo, or2y— type into the trigger and press Enter to jump straight to that relative window.
New models
Product changes
- Provider-specific image generation quickstarts — Model pages for Recraft V3, Recraft V4 / V4 Pro, and Sourceful now show tailored code examples with each model’s supported
image_configparameters (e.g.,text_layoutfor V3,rgb_colorsfor V4,font_inputsfor Sourceful). See the image generation docs. - Activity page API key labels — Activity analytics now correctly display API key names instead of numeric IDs for accounts with more than 500 API keys. Previously, the slim-keys endpoint capped at 500 results, leaving excess keys unlabeled in charts.
New models
Product changes
- Human-in-the-loop SDK Tool — SDK documentation for the new human-in-the-loop tool type, enabling tools that pause execution and wait for human input before returning results.
- Copy guardrails across workspaces — Guardrail definitions can now be copied between workspaces via the “Copy to…” menu. Workspaces without a default guardrail can also import settings from another workspace.
- Video generation cookbook — New Cookbook section with six video generation recipes covering model selection, text-to-video, image-to-video, reference-to-video, provider-specific options, and webhooks.
- Audio APIs blog post — Blog post announcing the text-to-speech and speech-to-text API endpoints with usage examples and model comparisons.
- Responses API MCP tool routing — The
namespacefield onfunction_calloutput items is now preserved through the Responses API pipeline. Previously, the field was silently stripped during parsing, which broke MCP tool routing for clients like Codex CLI that rely onnamespaceto dispatch calls to the correct MCP server.
New models
Product changes
- Guardrails enforcement drill-down — Rows in the Guardrails enforcement chart now link directly to the matching generations on the Logs page.
- Entity hover cards — Models, providers, and apps across the dashboard now show hover cards with a preview and a link to the entity’s page.
- Responses API tool call handling — Conversation history containing tool calls with missing optional fields (e.g. no
argumentsorid) no longer causes 400 errors from providers. The router now defaults missingargumentsto"{}"and generates a stableidwhen absent. - File upload OCR handling — Files processed with OCR no longer fail when routed to text-only models. Previously, OCR-extracted images could be sent to models that don’t support vision input, causing errors.