Skip to content
InferenceHub

Changelog

What shipped, when — new models, pricing changes, and features across the gateway, the hosted chat, and the desktop app.

RSSMarkdown

  • api
  • platform

Oversized requests now fail fast with a clear 413

Every request body on the gateway has a hard ceiling of 10 MiB (10,485,760 bytes of JSON), set at our upstream provider's edge. Until today a request over that limit was uploaded in full and then bounced with an opaque "Upstream error (413)" — which is what you saw if you replayed a conversation carrying several large base64 images or a big attached document.

The gateway now measures a request before forwarding it and answers immediately with an HTTP 413 that names both the size it received and the limit. On the Anthropic wire (/v1/messages) the error type is request_too_large; on the OpenAI-compatible endpoints (/v1/responses, /v1/chat/completions) it is invalid_request_error with code request_too_large. A rejected request is never billed. To stay under the limit, downscale or compress images before encoding them, or trim replayed history — as a rule of thumb 10 MiB is about 7.5 MB of image bytes or 2.5 million characters of text, well below the token windows of the large-context models.

API reference

  • models
  • api

GPT-6 Astra in Cursor and Claude Code

GPT-6 Astra now works in Cursor as a custom model (gpt-6-astra — Chat/Ask, Cmd-K, and Agent mode) through the same translation lane that carries GPT-5.6, and in Claude Code natively: set ANTHROPIC_MODEL=gpt-6-astra or pick claude-code-gpt-6-astra from the /model list. In Claude Code there is no translation step — the model speaks the Anthropic Messages wire upstream — so prompt-cache reads and writes bill at the published rates.

Kilo Code users can add gpt-6-astra to the OpenAI-wire provider block the same way as gpt-5.6-sol.

Cursor guideClaude Code guide

  • models
  • pricing

GPT-6 Astra is available

OpenAI's GPT-6 Astra is now on the gateway as gpt-6-astra (also reachable as openai-gpt-6-astra): 1.05M-token context, 128K max output, native reasoning, tool calling, and prompt caching. It serves on the OpenAI Responses endpoint (/v1/responses), so it works in Codex and any Responses-API client today; Cursor and Claude Code support follows once the translation lanes have been verified against it.

Pricing is our usual pass-through of the provider's list: $10.00 per 1M input tokens, $50.00 per 1M output tokens, $1.00 per 1M cached input tokens (prompts up to 272K tokens). On subscription plans it draws from the shared monthly premium budget alongside Opus, Fable 5, and GPT-5.6 Sol.

Models & pricingCodex guide

  • models

Four retired models removed from the catalog

gpt-5.1-codex-max, qwen3-coder-flash, alibaba-qwen3-32b, and mimo-v2.5 (the base tier) have been removed from the model list. Our upstream provider stopped serving them in August; until today they still appeared in GET /v1/models while every request to them returned a 404, which a customer running an all-catalog sweep caught. Thank you.

Requests to those ids now fail fast with a clear not-found error, and they no longer show up in the model list. Drop-in replacements: gpt-5.3-codex for gpt-5.1-codex-max, mimo-v2.5-pro for mimo-v2.5, and qwen3.5-397b-a17b or qwen3.8-max for the two retired Qwen3 models. Historical usage on the removed ids is unaffected.

Models & pricing

  • api
  • models

Image input now works for Claude and GPT-5.6 on the OpenAI-compatible chat endpoint

Sending an image to a Claude model (sonnet-5, opus, haiku, fable-5) or a GPT-5.6 model (gpt-5.6-sol, gpt-5.6-terra, gpt-5.6-luna) through /v1/chat/completions previously did nothing: the request succeeded, the text went through, and the image was silently left out, so the model answered as if no image had been attached. Open-weight models on the same endpoint were unaffected. A customer reported it with a precise reproduction, for which we are grateful.

Fixed today. Standard OpenAI-format image parts (image_url with a base64 data URL or a public https URL, JPEG / PNG / GIF / WebP, optional detail hint) are now forwarded to those models, and image tokens show up in prompt_tokens and are billed at the model's normal input rate. An image the model cannot decode now returns a 400 error instead of a confident answer with no image. No client changes are needed: Cursor and any OpenAI-compatible client that already sends images just works.

One caveat on URL images: the model provider fetches the URL itself and respects robots.txt, so hosts that disallow automated fetching (Wikimedia, for example) return a 400. Use a base64 data URL or a host you control for those.

Cursor guideModels & pricing

  • desktop

Desktop 0.2.23: exports and attachments now save to your Downloads folder

The desktop app never actually saved files: clicking Export as Markdown, Export All Chats, or an attachment's download link did nothing, with no error. 0.2.23 fixes that on macOS and Windows — files land in your Downloads folder (a numbered suffix is added instead of overwriting) and the app reveals the saved file in Finder or Explorer when the download finishes.

