Full Changelog: https://github.com/cloudflare/workerd/compare/v1.20260507.1...v1.20260508.1
We are refreshing the Workers AI model catalog to make room for newer releases. Please update your apps to remove references to the models listed below before the deprecation date.
@cf/zai-org/glm-4.7-flash — fast multilingual model with multi-turn tool calling and coding capabilities.
@cf/google/gemma-4-26b-a4b-it — efficient open model with vision and tool calling.
@cf/moonshotai/kimi-k2.6 — capable tool-calling and vision model for agentic workloads and coding.
For pricing, refer to the Workers AI pricing page.
We originally stated Kimi K2.5 would be deprecated on May 10, 2026, however we have extended the deprecation date to May 30, 2026. Requests will be automatically aliased to Kimi K2.6 on May 30, 2026, which has a higher price. Please review the @cf/moonshotai/kimi-k2.6 pricing and model capabilities prior to May 30, 2026 to ensure that the model suits your needs.
@cf/moonshotai/kimi-k2.5 --> @cf/moonshotai/kimi-k2.6
@hf/meta-llama/meta-llama-3-8b-instruct
@cf/meta/llama-3-8b-instruct
@cf/meta/llama-3-8b-instruct-awq
@cf/meta/llama-3.1-8b-instruct
@cf/meta/llama-3.1-8b-instruct-awq
@cf/meta/llama-3.1-70b-instruct
@cf/meta/llama-2-7b-chat-int8
@cf/meta/llama-2-7b-chat-fp16
@cf/mistral/mistral-7b-instruct-v0.1
@hf/mistral/mistral-7b-instruct-v0.2
@hf/google/gemma-7b-it
@cf/google/gemma-3-12b-it
@hf/nousresearch/hermes-2-pro-mistral-7b
@cf/microsoft/phi-2
@cf/defog/sqlcoder-7b-2
@cf/unum/uform-gen2-qwen-500m
@cf/facebook/bart-large-cnn
The -fast and -lora variants of models will remain active, including:
@cf/meta/llama-3.3-70b-instruct-fp8-fast
@cf/meta/llama-3.1-8b-instruct-fast
@cf/google/gemma-7b-it-lora
@cf/google/gemma-2b-it-lora
@cf/mistral/mistral-7b-instruct-v0.2-lora
@cf/meta-llama/llama-2-7b-chat-hf-lora
LoRA models may be deprecated in the future. We will be adding more LoRA capabilities to the catalog, and will communicate when new LoRA models come online to give users time to train new LoRAs before we deprecate old ones.
For the full list of available models, refer to the Workers AI model catalog.
#13850 1527003 Thanks @penalosa! - Migrate bot message generation off the deprecated @cf/meta/llama-2-7b-chat-int8 Workers AI model
Workers AI is deprecating Llama 2 7B chat (alongside several other older models) on May 30th 2026. The status bot now uses @cf/google/gemma-4-26b-a4b-it (Gemma 4) for generating its short, friendly chat messages.
248bc08]:
#12279 248bc08 Thanks @penalosa! - Add deprecation warning for delivery_delay in queue producer bindings
The delivery_delay setting in [[queues.producers]] was silently having no effect since 2024. This change adds a deprecation warning when the setting is used, informing users that queue-level settings should be configured using wrangler queues update instead. The setting will be removed in a future version.
#12279 248bc08 Thanks @penalosa! - Add deprecation warning for delivery_delay in queue producer bindings
The delivery_delay setting in [[queues.producers]] was silently having no effect since 2024. This change adds a deprecation warning when the setting is used, informing users that queue-level settings should be configured using wrangler queues update instead. The setting will be removed in a future version.
#13853 8852b0c Thanks @gpanders! - Fix Containers SSH config
#13858 e414e56 Thanks @penalosa! - Fix wrangler whoami and account selection failing for Account API Tokens
The /memberships fallback for Account API Tokens was checking for code 9109, but /memberships actually returns 9106 for that case. Correct the code so the fallback to /accounts triggers as intended.
Updated dependencies []:
#13348 5cf6f81 Thanks @mglewis! - Improve variant URLs returned by the hosted images mock for local development
The miniflare hosted images mock previously returned bare variant names (e.g. "public") in the variants field of ImageMetadata. In production, this field contains full delivery URLs. The bare names were not usable as image sources, causing applications that render images from variant URLs to fail during local development.
Variant URLs now point to a new local delivery endpoint at /cdn-cgi/imagedelivery/<image_id>/<variant> which serves image bytes directly from the local KV store with content-type detection via Sharp.
5cf6f81]:
#13824 dd3baf3 Thanks @emily-shen! - Fix container deployment being skipped for Workers for Platforms user workers
Previously, deploying a worker with --dispatch-namespace would early-exit before calling deployContainers(), meaning container-app registration that links the image to the Durable Object namespace was never executed for WfP user workers. Container deployment now runs before the WfP early exit.
Updated dependencies [5cf6f81]:
#13055 f3fed88 Thanks @GregBrimble! - Introducing the cache configuration option for Workers.
You can now set { cache: { enabled: true } } in your Wrangler configuration file to enable a HTTP cache in front of your Worker's fetch handler. This is also supported in [previews] configuration — previews.cache overrides the top-level cache setting for preview deployments, and falls back to the top-level value when absent. More information can be found in our documentation.
#13776 1a54ac5 Thanks @petebacondarwin! - wrangler dev and other Miniflare-backed commands now run the local workerd runtime with TZ=UTC to match production
Previously, wrangler dev (and other commands that spin up Miniflare, such as wrangler kv, wrangler d1, wrangler r2, wrangler check) inherited the host machine's timezone, so Date and Intl APIs inside a Worker observed the developer's local timezone during local development but UTC in production. This caused subtle, hard-to-debug differences between local and deployed behaviour.
Local development now matches production. Code that previously relied on the host timezone during wrangler dev will need to either accept UTC (the production behaviour) or explicitly construct dates/formatters with the desired timezone.
#13829 2284f20 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260504.1 | 1.20260506.1 |
#13841 332f527 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260506.1 | 1.20260507.1 |
#13777 18e833d Thanks @matingathani! - fix: throw a clear error when _routes.json contains invalid JSON instead of silently skipping it
#13751 b6cea17 Thanks @matingathani! - fix: ensure wrangler types --check --env-file does not falsely report stale types when .dev.vars exists
#13775 53e846a Thanks @maxwellpeterson! - Fix wrangler preview not propagating the assets binding to preview deployments
Previously, wrangler preview would upload the asset manifest correctly but the resulting preview deployment had no ASSETS binding (or whatever name was configured under assets.binding). Workers reading from the binding would see undefined and fail at runtime.
The fix emits the assets binding into the deployment's env map alongside other bindings, mirroring wrangler deploy.
#13770 beff19c Thanks @petebacondarwin! - Only show accounts available for the current login auth in wrangler whoami and the interactive account picker
Wrangler now lists the intersection of /accounts and /memberships instead of either endpoint alone, dropping accounts the active OAuth token or API token has no membership in. The accounts field of wrangler whoami --json is filtered the same way. When /memberships is inaccessible to the current auth (e.g. Account API Tokens) Wrangler falls back to /accounts so those tokens continue to work as before.
#13832 af42fed Thanks @gpanders! - Show containers ssh in wrangler containers --help and in wrangler containers ssh --help
The containers ssh command was previously hidden, so it did not appear in the list of subcommands shown by wrangler containers --help, and its description was omitted from wrangler containers ssh --help. The command is now listed with its description in both places.
Updated dependencies [2284f20, 332f527, 039bada, 1a54ac5]:
#13802 a7fd465 Thanks @deodad! - Fix .dev.vars written for vite preview to round-trip values containing quotes
When the plugin emits dist/<env>/.dev.vars for vite preview, it previously wrote each value as a double-quoted dotenv string with " escaped to \". dotenv (the parser wrangler uses) does not unescape \" inside double-quoted values, so values containing " arrived at the worker with literal backslashes still in them.
The plugin now quotes strings using the first quote character that does not appear in the value (with the priority order: single → backtick → double), all of which dotenv strips correctly. If a value contains every supported quote character it throws instead of silently corrupting the value.
Updated dependencies [2284f20, 332f527, 039bada, 18e833d, b6cea17, 1a54ac5, 53e846a, f3fed88, beff19c, af42fed, 1a54ac5]:
#13836 039bada Thanks @Skye-31! - Support named recipients in the Email Sending API MessageBuilder
The send_email binding's MessageBuilder now accepts EmailAddress objects for to, cc, and bcc in addition to plain strings. You can mix named and plain addresses in the same array:
await env.SEND_EMAIL.send({
from: "sender@example.com",
to: [
"plain@example.com",
'"Name" <address@example.com>',
{ name: "Jane Doe", email: "jane@example.com" },
],
cc: [{ name: "CC Person", email: "cc@example.com" }],
subject: "Hello",
text: "...",
});
Additionally, addresses in "Name" <address> format are now correctly parsed when checking allowed_destination_addresses and allowed_sender_addresses restrictions.
#13776 1a54ac5 Thanks @petebacondarwin! - Default the workerd runtime subprocess to TZ=UTC to match the production Cloudflare runtime
Previously, Miniflare inherited the host machine's timezone, so Date and Intl APIs inside a Worker observed the developer's local timezone during local development but UTC in production. This caused dev/prod drift that was hard to debug.
Miniflare now sets TZ=UTC on the spawned workerd subprocess by default. A new unsafeRuntimeEnv option (a Record<string, string>) is available on the Miniflare constructor for advanced cases that need to override the default — for example, to test timezone-dependent behaviour:
new Miniflare({
modules: true,
script: "...",
unsafeRuntimeEnv: { TZ: "Europe/London" },
});
#13829 2284f20 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260504.1 | 1.20260506.1 |
#13841 332f527 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260506.1 | 1.20260507.1 |