Measured against the live Chutes endpoint with a real key, not reasoned about from
the source. Two of the findings below contradicted what the code looked like it
did, and one contradicted an earlier fix in this same release.
Fixed
- Every model claimed a 256,000-token context. The catalogue at
llm.chutes.ai/v1/modelspublishescontext_lengthper model;
parse_remote_model_valuelooked forcontextWindow,context_windowand two
_metaspellings, none of which Chutes sends, so all thirteen fell through to
one default. It was wrong in both directions at once:Qwen3-32Bholds 40,960,
so the product promised six times what exists and its requests were refused;
DeepSeek-V4-Flash,Kimi-K3andGLM-5.2hold 1,048,576, so three quarters
of the window went unused. Compaction and truncation were sizing themselves
against a figure no model agreed with. Eleven of thirteen now carry their
published value; the two that publish nothing keep a default. - Each model now carries its own output limit, from
max_output_length—
but only where that is smaller than the window. Several models publish the
two as the same number, which means "output may use the whole context" rather
than "always ask for this much": sending it asmax_tokensleaves no room for
the prompt, andQwen3-32Banswers400 Requested token count exceeds. Nine
models gain a real cap, two are skipped. This was caught by testing the fix
against the endpoint before shipping it — the first version of the change would
have broken a model that previously worked. - An endpoint override reached inference but not the catalogue.
docs/configuration.mddocumentsCHUTES_ROUTER_BASE_URL,
CHUTES_INFERENCE_BASE_URLandCHUTES_MODELS_BASE_URL, and
chutes-build-corehonours them, but the re-base left the agent's
EndpointsConfigreading only theCHUTES_BUILD_*spellings. The documented
names come first now, with the others kept as fallbacks. - The system prompt introduced the agent as xAI's. The re-base overwrote
templates/prompt.mdwith upstream's, so every model was told at every turn
that it was "released by xAI" instead of "a privacy-first coding agent
optimized for the Chutes ecosystem" — the branding fix in 1.0.1 covered what
the user could see, not what the model was told. The same overwrite deleted
the<official_chutes_sources>block, which is the larger loss: it is what
directed the model to treatchutes.ai/docsandchutes.ai/newsas the
primary authority on Chutes products, APIs, models, pricing and quotas, to
say when a claim is unverified rather than blending fact with inference, and
— a security instruction, not a stylistic one — never to put API keys,
credentials, private code or repository contents into a search query or
outbound request. Both restored from 0.4.3 and the encrypted templates
regenerated. Present in the 1.0.3 binaries; this entry was written after the
build was dispatched, so the 1.0.3 tag does not carry it.
Notes on tool compatibility
The catalogue's supported_features is accurate: every model advertising tools
emits a real tool_calls finish, and the two advertising nothing do not. A first
probe suggested three Qwen models were broken — they were not. The probe gave them
96 output tokens, which a reasoning model spends thinking before it can emit the
call. That is the finding worth keeping: a thinking model needs output budget
before tool use works at all, and without it the failure is silent and looks like
missing support.