On older versions the chat now says so instead of staying silent: Export as Markdown copies the transcript to the clipboard and points you to the update, and Export All Chats asks you to update first or use chat.inferencehub.tech in a browser.

Download page

  • chat
  • desktop

Chat: export one conversation as Markdown, or all of them as a zip

Every chat in the sidebar now has an Export as Markdown option in its ⋯ menu (next to Share and Rename), alongside the existing Export As… entry in the chat header. The file is a clean transcript of the conversation as you see it — regenerated or edited turns are no longer duplicated.

Settings → Export → Export All Chats downloads a single .zip with one Markdown file per conversation (project chats included) and an index.md that lists them by date. It runs in your browser against your own account; nothing is sent anywhere else.

Desktop app: saving files needs InferenceHub Desktop 0.2.23 or newer. On older versions, Export as Markdown copies the transcript to the clipboard and tells you to update.

  • models

Claude Fable 5.1 is live

Anthropic's Claude Fable 5.1 is available on the platform as fable-5.1 (canonical claude-fable-5-1), at $10.00 input / $50.00 output per 1M tokens — the same rates as Claude Fable 5, except cache reads now cost $0.25 per 1M instead of $1.00. That 75% cache-read cut compounds quickly in cache-heavy agentic sessions like Claude Code.

1M-token context window, 128K max output, on the Anthropic Messages API. Claude Fable 5 remains available unchanged.

Model ids and rates

  • models

GLM-5.3 and GLM-5.3 Flash are live

Z.ai's new GLM-5.3 generation is available on the platform: GLM-5.3 at $1.40 input / $4.40 output per 1M tokens (cached input $0.26), and GLM-5.3 Flash at $0.15 / $0.50 (cached input $0.03). Both carry a 1M-token context window and 1M max output — four times the window of GLM-5.2.

