{"slug":"workers-ai-coding-models","verification":{"valid":false,"broken_at":0,"reason":"prev mismatch"},"count":26,"sources":[{"id":"s1","type":"publisher_documentation","url":"https://developers.cloudflare.com/workers-ai/platform/pricing/","title":"Workers AI pricing","publisher":"Cloudflare","date":"2026-07-26","quote":"Workers AI is included in both the Free and Paid Workers plans and is priced at **$0.011 per 1,000 Neurons**.","summary":"The canonical per-model rate card: every @cf/ model with a Price in Tokens column and a Price in Neurons column, plus the 10,000-Neuron daily free allocation. Positive: it is the only place the two units appear side by side. Negative: its dollar column rounds GLM-4.7 Flash to $0.060 while its own neuron figure works out to $0.0605.","claim_ids":["c1","c3","c6","c7"]},{"id":"s2","type":"publisher_documentation","url":"https://developers.cloudflare.com/ai-gateway/features/unified-billing/","title":"Unified Billing","publisher":"Cloudflare","date":"2026-06-22","quote":"Workers AI models (models prefixed with `@cf/`) routed through AI Gateway are not charged via Unified Billing. These models are billed through Workers AI pricing instead. Unified Billing only applies to third-party provider models (such as OpenAI, Anthropic, and Google AI Studio).","summary":"States the billing split that the whole id-prefix distinction rests on, plus the 5% fee on credit purchases and the requirement that the gateway be authenticated. What a reader gets: the reason a catalogue id and a Workers AI id cannot be swapped freely.","claim_ids":["c1","c2"]},{"id":"s3","type":"publisher_documentation","url":"https://developers.cloudflare.com/ai/models/","title":"Cloudflare AI model catalog","publisher":"Cloudflare","date":"2026-07-26","quote":"kimi-k3Moonshot AIText GenerationKimi K3 is Moonshot's flagship 2.8 trillion-parameter model... Third-party","summary":"The combined listing of Cloudflare-hosted and third-party models, tagged 'Cloudflare-hosted' or 'Third-party'. Useful for seeing both families in one place; useless for prices, which are absent for every third-party entry.","claim_ids":["c2","c4"]},{"id":"s4","type":"publisher_documentation","url":"https://developers.cloudflare.com/ai/models/moonshotai/kimi-k3/","title":"Kimi K3 (Moonshot AI) model page","publisher":"Cloudflare","date":"2026-07-26","quote":"Context Window | 1,048,576 tokens ... Request formats | Chat Completions ... Pricing | View pricing in the Cloudflare dashboard","summary":"The largest context window Cloudflare will route, and a Pricing row that is a dashboard link rather than a number. Negative: no per-token rate is published for this model anywhere in the documentation.","claim_ids":["c4","c5"]},{"id":"s5","type":"publisher_documentation","url":"https://developers.cloudflare.com/ai/models/minimax/m3/","title":"MiniMax M3 model page","publisher":"Cloudflare","date":"2026-07-26","quote":"Context Window | 1,000,000 tokens ... Request formats | Chat Completions, Anthropic Messages ... Pricing | View pricing in the Cloudflare dashboard","summary":"Lists Anthropic Messages as a supported request format for this model. Measured behaviour contradicts the envelope that implies: the endpoint answers with an OpenAI chat.completion body. Negative, and the contradiction is the point.","claim_ids":["c4","c9"]},{"id":"s6","type":"publisher_documentation","url":"https://developers.cloudflare.com/ai/models/xai/grok-4.5/","title":"Grok 4.5 (xAI) model page","publisher":"Cloudflare","date":"2026-07-26","quote":"Context Window | 500,000 tokens ... Pricing | View pricing in the Cloudflare dashboard","summary":"Third of the three catalogue coding models, same missing price. Confirms the omission is systematic rather than an oversight on one page.","claim_ids":["c4"]},{"id":"s7","type":"publisher_documentation","url":"https://developers.cloudflare.com/workers-ai/features/json-mode/","title":"JSON Mode","publisher":"Cloudflare","date":"2026-04-21","quote":"Workers AI supports JSON Mode, enabling applications to request a structured output response when interacting with AI models. JSON Mode is compatible with OpenAI's implementation; to enable add the `response_format` property to the request object","summary":"The feature that breaks reasoning models. Documents the response_format contract without noting that a model which emits a think preamble has nowhere to put it. Positive on syntax, silent on the failure mode.","claim_ids":["c11"]},{"id":"s8","type":"publisher_documentation","url":"https://developers.cloudflare.com/workers-ai/features/function-calling/","title":"Function calling","publisher":"Cloudflare","date":"2026-07-26","quote":"In essence, function calling allows you to perform actions with LLMs by executing code or making additional API calls.","summary":"Explains the capability an agent cannot work without. Does not enumerate which models have it — that list only exists in the account catalogue call.","claim_ids":["c3"]},{"id":"s9","type":"specification","url":"https://developers.cloudflare.com/api/resources/ai/subresources/models/methods/list/","title":"Cloudflare API reference: AI models list","publisher":"Cloudflare","date":"2026-07-26","quote":"GET /accounts/{account_id}/ai/models/search","summary":"The API method that returns the account's model catalogue with context_window, function_calling, vision and price properties. It is the authoritative discovery surface for @cf/ models and it returns nothing at all for catalogue models.","claim_ids":["c3","c4","c6"]},{"id":"s10","type":"specification","url":"https://developers.cloudflare.com/ai-gateway/usage/rest-api/","title":"AI Gateway REST API","publisher":"Cloudflare","date":"2026-07-26","quote":"curl -X POST \"https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/v1/chat/completions\"","summary":"The endpoint contract for both /ai/v1/chat/completions and /ai/v1/messages, which is where the Anthropic-shape refusal comes from. Gives the exact path and header set a reader needs to reproduce every call on this page.","claim_ids":["c8","c9"]},{"id":"s11","type":"publisher_documentation","url":"https://developers.cloudflare.com/workers-ai/configuration/open-ai-compatibility/","title":"OpenAI compatible API endpoints","publisher":"Cloudflare","date":"2026-07-26","quote":"/ai/v1/chat/completions","summary":"Defines the compatibility surface as Chat Completions and Embeddings. Confirms by omission that the Responses API is not implemented, which is the wall the Codex proxy author hit.","claim_ids":["c15"]},{"id":"s12","type":"repository","url":"https://github.com/massoumicyrus/claude-code-cloudflare-gateway","title":"claude-code-cloudflare-gateway","publisher":"GitHub","date":"2026-07-25","quote":"['claude-kimi-k2.7-code', '@cf/moonshotai/kimi-k2.7-code', 'Kimi K2.7 Code (Workers AI, 262k)']","summary":"MIT-licensed translator between the Anthropic Messages API and the Cloudflare AI REST surface. Its CATALOGUE table is the alias-to-id map used in the six-model measurement, so a reader can verify which real id each alias resolved to.","claim_ids":["c16"]},{"id":"s13","type":"github","url":"https://github.com/aarora79/agentic-coding-harness-benchmarks/pull/10","title":"README: publish self-hosted results (Kimi-K2.7-Code + 3 Qwen models)","author":"aarora79","publisher":"GitHub","date":"2026-07-24","quote":"**Hardware:** Kimi-K2.7-Code (1.06T-param MoE) ran on **8x H200** (`p5en.48xlarge`); the three Qwen models (3B-active MoE) on a single **`g6e.12xlarge`** (4x L40S). All via vLLM.","summary":"Retracted a previously published 5x6 results matrix because the per-model numbers were not reproducible from artifacts in the repo, and republished only end-to-end runs. Kimi-K2.7-Code scores a 58.95 five-task mean against Qwen3.6-35B at 56.25 and Qwen3-Coder-30B at 34.15, but scores 0.0 on keycloak-rds-iam where Qwen3.6-35B leads. Positive on Kimi, and unusually honest about hardware cost asymmetry.","claim_ids":["c13","c14"]},{"id":"s14","type":"github","url":"https://github.com/OpenHackersClub/flare-dispatch/pull/213","title":"fix(review-agent): stop sending guided-JSON by default — it breaks GLM on the Workers AI binding","author":"debuggingfuture","publisher":"GitHub","date":"2026-06-27","quote":"glm-4.7-flash answers correctly in the Cloudflare playground but failed **every** pr-review with `StructuredOutputInvalid: empty`.","summary":"Root-caused a total GLM failure on the Workers AI binding to constrained decoding: sending the schema as response_format forbids the <think> preamble a reasoning model emits first, so the engine's think-strip leaves nothing. Confirmed glm-5.2, the catalog's most expensive GLM, failed identically — proving it was the decode path, not the model. Explicitly retracts the earlier \"GLM is out\" verdict. Negative finding, positive outcome.","claim_ids":["c11"]},{"id":"s15","type":"github","url":"https://github.com/tenstorrent/tt-inference-server/issues/4441","title":"[Kimi-K2.7-Code] Corrupted Outputs","author":"ipastalTT","publisher":"GitHub","date":"2026-06-30","quote":"People chatting on the console were seeing corrupted outputs. We did not observe something like this during the weekend nor with release workflow with limited samples.","summary":"Serving-side report from Tenstorrent: Kimi-K2.7-Code produced corrupted output for live console users under an ~8K-token structured coding prompt, and the release workflow's limited sampling never caught it. Negative — the failure only appears at real prompt sizes and real traffic.","claim_ids":["c12"]},{"id":"s16","type":"github","url":"https://github.com/anomalyco/opencode/issues/38813","title":"Internal Service Error in kimi-k2.7-code","author":"Faith-2002","publisher":"GitHub","date":"2026-07-25","quote":"When I use the kimi-k2.7-code provided by a third party, I get the following error in consistency complex tasks:{\"type\":\"error\",\"sequence_number\":1584,\"code\":\"InternalServiceError\",\"message\":\"The service encountered an unexpected internal error.\",\"param\":\"\"}","summary":"opencode 1.18.5 on Windows 11, Kimi-K2.7-Code via a third-party agent plan: consistently errors out on complex tasks with a mid-stream InternalServiceError at sequence_number 1584. Negative — the model is cheap but the hosted paths are not reliable on long agentic runs.","claim_ids":["c12"]},{"id":"s17","type":"github","url":"https://github.com/ollama/ollama-vscode/issues/9","title":"Having some trouble with vision support for Kimi K2.7 Code","author":"vilicvane","publisher":"GitHub","date":"2026-07-06","quote":"The original VSCode built-in Ollama seem to work vision of with Kimi K2.7 Code. However, when use with models provided by this extension, Kimi complains corrupted images.","summary":"Same model, two client paths: vision works through the VS Code built-in Ollama integration and fails with corrupted-image complaints through the extension's own provider. Negative, and the same class of client-side payload-shape bug that breaks image reading when a coding CLI is pointed at a non-native backend.","claim_ids":["c10"]},{"id":"s18","type":"github","url":"https://github.com/github/copilot-cli/issues/4029","title":"Kimi K2.7 Code is not available in Pro subscription","author":"aregtech","publisher":"GitHub","date":"2026-07-04","quote":"The GitHub policy says that Kimi Code 2.7 (model `kimi-k2.7-code`) is available for Pro subscription. - In fact, it is listed in the `Blocked / Disabled` list.","summary":"Copilot Pro subscriber cites the 2026-07-01 changelog announcing Kimi K2.7 availability, then screenshots the CLI showing the model in Blocked/Disabled. Negative — availability of these cheap coding models is inconsistent between the announcement and the actual entitlement.","claim_ids":["c17"]},{"id":"s19","type":"hn","url":"https://news.ycombinator.com/item?id=47739925","title":"Show HN: Codex Workers AI Proxy – Use Cloudflare Workers AI models in Codex CLI","author":"mrnoname","publisher":"Hacker News","date":"2026-04-12","quote":"Workers AI has an OpenAI-compatible API so I expected it to just work with Codex. Nope. The Responses API surface doesn't map","summary":"Had a large unused Cloudflare Startups credit and wanted to spend it on Workers AI models — names Kimi K2.5, Gemma 4, GLM-4.7-Flash and GPT-OSS-120B as the interesting ones. Tried OpenCode's Cloudflare provider first and found the integration incomplete, then hit the Responses-API mismatch and had to write a proxy. Mixed: real cost motive, real breakage.","claim_ids":["c15"]},{"id":"s20","type":"hn","url":"https://news.ycombinator.com/item?id=46366013","title":"Comment on \"GLM-4.7: Advancing the Coding Capability\" — GLM in Claude Code","author":"andai","publisher":"Hacker News","date":"2025-12-23","quote":"I had been using GLM in Claude code with Claude code router, because while you can just change the API endpoint, the web search function doesn't work, and neither does image recognition.","summary":"Ran GLM behind a coding CLI, found its output roughly twice as long and around 30% less readable than the first-party model's. Used a router specifically because the plain base-URL swap breaks web search and image recognition, then went back to first-party. Negative — and the first half of a pair with the same author.","claim_ids":["c18"]},{"id":"s21","type":"hn","url":"https://news.ycombinator.com/item?id=48568587","title":"Comment — z.ai GLM behind Claude Code via a bashrc alias","author":"andai","publisher":"Hacker News","date":"2026-06-17","quote":"But it just works with Claude Code? They have a guide on their website.","summary":"Same operator, six months later, opposite verdict: shares the working alias with GLM-5.2 on the main slot and GLM-4.7 on the background slot. Positive. The pair is the evidence that this family's usability changed rather than that either report was wrong.","claim_ids":["c18"]},{"id":"s22","type":"hn","url":"https://news.ycombinator.com/item?id=46082971","title":"Comment — Claude Code running GLM 4.6 can't do simple tasks","author":"prmph","publisher":"Hacker News","date":"2025-11-28","quote":"For some reason I can't even get Claude Code (Running GLM 4.6) to do the simplest of tasks today without feeling like I want to tear my hair out, whereas it used to be pretty good before.","summary":"Daily-driver report of a swapped-backend setup degrading over time — the same configuration that used to work stopped handling simple tasks. Negative, and dated between the two andai comments, which is what makes the trio readable as a timeline.","claim_ids":["c18"]},{"id":"s23","type":"runtime_receipt","url":"https://miscsubjects.com/api/articles/workers-ai-coding-models","title":"Account model catalogue read on 2026-07-26","publisher":"miscsubjects","date":"2026-07-26","quote":"61 models total; 26 Text Generation; 13 with function_calling=true. @cf/zai-org/glm-4.7-flash price: [{\"unit\":\"per M input tokens\",\"price\":0.0605},{\"unit\":\"per M output tokens\",\"price\":0.4}]","summary":"First-party: GET /accounts/<ACCOUNT_ID>/ai/models/search?per_page=500 with a Workers AI Read token. Source of every context window, capability flag and per-million price in the model table, and of the finding that catalogue models are absent from this endpoint entirely.","claim_ids":["c10","c3","c4","c6"]},{"id":"s24","type":"runtime_receipt","url":"https://miscsubjects.com/api/articles/workers-ai-coding-models","title":"Six models, one coding prompt, measured latency, tokens and cost","publisher":"miscsubjects","date":"2026-07-26","quote":"claude-kimi-k2.7-code 2745ms 49/185 $0.00078655 | claude-glm-5.2 2454ms 53/135 $0.0006682 | claude-glm-flash 7571ms 46/587 $0.00023756 | claude-kimi-k3 6663ms 126/127 $0.002283 | claude-grok-4.5 2271ms 248/37 $0.0010764 | claude-minimax-m3 1809ms 217/68 $0.00011934","summary":"First-party, 04:35:23-04:35:44 UTC 2026-07-26: one POST /v1/messages per model, max_tokens 1024, no tools, single user message. All six returned the identical list comprehension. Latency measured client-side; token counts from the response usage block; cost read from the matching AI Gateway log rows. Establishes the 19x price spread on byte-identical output.","claim_ids":["c16","c19","c20","c5"]},{"id":"s25","type":"runtime_receipt","url":"https://miscsubjects.com/api/articles/workers-ai-coding-models","title":"Reasoning budget, guided JSON and the Anthropic-endpoint refusal","publisher":"miscsubjects","date":"2026-07-26","quote":"{\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"AiError: Anthropic Messages API is not supported for model \\\"@cf/moonshotai/kimi-k2.7-code\\\"\"}}","summary":"First-party on 2026-07-26. GLM-4.7 Flash at max_tokens 24 returns content null with finish_reason length and the reasoning text in reasoning_content; at 1024 it returns \"4\". The same model with a two-field json_schema returns content null at max_tokens 256 and valid JSON at 2048 after 760 output tokens. /ai/v1/messages refuses @cf/ ids with the quoted error and answers minimax/m3 with an OpenAI chat.completion body.","claim_ids":["c11","c21","c8","c9"]},{"id":"s26","type":"runtime_receipt","url":"https://miscsubjects.com/api/articles/workers-ai-coding-models","title":"Neuron reconciliation and the row that does not reconcile","publisher":"miscsubjects","date":"2026-07-26","quote":"{\"prompt_tokens\":18,\"completion_tokens\":24,\"total_tokens\":42,\"neurons\":0.9726}","summary":"First-party: a direct Workers AI call returns a neurons figure that matches the pricing page's neuron rates exactly, while the dollar columns round. The three Workers AI rows in the six-model run multiply out to the logged cost to the last digit; a previously recorded 149,187-input-token Kimi turn billed $0.02852109 does not, implying the cached rate on a turn reporting 64 cached tokens. Published as unreconciled.","claim_ids":["c22","c7"]}]}