Both models work in every client we support: Claude Code and Codex get them natively (pick them from Claude Code's /model picker as claude-code-glm-5.3 and claude-code-glm-5.3-flash, or set them as your default model), and they serve on the OpenAI-compatible chat endpoint for Cursor, Kilo Code and everything else. In Cursor, use the zai-glm-5.3 and zai-glm-5.3-flash names so Cursor routes them through your InferenceHub key rather than its own built-in provider.

Unlike earlier GLM generations, GLM-5.3 reports prompt-cache usage on the Anthropic-compatible endpoint, so cache-heavy tools like Claude Code get the cached-input rate there too.

Models & pricingClaude Code guide

  • pricing
  • models

Provider price changes passed through: two models cheaper, seven up

Our prices track the published rate of the provider that serves each model, and that provider moved nine sheets since our last check. All nine are passed through today.

Down: gpt-oss-120b is now $0.06 input / $0.39 output per 1M tokens (was $0.10 / $0.70), and GPT-5.6 Sol is now $4.00 input / $20.00 output with cached input at $0.40 (was $5.00 / $30.00 / $0.50).

Up: GLM 5 to $1.00 / $3.20, GLM 5.1 input to $1.30, Kimi K2.6 to $0.95 / $4.00, Kimi K2.5 to $0.50 / $2.70, Nemotron 3 Super to $0.30 / $0.65, MiniMax M2.5 to $0.30 / $1.20, and Qwen3.5 397B to $0.55 / $3.50. Cached-input rates on these are unchanged.

For the two price drops: the provider's page shows the lower rates as of August 28, so requests between then and today were billed above the rate our pricing promise commits to. Requests already made keep the price they were billed at, but if gpt-oss-120b or GPT-5.6 Sol usage in that window is material to your bill, email support@inferencehub.tech and we will look at your account.

Models & pricing

  • platform

See your spend broken down by API key

Your dashboard's usage page can now group spend by API key, alongside the existing by-day and by-model views. Click a key to narrow the whole page to it — daily spend, tokens, cache savings, request health, and both CSV exports follow the filter, so you can hand one team or one machine its own numbers.

The keys page gained a 30-day spend column, so it is obvious at a glance which key is doing the work — and which one you can safely retire. Both views read the same figures, so they cannot disagree.

Usage that did not come from one of your keys is named for what it is, rather than pinned on a live key: traffic from the hosted chat reads as Hosted chat, and spend from a key you have since deleted reads as Deleted key. Deleting a key removes it from your list without erasing what it spent.

Billing & plans

  • pricing
  • models

GLM-5.2 is half price — and a correction to what we told you on August 11

GLM-5.2 now costs $0.70 input / $2.20 output per 1M tokens, with cached input at $0.105 per 1M — half its old rate on all three, effective today.

This is a correction, not a discount, and the August 11 entry below got it wrong. That day we raised GLM-5.2 input to $1.40 and told you $1.40 was the correct list rate. $1.40 is Z.ai's own list rate for GLM-5.2 — but our prices track the published rate of the provider that actually serves the model to us, and that provider serves this model for less than the lab lists it at. We took the model maker's price sheet as evidence about our own cost, which it is not. The August 11 increase should not have happened, and the rate has since come down further.

So from August 11 until today, GLM-5.2 was billed above the rate our pricing promise commits to: input at twice the correct rate, and — after the provider's more recent cut — output and cached input at twice as well. Requests already made keep the price they were billed at, but if GLM-5.2 usage in that window is material to your bill, email support@inferencehub.tech and we will look at your account.

Every other model on the platform was checked against the provider's current published rates in the same pass. GLM-5.2 was the only one out of line; nothing else changes today.

Models & pricing

  • models

Two new models: DeepSeek V4 Pro 0813 and Qwen3.8-2.4T-A95B

DeepSeek V4 Pro 0813 (deepseek-v4-pro-0813) is live at $1.32 input / $3.96 output per 1M tokens, with prompt caching at $0.044 per 1M cached input — the dated snapshot of the V4 Pro line, so a pinned agent keeps the same weights as the rolling id moves.

Qwen3.8-2.4T-A95B (qwen3.8-max) is live at $2.00 input / $6.00 output per 1M tokens, with prompt caching at $0.20 per 1M cached input. Note the id: the model's published name is Qwen3.8-2.4T-A95B, but you call it as qwen3.8-max.

Both are served on all three API surfaces — OpenAI Chat Completions (Cursor, Cline, Hermes, Continue), Anthropic Messages, and OpenAI Responses. Claude Code drives both natively, no translation involved, and they appear in the /model picker as claude-code-deepseek-v4-pro-0813 and claude-code-qwen3.8-max. Codex can run either as an open-weight daily driver; the Connect page has ready-made configs. Both are priced at the provider's published list rate, like every model here.

Models & pricingClaude Code guide

  • platform

Fixed: Google sign-in failing verification

A few people were told their sign-in could not be verified, and kept being told it on every retry. The cause: the sign-in page answered at more than one address for our service, and a sign-in that started at one address finished at the other, which lost the one-time token that proves the round trip is yours. Every browser sign-in now starts and finishes on one address (app.inferencehub.tech), so the round trip completes. If you were stuck on this, sign in again — your account, keys and credit were never affected.

Two smaller improvements came with it. The sign-in window is now 30 minutes instead of 10, so pausing on Google's account chooser for a password or a 2FA prompt no longer invalidates the attempt. And if verification does still fail, the message now names the usual culprit: blocked cookies — private windows and privacy extensions are the common ones.

API traffic is untouched. The /v1 endpoints keep answering identically on every address, so existing keys and base URLs work exactly as before.

  • api
  • platform

Busy upstreams now say so, instead of looking like a missing model

When a provider is saturated, we retry your request across our key pool and, for some models, fall back to a second provider. If that fallback could not serve the model, the request used to end as a not-found error — and coding agents render that as a problem with the model you picked. Claude Code, for instance, says the selected model may not exist or that you may not have access to it, even while the same model is serving everyone else normally.

Those requests now return the real reason: a rate-limit or overloaded error, with a retry hint, so your agent backs off and tries again rather than telling you to switch models. A request for a model that genuinely is not on the platform still returns a plain not-found, naming the model id you sent.

Models & pricing

  • pricing
  • models

Price update: GPT-5.6 Luna −80%, Terra −20%, DeepSeek and eight other models cheaper — GLM-5.2 input corrected

We price every model at the provider's published list rate, so when the lists move, our prices move. Today's sync brings big cuts: GPT-5.6 Luna drops 80% to $0.20 input / $1.20 output per 1M tokens (cached input $0.02) and GPT-5.6 Terra drops 20% to $2.00 / $12.00, matching OpenAI's July 30 reduction. DeepSeek V4 Pro falls to $0.87 / $1.74, DeepSeek V4 Flash to $0.068 / $0.168, DeepSeek 3.2 to $0.25 / $0.80, Kimi K3 to $2.85 / $14.25 (cached input less than half its old rate), plus cuts to Qwen 3.5, MiMo V2.5 Pro, Nemotron 3 Super, Llama 4 Maverick, and a newly discounted cached rate for Gemma 4.

One correction goes the other way: GLM-5.2 input returns to $1.40 per 1M tokens (output and cached rates unchanged). $1.40 is Z.ai's official list rate; we had been mistakenly charging $1.05 — below our own cost. Requests already made keep their old price; the new rates apply from today.

Models & pricing

  • models

New model: DeepSeek V4 Flash 0731 — on every API surface, including Claude Code natively

DeepSeek V4 Flash 0731 (deepseek-v4-flash-0731) is live: the dated agentic snapshot of the V4 Flash line, tuned for autonomous coding agents. $0.080 input / $0.252 output per 1M tokens, with prompt caching at $0.025 per 1M cached input.

It is the first open-weight model on the platform served on all three API surfaces: OpenAI Chat Completions (Cursor, Cline, Hermes, Continue), Anthropic Messages, and OpenAI Responses. Claude Code drives it natively — no translation involved — and it appears in the /model picker as claude-code-deepseek-v4-flash-0731. Codex can run it as an open-weight daily driver too; see the Connect page for ready-made configs.

Models & pricingClaude Code guide

  • models
  • api

GPT-5.6 works in Claude Code

The GPT-5.6 family — Sol, Terra, and Luna — now runs inside Claude Code through your InferenceHub key. Point ANTHROPIC_MODEL at gpt-5.6-sol (or -terra / -luna), or turn on gateway model discovery and pick claude-code-gpt-5.6-sol straight from the /model picker. Tool-using agent sessions work end to end, the models' reasoning shows up as real thinking blocks, and repeated context earns automatic prompt-cache discounts on input pricing.

Also fixed in the same rollout: GPT-5.6 agent sessions in Cursor had started failing after an upstream change to sampling-parameter handling — the gateway now absorbs that difference, and Cursor tool turns on gpt-5.6 work again with no configuration change.

Connect Claude CodeModels & pricing

  • chat
  • platform

Chat: one sign-in for everything

The chat app's sign-in page now hands you to the InferenceHub portal instead of asking for a separate chat password. Sign in there once — email + password or Google — and you land straight back in chat, signed in. One account, one password, everywhere.

This closes a long-standing confusion: chat never shared the portal's password, so typing your portal credentials into the old chat form failed with "invalid email or password". That form is gone. Existing chat sessions are unaffected, and the desktop app's sign-in flow is unchanged.

Open chat

  • platform

Referrals: give $5, get $5

Every account now has a referral link, on the portal's Rewards tab. When someone signs up through your link and makes their first payment — a top-up or a subscription — you both receive $5 of credit for the open-weight catalog.

The Rewards tab shows how many people signed up through your link, how many of them converted, and what you've earned so far against the $50 lifetime cap. Referral credit works like other promotional credit: it's spent before your paid balance and expires 30 days after it's issued.

Sign in and grab your link

  • platform

Portal: set a password on a Google account

Accounts created with Google sign-in can now add a password: Account → Password sign-in → Set password. From then on, email + password works at the sign-in screen alongside Google — same account, same keys and balance — and the same card changes the password later.

Password reset also stopped being silent for Google-only accounts. "Forgot password" used to send nothing when there was no password to reset — which looked like a lost email. Now your inbox gets a short note explaining the account signs in with Google, pointing at the new Set password option.

  • chat
  • models

GPT-5.6 Luna is the new default chat model

New conversations in InferenceHub Chat now start on GPT-5.6 Luna, the cost-optimized model in OpenAI's GPT-5.6 family. Fresh chats previously opened on an open-weight default; this raises the out-of-the-box baseline to a frontier model while changing nothing about choice — the model picker keeps the full catalog, and existing conversations stay on whatever model they were already using.

Like any other OpenAI-family pick in chat, Luna usage is billed to your own InferenceHub account. Prefer the included lane? Every Open-Weight model in the picker remains free to use with a logged-in account.

Open chat

  • platform

Portal: one quick question — where did you first hear about us?

The portal Overview now asks one optional question, exactly once: where did you first hear about InferenceHub? Pick an option — they shuffle so no answer gets an unfair head start — or choose Other and type your own, or dismiss the card with its close button. Any of those retires the card permanently, on every device; nothing is gated on answering, and it never comes back.

Why ask: a recommendation in a DM, a group chat, or an AI assistant's answer doesn't leave the trail a link click does. One self-reported answer is how those channels become visible to us — and Other free text is read by a human, so specifics are genuinely useful.

  • desktop

Desktop: click-through overlay, opacity keys, one-key meeting transcription

The macOS desktop app now works as a real meeting overlay. Ctrl+Shift+Z toggles click-through: the window stops catching your mouse, so clicks land on whatever sits underneath — keep the chat floating over a call (Always on Top + a lowered opacity) while you keep driving the call. Ctrl+Shift+Arrow Up and Down step the window's opacity, and Ctrl+T starts or stops meeting-audio transcription without touching the app.

All three shortcuts work system-wide, because mid-meeting the focused app is the meeting — that's also what makes click-through escapable: the same key turns it off while the window can't be clicked. Click-through never survives a relaunch (the app always starts clickable), and the Window menu carries the same controls.

Download page

  • chat
  • desktop

Live transcribe: shortcuts grab exactly what was just said

Live transcription in chat is built for meetings, and meetings move fast. New keyboard shortcuts turn the running transcript into questions: Ctrl+1 through Ctrl+9 put the last one to nine spoken sentences in the message box, Ctrl+Q the whole meeting so far — glance, hit send, and keep listening while the answer streams.

Ctrl+` keeps a growing catch: pressing Ctrl+1…9 marks where the catch starts, and every later press of Ctrl+` extends it to what has been said since — arm it when a topic starts, stretch until you're ready to ask. Using any shortcut also stops the live transcript from overwriting the message box, so what you caught stays put while the transcript keeps accumulating in the background; the shortcuts still work after you stop recording. Works in the browser and in the desktop app.

  • desktop

Desktop: a broken macOS system-audio permission now comes with a way out

Some meeting-audio transcriptions on the macOS desktop app failed with a permission error even though System Settings showed InferenceHub as allowed. macOS silently drops the Screen & System Audio Recording approval whenever an unsigned app updates, and a fresh approval only takes effect after the app restarts — so the toggle looked right while recording stayed blocked.

The app now recognizes that dead end and repairs it: the dialog's Reset Permission button clears the app's broken recording approval and has macOS ask again on the spot — allow it, quit and reopen, done. (Flipping the Settings toggle off and on turned out not to be enough: stale approvals from earlier updates pile up underneath and keep winning.) Until desktop builds are code-signed, expect one re-grant after each update; the release notes now say so up front.

Download page

  • api

Interrupted tool calls no longer cost you the conversation

Stopping Claude Code in the middle of a tool — hitting Esc, denying a permission prompt, or resuming a session whose transcript was cut between a tool call and its result — leaves a tool call that nothing ever answered. Open-weight models reject that shape outright, so instead of picking up where you left off, the next turn failed and took the whole conversation with it.

The gateway now repairs it. Any tool call left unanswered gets a placeholder result, so the conversation stays valid and your next message goes through. The placeholder is plainly labelled as ours and says the turn ended before the tool ran, so neither you nor the model can mistake it for something a tool actually returned — the model knows the call was interrupted rather than assuming it worked. Conversations where every tool did answer are passed through untouched.

  • docs

Connect Memmy — one memory layer across your agents

There's now a guide for Memmy, MemTensor's local-first memory hub. It keeps one memory layer shared across Claude Code, Codex, Cursor, OpenCode, OpenClaw and Hermes, and its own agent can run on your InferenceHub key — point ~/.memmy/config.yaml at the gateway and the whole catalog is available to it, tool calls included, which is what its memory Skills are built on.

One quirk worth knowing up front: Memmy resolves the provider name against its own built-in list, which has no InferenceHub entry, so you use its custom provider and set apiBase. Both of Memmy's backends honour that, so the same key works on either the OpenAI-compatible wire or the Anthropic Messages one. The guide shows both, and covers the confusing error a provider name Memmy doesn't recognise produces.

Memmy guide

  • desktop

Windows desktop app: now installable with winget

The Windows desktop app is now in the winget community repository — winget install InferenceHub.InferenceHub installs it straight from the terminal, with the installer's hash verified against the published manifest. It's the same per-user installer as the direct download, without the browser's unsigned-download warnings.

Desktop builds are still unsigned previews, so the honest install notes on the download page continue to apply — code signing is in the works. New releases will be published to winget as they ship.

Download pageDesktop app source

  • chat

Chat: follow-up image generations no longer fail

Fixed a bug in the hosted chat where the second image generation in a conversation failed with an error. Asking for another image — or a variation of the one you just got — steered the request down an image-editing path our image provider doesn't offer, so only the first generation in a session worked reliably. Follow-up generations now work.

One honest caveat: every image is generated fresh from its description. The assistant carries your conversation forward when it writes the next prompt, but it cannot pixel-edit the previous image — so describe the change you want ("the same bicycle, but blue") and expect a new take on the scene rather than a surgical edit.

  • chat
  • platform

Chat with your InferenceHub models on Telegram

InferenceHub now has an official Telegram bot: @InferenceHubBot. Link it to your account from the portal (Account → Telegram → Connect Telegram) and every message runs on your own balance — same models, classes, and pay-as-you-go pricing as the web chat and API. Browse with /models, switch with /model, start fresh with /new. Recent context is kept briefly to keep the conversation coherent and is never logged or stored with your account data; /new clears it.

The bot sells nothing inside Telegram: top-ups, plans, and keys all live in your portal. Free-class models are included on trial accounts; the full catalog unlocks with a paid account.

Open @InferenceHubBotTelegram bot docs

  • chat

Chat: pick your synthesis tier — Budget, Balanced, or Max

The Synthesize toggle in the hosted chat now opens a preset picker. Budget runs a small panel of fast open-weight models for the lowest cost, Balanced remains the default, and Max puts frontier models on the panel and in the judge's seat — billed at their frontier rates. Picking a tier arms synthesis in one click, the armed button shows which tier your next message will use (say, Synthesize · Max), and a turn-off row appears in the same menu. Billing is unchanged: each participating model shows up as its own pay-as-you-go usage line, and the exact model composition of every preset is documented on the synthesis page. Nothing moved on the API — all three ih-synthesis ids have been there since launch; chat just caught up to the other two.

Model synthesis docs

  • chat

Chat: Synthesize is now a composer toggle

Model Synthesis in the hosted chat moved out of the model picker and into the composer, next to Deep Research: flip the Synthesize toggle on and your next message fans out to the panel, with the judge's merged reply streaming back — your regular model choice stays put for everything else. Synthesis is a way of answering one message, not a different model, so it now behaves like one. A synthesis turn takes a minute or two and bills each participating model as its own usage line, pay-as-you-go even on a plan; the toggle's tooltip says exactly that. The three ih-synthesis ids on the API are unchanged.

Also fixed in the same release: when a trial account runs into something that needs a paid account — a Standard or Premium model, Auto, or Synthesis — chat now shows the honest explanation (your free trial includes the free models; add credit or subscribe) with top-up buttons, instead of a generic rate-limit error that suggested retrying.

Model synthesis docs

  • models
  • api
  • chat

Kimi K3 becomes the balanced synthesis judge

The balanced synthesis id — ih-synthesis — now runs Kimi K3 as both a panelist and the synthesizer, with GLM-5.2 keeping its panel seat. Previously the pairing was Kimi K2.6 on the panel with GLM-5.2 writing the merged answer; K3 is Moonshot's flagship open-weight reasoner and the strongest open-weight model on the platform, and it now both contributes a candidate and writes the final reply. This applies everywhere ih-synthesis is offered, including the hosted chat's Synthesize toggle.

Pricing keeps its shape: no bundle fee, every participant bills as its own line item at that model's normal rates. The new composition does include K3's higher rates ($3.00 per 1M input, $15.00 per 1M output), so a typical ih-synthesis turn costs more than the old pairing — the x-ih-synthesis disclosure header and the portal's linked usage rows keep showing exactly who served each turn and what it cost. ih-synthesis-budget and ih-synthesis-max are unchanged.

Model synthesis docs

  • models
  • pricing
  • api

Auto routing: name a price, not a model

Two new model ids — ih-auto and ih-auto-smart — route each request to a fast open-weight model at a flat sheet: $1.00 per 1M input tokens and $5.00 per 1M output, whatever the router picks. Smart Auto can additionally escalate a genuinely hard turn to Claude Sonnet 5, billed exactly as if you had named sonnet-5 yourself — picking -smart is the consent to that. Both ids work on the OpenAI Chat wire and the Anthropic Messages wire, so they drop into Cursor, Claude Code, and Kilo Code like any other model id.

Named models on InferenceHub pass through at 0% markup; Auto is the one deliberate exception — the spread between the flat sheet and the routed model's native price is the routing fee, and we say so. It is also not a black box: routing is a deterministic rule table (no LLM classifier reading your prompts), and every turn discloses what served it — in the response's model field, the x-ih-auto header, and the portal's usage view. Conversations stick to their routed model, so agent loops don't flap mid-task.

The Auto ids also unlock context compaction for long agent sessions: conversations that outgrow the pool are automatically trimmed to keep serving where the alternative was a context-window error, and an opt-in x-ih-compact header trims to a working set on demand — billing follows the compacted request, so opting in directly cuts what long sessions cost. On subscription plans, Auto turns (escalations included) draw standard windows and never touch the premium budget, which makes ih-auto-smart the all-day coding id on Plus and Max.

Auto routing docs

  • models

Kimi K3: Moonshot's flagship open-weight model, at cost

Kimi K3 — Moonshot AI's newest flagship open-weight reasoning model — is live across the platform at exact upstream parity: $3.00 per 1M input tokens, $15.00 per 1M output, $0.60 per 1M cached input. As with every named model on InferenceHub, that's a 0% markup on what the upstream charges us.

It works everywhere the other open-weight models do: the OpenAI Chat Completions endpoint for Cursor, Kilo Code, Cline and friends (use the moonshotai-kimi-k3 id in Cursor — it hijacks the bare name), and inside Claude Code with tool calls and thinking, where it also appears in the /model picker as claude-code-kimi-k3 with gateway discovery on. It's also in the hosted chat's model picker, with its reasoning shown as it thinks.

Prompt caching is on automatically — repeated context bills at the cached rate ($0.60 per 1M) with no setup. Unlike some of the earlier open-weight deployments, K3 also handles forced tool choice (tool_choice: "required" and named functions) correctly, so structured-output agent frameworks work out of the box.

Model ids & pricingClaude Code setup

  • chat

Chat platform upgrade: refreshed interface and per-message reasoning control

The hosted chat moved to a much newer build of its underlying platform, bringing a refreshed interface throughout — cleaner layout, a reworked model selector with vendor marks and exact model ids on every row, and a smoother settings area.

Reasoning control is now built into the model selector: pick how hard a reasoning-capable model should think (off to high) per conversation, right where you pick the model. This replaces the previous separate Instant/Thinking toggle in the composer.

Everything you already use — your conversations, projects, web search, deep research, image generation, per-model billing — carries over unchanged.

  • models
  • api

Model synthesis: a panel of models, one merged answer

Three new model ids — ih-synthesis-budget, ih-synthesis, and ih-synthesis-max — fan your prompt out to a panel of models that answer independently in parallel, then a synthesizer model merges the attributed candidates into one streamed reply. For explicit control, the model_synthesis tool on /v1/chat/completions lets you name your own panel (up to four models) and synthesizer. In the hosted chat, synthesis is the Synthesize toggle in the composer — chat turns bill your own account per participant, pay-as-you-go even on a plan, and trial accounts stay on the Free models. And they work in Claude Code and any other Anthropic-wire client too — point it at the gateway and pass one as the model; only fresh prompts fan out, so an agent's tool loop stays single-model speed and price.

Pricing is the same honest deal as everything else here: no bundle price, no markup — every participant bills as its own line item at that model's normal per-token rates, and the portal's usage view shows the per-participant breakdown for each synthesis turn. Pay-as-you-go only for now; synthesis requests must stream.

Every response tells you who participated via the x-ih-synthesis header, and panel failures are disclosed in-stream rather than hidden.

Model synthesis docs

  • chat
  • desktop

Font zoom in the chat

You can now make the chat bigger or smaller: Settings → Appearance → Font Size steps the whole interface between 85% and 140%, and the choice sticks on that device across visits.

In the desktop app, Cmd/Ctrl + = and Cmd/Ctrl + - zoom in and out and Cmd/Ctrl + 0 resets — the zoom shortcuts a browser window has and the app was missing. In a browser, your browser's own zoom keeps working exactly as before.

  • chat
  • models

Claude Opus 5 in the hosted chat

Claude Opus 5 is now selectable in the hosted chat and the desktop app — pick it from the model selector under Anthropic. Like the other premium models in chat, turns bill your own account: plan budgets cover them if you subscribe, pay-as-you-go otherwise, and trial accounts stay on the Free models.

Extended thinking stays off by default in chat; use the per-message Thinking toggle when you want it.

  • api

The model list shows each model once

GET /v1/models on the Anthropic-compatible endpoint now lists exactly one id per model — the canonical claude-* id — instead of every alias. Claude Code's /model picker (with gateway model discovery on) stops showing each Claude model twice, and the open-weight entries keep appearing under their claude-code-* picker ids.

Every alias still works in requests and per-id lookups: opus-5 and claude-opus-5 both resolve to Claude Opus 5. Only the listing is deduplicated.

Model ids & aliases

  • api
  • models

Fixed: newest Claude models in Cursor

Anthropic recently deprecated explicit sampling parameters (temperature, top_p) on its newest models — Opus 4.8, Opus 5, Sonnet 5, Fable 5 — and rejects requests that set them. Cursor sends a temperature on every request, so these models had started erroring on the OpenAI-compatible endpoint.

The gateway now drops those parameters for Claude models on that endpoint instead of forwarding them, and requests succeed again. The native Anthropic endpoint is unaffected and stays byte-faithful: what you send is what Anthropic sees.

Cursor guide

  • chat
  • pricing

Free models in chat — $0, for every account

The hosted chat now has a set of Free models: GPT-5.6 Luna, Claude Haiku 4.5, GLM-5, Kimi K2.5, Qwen3.5, and DeepSeek 3.2. Chatting with a Free model costs $0 on every account — it draws nothing from your balance, and for subscribers it never touches plan windows. A fair-use pacing window applies, sized so normal chatting never meets it and roomier on paid accounts.

New accounts start on the Free models: the first top-up or plan unlocks the full chat catalog, and until then picking another model in chat shows a clear notice instead of spending anything. This is a chat-surface rule only — over the API, your key reaches every model on the platform exactly as before.

Billing & plans — Free chat models

  • models
  • pricing

Claude Opus 5 is live

Claude Opus 5 — Anthropic's newest Opus-class model — is available across the platform as opus-5 (canonical id claude-opus-5): on the Anthropic API endpoint and in Claude Code, with tool calls, streaming, and prompt caching. Same key, no config change beyond the model id.

Prices match Anthropic's list exactly, per our standing parity pricing: $5 per million input tokens, $25 per million output, $0.50 cached input — the same sheet as Opus 4.8. The bare opus alias continues to point at Opus 4.8, so existing setups change nothing until you opt in.

One behavior note: Opus 5 ships with extended thinking enabled by default. The gateway forwards your requests unmodified, so that default is yours to keep or override per request.

Models & pricingClaude Code setup

  • api
  • models

Claude Code × open-weight: reasoning stalls now explain themselves

Open-weight reasoning models in Claude Code (GLM-5.2, Kimi K2.6, and friends on the translation lane) can occasionally spend a turn's entire output budget inside internal reasoning and never start an answer — the upstream serves these models' reasoning always-on and currently honors no reasoning-effort controls. Until today that failure surfaced as a silently empty reply.

Such turns now end with a clearly marked [InferenceHub] note explaining what happened and suggesting a retry with a narrower ask or a model switch, so a stalled turn is never silent again. Ordinary turns are untouched, and the note is stripped from the conversation before anything is replayed upstream.

Troubleshooting

  • models

DeepSeek V4 Pro now works in Claude Code

DeepSeek V4 Pro joins the open-weight models you can run inside Claude Code — same endpoint, same key, tool calls and thinking included. Launch with claude --model deepseek-v4-pro, set it as your default in settings.json, or pick it from the /model picker (listed as claude-code-deepseek-v4-pro), where it appears automatically with gateway model discovery enabled.

Same model and prices as everywhere else on the platform. One caveat carried over from the upstream serving stack: requests that force a tool call (tool_choice required or a named tool) return an honest error instead of a silently empty reply; normal automatic tool use is unaffected.

Claude Code setup

  • chat

Long file names no longer cut off in chat

Attached file names that don't fit their card — in the composer and in a project's Files list — now end with an ellipsis instead of being clipped mid-name. Hover a file to see its full name.

  • chat

Copied answers no longer carry citation artifacts

Copying a chat answer that cites your uploaded files or web sources now produces clean text. Previously the inline citation chips leaked into the clipboard, so pasted answers showed stray labels like "File" between sentences — or raw [[1]](…) fragments when pasting as plain text.

Citations themselves are unchanged in the app: they still render inline and open the source when clicked. Both the copy button and manual text selection are covered, in the browser and in the desktop app.

  • chat

Chat speaks one accent color

Selected controls in chat — the Deep Research toggle, tool chips, checkboxes, and links inside answers — now use the InferenceHub green in both light and dark themes, replacing the leftover blue accent.

  • desktop

A cleaner desktop window on macOS

The macOS desktop app lost its grey title bar: chat now runs edge-to-edge, with the sidebar toggle tucked up beside the traffic lights. Hovering the toggle peeks at your chat history without stealing focus from the composer; clicking pins the sidebar open, and it always folds as a compact panel instead of a mobile-style overlay.

The strip along the top behaves like a real title bar — drag it to move the window, double-click it to zoom.

Download

  • chat

Chat greeting fits small windows

The empty-state greeting now scales down with the window instead of clipping behind the message box — short or narrow windows shed the tagline first, then shrink the greeting.

  • pricing

Three plan sizes, one pooled premium budget

Subscriptions now come in three sizes: All Access at $10/mo, Plus at $25/mo, and Max at $50/mo. Every tier gets every model.

Premium Claude and GPT models — Opus, GPT-5.6 Sol — now draw from a single burstable monthly premium budget ($50, $200, or $500 by tier), pooled across vendors so you spend it on whichever frontier model you're actually using. Every other model draws standard 5-hour and weekly windows that scale with the tier.

Reach any limit and you keep working at pay-as-you-go rates. No hard stop.

Pricing

  • pricing
  • api

Claude prompt-cache discounts on the OpenAI wire

Claude requests made through the OpenAI Chat Completions endpoint — the wire Cursor and most OpenAI-compatible clients speak — now earn Anthropic's prompt-cache discounts, same as on the native Anthropic wire. Long agent sessions replay their context at cached-read rates instead of full price.

Nothing to configure: caching is applied automatically where it saves you money.

Cursor guide

  • docs

Docs, rebuilt

The documentation grew from one long page into a full section: step-by-step guides for Claude Code, Codex, Cursor, Kilo Code, ZCode, and Hermes, plus API references for text, images, and embeddings, with a persistent sidebar throughout.

For agents and LLMs, the whole guide ships as one markdown file at /docs.md, and /llms.txt maps the site.

Documentation

  • chat

Prompt caching in the hosted chat

The hosted chat now uses provider prompt caching for conversation history, so long chats re-read their context at cached rates. Faster follow-up turns, lower spend, nothing to configure.

  • desktop

The desktop app is open source

InferenceHub Desktop is now developed in the open — a lightweight native client for the hosted chat on macOS and Windows, with frontier and open-weight models, web search, and Deep Research outside the browser.

Installers live on the download page, and the source is on GitHub.

Download

  • platform

One key.

InferenceHub is generally available. One API key for real Claude, GPT, and open-weight models, served byte-faithful on their native APIs — Anthropic Messages, OpenAI Chat Completions, Responses, Images, Embeddings — at native rates with 0% per-token markup.

Start with $1 in free credit, top up by card or crypto, and point Claude Code, Codex, Cursor, or your own stack at it.

Quickstart

  • pricing

The daily reward

Make at least one successful API request in a day and you can claim a small credit in the portal's Rewards tab. The amount ramps with a consecutive-day streak, with bonus credit at 7 and 30 days.

Billing & plans

  • chat
  • desktop

Voice input in chat

Talk instead of type. The hosted chat takes voice input using your browser's built-in speech recognition, and the desktop app transcribes on-device with whisper.cpp.

  • pricing

All Access: every model, $10/mo

The first subscription plan: All Access at $10/mo covers every model on the gateway with generous standard usage windows, on top of plain pay-as-you-go. No model gating by tier — the ladder scales limits, not access.

Pricing