← Qwen Code
Qwen Code Release v0.25.1
breakingmodel2026-10-11 · official notes
Summary
- <!-- qwen-release-notes:v1 -->
- See the complete change list below.
- Breaking Changes
Full notes
<!-- qwen-release-notes:v1 -->
## Highlights
_See the complete change list below._
## Breaking Changes
No known breaking changes.
## Complete Change List
### Features
- Restores the selected text-only connection and validated session or workspace route after Android Activity recreation, while preserving explicit retry screens after failures. ([#12247](https://github.com/QwenLM/qwen-code/pull/12247)) by @jabrailkhalil
- Improves mobile profile screen accessibility with clearer connection actions, editor labels, validation announcements, and scrollable storage recovery. ([#12129](https://github.com/QwenLM/qwen-code/pull/12129)) by @jabrailkhalil
- Adds an experimental Kubernetes CSI-backed runtime that validates workspaces, persists pod identity, and records durable worker acknowledgements for managed sessions. ([#13289](https://github.com/QwenLM/qwen-code/pull/13289)) by @doudouOUC
- Adds background Shell and Monitor capabilities to the Managed Agent runtime, enabling durable background shell sessions and task event reporting. ([#13265](https://github.com/QwenLM/qwen-code/pull/13265)) by @wenshao
- Web Shell /btw side can now create independent side-task conversations in a parent session's secondary workspace, including while the parent is responding. ([#13468](https://github.com/QwenLM/qwen-code/pull/13468)) by @wenshao
- Agent and Goal coordination tools are now deferred by default and discovered on demand, reducing unnecessary tool declarations in ordinary tool-call sessions. ([#13033](https://github.com/QwenLM/qwen-code/pull/13033)) by @yiliang114
- Local Managed Agent runtime tool outcomes are now durably recorded, including parameters, receipts, and checkpoints, before results are returned to the model. ([#13291](https://github.com/QwenLM/qwen-code/pull/13291)) by @wenshao
- Hosted approval requests can now include bounded previews of file and shell input, exposed through public and WebShell APIs with truncation metadata. ([#13400](https://github.com/QwenLM/qwen-code/pull/13400)) by @yiliang114
- Lets creators change a Workspace-bound Managed Session's working directory through a durable, idempotent operation. ([#13247](https://github.com/QwenLM/qwen-code/pull/13247)) by @wenshao
- Adds read-only glob file discovery to Hosted Workspace /2 profiles while keeping searches inside the session working directory. ([#13166](https://github.com/QwenLM/qwen-code/pull/13166)) by @yiliang114
- Adds planned Stage H5 agent channel API route shapes and persistence tables for channel routes and outbound deliveries. ([#13497](https://github.com/QwenLM/qwen-code/pull/13497)) by @wenshao
- feat(web-shell): take back a cancelled prompt that produced nothing ([#13488](https://github.com/QwenLM/qwen-code/pull/13488)) by @wenshao
- feat(hosted): show captured inputs in native approval cards ([#13407](https://github.com/QwenLM/qwen-code/pull/13407)) by @yiliang114
- feat(managed-agent): EventTransport message-envelope contract ([#13498](https://github.com/QwenLM/qwen-code/pull/13498)) by @wenshao
- feat(managed-agent): adopt the next Hosted Harness generation (G3) ([#13174](https://github.com/QwenLM/qwen-code/pull/13174)) by @wenshao
- feat(managed-agent): enumerate the public and WebShell surface with an admission gate ([#13543](https://github.com/QwenLM/qwen-code/pull/13543)) by @wenshao
- feat(managed-agent): H4a child agent and child acceptance record contract ([#13505](https://github.com/QwenLM/qwen-code/pull/13505)) by @wenshao
- feat(managed-agent): give Hosted turns the Workspace's project context ([#13168](https://github.com/QwenLM/qwen-code/pull/13168)) by @yiliang114
- feat(managed-agent): H6a schedule and automation run record contract ([#13536](https://github.com/QwenLM/qwen-code/pull/13536)) by @wenshao
- feat(managed-agent): H5a channel route and delivery record contract ([#13548](https://github.com/QwenLM/qwen-code/pull/13548)) by @wenshao
- feat(web-shell): Add fullscreen viewing for history tables ([#13589](https://github.com/QwenLM/qwen-code/pull/13589)) by @wenshao
- feat(managed-agent): prove Shell process-group stops with a worker ledger (M5c) ([#13352](https://github.com/QwenLM/qwen-code/pull/13352)) by @wenshao
- feat(managed-agent): add W1c offline workspace migration ([#13260](https://github.com/QwenLM/qwen-code/pull/13260)) by @doudouOUC
- feat(agents): session-centric multi-agent collaboration ([#13467](https://github.com/QwenLM/qwen-code/pull/13467)) by @yiliang114
- feat(managed-agent): add reliable ACTIVE Workspace deletion (L3) ([#13354](https://github.com/QwenLM/qwen-code/pull/13354)) by @doudouOUC
- feat(hooks): apply PreToolUse updatedInput with full revalidation ([#13442](https://github.com/QwenLM/qwen-code/pull/13442)) by @qqqys
- feat(web-shell): add trajectory search and diagnostic filters ([#13264](https://github.com/QwenLM/qwen-code/pull/13264)) by @qqqys
- feat(web-shell): restore aggregated workspace hosts in sidebar ([#13677](https://github.com/QwenLM/qwen-code/pull/13677)) by @yiliang114
- feat(managed-agent): persist workspace actor roles and session owners ([#13544](https://github.com/QwenLM/qwen-code/pull/13544)) by @wenshao
- feat(managed-agent): H4b child Session runtime ([#13550](https://github.com/QwenLM/qwen-code/pull/13550)) by @wenshao
- feat(web-shell): browse earlier trajectory windows ([#13716](https://github.com/QwenLM/qwen-code/pull/13716)) by @qqqys
- feat(agents): remove the thread backend and run A2A on sessions ([#13583](https://github.com/QwenLM/qwen-code/pull/13583)) by @yiliang114
- feat(trajectory): preserve model request execution identity ([#13740](https://github.com/QwenLM/qwen-code/pull/13740)) by @qqqys
- feat(managed-agent): H5b/H5c channel runtime for the email reference adapter ([#13572](https://github.com/QwenLM/qwen-code/pull/13572)) by @wenshao
- feat(managed-agent): add opt-in production replay-floor advancement for Session event retention (#12380) ([#13621](https://github.com/QwenLM/qwen-code/pull/13621)) by @qwen-code-dev-bot
- feat(managed-agent): H4c workflow child kind and child launch budget ([#13754](https://github.com/QwenLM/qwen-code/pull/13754)) by @wenshao
- feat(managed-agent): enforce workspace actor roles across the bound-Session surface ([#13545](https://github.com/QwenLM/qwen-code/pull/13545)) by @wenshao
- feat(managed-agent): H6b/H6c automation runtime for persistent definitions ([#13598](https://github.com/QwenLM/qwen-code/pull/13598)) by @wenshao
- feat(core): record prompt execution context ([#13712](https://github.com/QwenLM/qwen-code/pull/13712)) by @ytahdn
- feat(managed-agent): H4d-a session message record contract and child continuation rules ([#13786](https://github.com/QwenLM/qwen-code/pull/13786)) by @wenshao
- feat(managed-agent): H4e-a team record contract ([#13811](https://github.com/QwenLM/qwen-code/pull/13811)) by @wenshao
- feat(managed-agent): child Workspace capability for managed child Sessions (#13753 I1) ([#13781](https://github.com/QwenLM/qwen-code/pull/13781)) by @wenshao
- feat(trajectory): record and replay request lifecycle (PR6B) ([#13755](https://github.com/QwenLM/qwen-code/pull/13755)) by @qqqys
- feat(managed-agent): restart-recoverable foreground child wait (fixes #13708) ([#13769](https://github.com/QwenLM/qwen-code/pull/13769)) by @wenshao
- feat(web-shell): connect saved daemons simultaneously, no-flash host switching (#13727) ([#13739](https://github.com/QwenLM/qwen-code/pull/13739)) by @yiliang114
- feat(managed-agent): H4e-b1 lead-side team runtime ([#13824](https://github.com/QwenLM/qwen-code/pull/13824)) by @wenshao
- feat(managed-agent): H4f public task cancel for child agent tasks ([#13823](https://github.com/QwenLM/qwen-code/pull/13823)) by @wenshao
- feat(trajectory): record native tool execution lifecycles ([#13836](https://github.com/QwenLM/qwen-code/pull/13836)) by @qqqys
- feat(managed-agent): worktree admission for managed child agents (#13753 I2) ([#13841](https://github.com/QwenLM/qwen-code/pull/13841)) by @wenshao
- feat(managed-agent): H4d-b session message runtime ([#13822](https://github.com/QwenLM/qwen-code/pull/13822)) by @wenshao
- feat(mods): run experimental headless Mod commands ([#13843](https://github.com/QwenLM/qwen-code/pull/13843)) by @qqqys
- feat(managed-agent): enable the H4e-b1 team domains after the physical pass ([#13846](https://github.com/QwenLM/qwen-code/pull/13846)) by @wenshao
- feat(managed-agent): Collect retired stream-capture tool outputs (#13534) ([#13554](https://github.com/QwenLM/qwen-code/pull/13554)) by @wenshao
- feat(managed-agent): execute pinned AgentDefinition revisions ([#13530](https://github.com/QwenLM/qwen-code/pull/13530)) by @yiliang114
- feat(core): Keep complete file reads on one opened source ([#13776](https://github.com/QwenLM/qwen-code/pull/13776)) by @doudouOUC
- feat(managed-agent): support WebShell session cwd changes ([#13760](https://github.com/QwenLM/qwen-code/pull/13760)) by @doudouOUC
- feat(web-shell): add Send now for queued mid-turn messages ([#13681](https://github.com/QwenLM/qwen-code/pull/13681)) by @wenshao
### Bug Fixes
- Replaces a selected remote host in Web Shell without losing agent bindings by revoking the old credential and moving bindings to the new host. ([#13430](https://github.com/QwenLM/qwen-code/pull/13430)) by @yiliang114
- Adds a 60-second wait before retrying E2E build artifact downloads to reduce false failures from immediate back-to-back attempts. ([#13292](https://github.com/QwenLM/qwen-code/pull/13292)) by @qwen-code-dev-bot
- Makes yamllint and shellcheck CI lanes fail clearly when the git file list is empty instead of silently passing or showing misleading errors. ([#12650](https://github.com/QwenLM/qwen-code/pull/12650)) by @qwen-code-dev-bot
- Improves managed-agent SSE delivery by using Condition-based waiting instead of pinning virtual-thread carriers. ([#13402](https://github.com/QwenLM/qwen-code/pull/13402)) by @wenshao
- Prevents managed-agent harness attachment creation from blocking concurrent map monitors, avoiding virtual-thread carrier pinning under cold bursts. ([#13403](https://github.com/QwenLM/qwen-code/pull/13403)) by @wenshao
- Fixes /context detail so per-tool MCP rows are scaled consistently and add up to the MCP tools row on both estimate and provider-count paths. ([#13390](https://github.com/QwenLM/qwen-code/pull/13390)) by @Shizoqua
- Aligns memory-index prompt loading with the writer budget so oversized entries are omitted whole and later complete entries remain available in order. ([#13315](https://github.com/QwenLM/qwen-code/pull/13315)) by @beibeihk
- Fixes vim-mode clipboard paste on Windows by making clipboard reads more reliable with PowerShell UTF-8 output, a longer timeout, and normalized line endings. ([#13198](https://github.com/QwenLM/qwen-code/pull/13198)) by @Bug-killer-prog
- Stops automatic QWEN.md and AGENTS.md discovery at the Git root so files in parent directories above the repository no longer enter requests. ([#13381](https://github.com/QwenLM/qwen-code/pull/13381)) by @agammann
- Extension Git operations no longer stall waiting for interactive credentials; unauthenticated sources now fail immediately. ([#13454](https://github.com/QwenLM/qwen-code/pull/13454)) by @yiliang114
- Settings file replacement now preserves the existing file's POSIX permission bits under stricter umask, improving safety and consistency when saving settings. ([#13293](https://github.com/QwenLM/qwen-code/pull/13293)) by @doudouOUC
- Fixes WeChat login QR code generation by sending required iLink headers with the request. ([#13482](https://github.com/QwenLM/qwen-code/pull/13482)) by @yiliang114
- Recognizes llama.cpp context-overflow wording so compaction runs instead of looping on HTTP 400. ([#13421](https://github.com/QwenLM/qwen-code/pull/13421)) by @yiliang114
- Recovers complete function-style XML tool calls so they execute instead of remaining assistant text. ([#13437](https://github.com/QwenLM/qwen-code/pull/13437)) by @yiliang114
- Honors memory.agentMaxTurns in user-scoped memory dream and restricts turn/timeout limits to trusted operator settings. ([#13462](https://github.com/QwenLM/qwen-code/pull/13462)) by @yiliang114
- Prevents MCP permission rules for one server from authorizing a different colliding server. ([#12531](https://github.com/QwenLM/qwen-code/pull/12531)) by @yiliang114
- Fixes web-shell managed session UI correctness issues including stale error banners, turn settling, pending-prompt handling, session switching, and provider rebuild behavior. ([#13342](https://github.com/QwenLM/qwen-code/pull/13342)) by @wenshao
- Makes main-branch CI failures caused only by GitHub infrastructure issues rerun failed jobs once instead of filing an autofix issue. ([#13512](https://github.com/QwenLM/qwen-code/pull/13512)) by @qwen-code-dev-bot
- fix(core): keep nested tool_call arguments open on Responses; name the target in bridged validation errors ([#12901](https://github.com/QwenLM/qwen-code/pull/12901)) by @yiliang114
- Ensures memory agent budget settings are honored only from User, System, and SystemDefaults scopes, with workspace values ignored and warned. ([#13508](https://github.com/QwenLM/qwen-code/pull/13508)) by @yiliang114
- Prevents an XML tool call quoted inside a parameter value from being dispatched as a real tool call. ([#13515](https://github.com/QwenLM/qwen-code/pull/13515)) by @yiliang114
- fix(ci): raise the Hosted verify step ceiling above its failsafe fork timeout (#13503) ([#13504](https://github.com/QwenLM/qwen-code/pull/13504)) by @qwen-code-dev-bot
- fix(ci): sweep stale pool residue before sdk-java checkouts ([#13507](https://github.com/QwenLM/qwen-code/pull/13507)) by @qwen-code-dev-bot
- fix(managed-agent): check the replay before publishing a domain record ([#13376](https://github.com/QwenLM/qwen-code/pull/13376)) by @wenshao
- fix(core): key the models.dev catalog under dotted as well as dashed ids ([#13299](https://github.com/QwenLM/qwen-code/pull/13299)) by @yiliang114
- fix(mobile): resolve document providers once per selection ([#13147](https://github.com/QwenLM/qwen-code/pull/13147)) by @jabrailkhalil
- fix(managed-agent): close the three Critical H0c follow-ups from #13300 ([#13355](https://github.com/QwenLM/qwen-code/pull/13355)) by @wenshao
- fix(core): stop advertising unsupported LSP dynamic registration ([#13494](https://github.com/QwenLM/qwen-code/pull/13494)) by @shenyankm
- fix(core): stop JSONL prefix reads when their budget is met ([#13486](https://github.com/QwenLM/qwen-code/pull/13486)) by @GoldArowana
- fix(web-shell): escape control characters in the managed approval args preview ([#13549](https://github.com/QwenLM/qwen-code/pull/13549)) by @yiliang114
- fix(core): budget side-query output tokens against the resolved context window ([#13244](https://github.com/QwenLM/qwen-code/pull/13244)) by @yiliang114
- fix(agent): enforce per-model concurrency cap on foreground sub-agents ([#12461](https://github.com/QwenLM/qwen-code/pull/12461)) by @Andrea-Bruno
- fix(runtime-broker): keep the HTTP exchange cancel off the deadline completion path ([#13562](https://github.com/QwenLM/qwen-code/pull/13562)) by @wenshao
- fix(ci): skip millisecond latency budgets on the release ECS pool (#13541) ([#13547](https://github.com/QwenLM/qwen-code/pull/13547)) by @qwen-code-dev-bot
- fix(docs): apply Prettier formatting to the daemon event schema (#13573) ([#13580](https://github.com/QwenLM/qwen-code/pull/13580)) by @qwen-code-dev-bot
- fix(acp): preserve branch checkpoints after Code Mode turns ([#13574](https://github.com/QwenLM/qwen-code/pull/13574)) by @yiliang114
- fix(web-shell): allow deleting queued prompts during admission ([#13594](https://github.com/QwenLM/qwen-code/pull/13594)) by @yiliang114
- fix(serve): invalidate the Hosted Workspace context on instruction-file changes ([#13605](https://github.com/QwenLM/qwen-code/pull/13605)) by @yiliang114
- fix(web-shell): follow an accepted approval answer to its terminal operation ([#13609](https://github.com/QwenLM/qwen-code/pull/13609)) by @yiliang114
- fix(managed-agent): commit oversized message records as inline chunks ([#13375](https://github.com/QwenLM/qwen-code/pull/13375)) by @wenshao
- fix(ci): classify runner-acquisition failure as infrastructure (#13622) ([#13626](https://github.com/QwenLM/qwen-code/pull/13626)) by @qwen-code-dev-bot
- fix(web-shell): sanitise model-supplied text at the approval card's sibling render sites ([#13578](https://github.com/QwenLM/qwen-code/pull/13578)) by @yiliang114
- fix(feishu): preserve text and clean up failed inbound file writes ([#13337](https://github.com/QwenLM/qwen-code/pull/13337)) by @jabrailkhalil
- fix(managed-agent): clear successful Workspace migration diagnostics ([#13655](https://github.com/QwenLM/qwen-code/pull/13655)) by @doudouOUC
- fix(managed-agent): stop a bound Turn under refused authorization ([#13163](https://github.com/QwenLM/qwen-code/pull/13163)) by @yiliang114
- fix(acp): include stored attachment paths in model context ([#13668](https://github.com/QwenLM/qwen-code/pull/13668)) by @ytahdn
- fix(core): preserve GLM vision metadata for dashed model IDs ([#13651](https://github.com/QwenLM/qwen-code/pull/13651)) by @yiliang114
- fix(goals): separate aggregate summaries from external facts ([#13575](https://github.com/QwenLM/qwen-code/pull/13575)) by @yiliang114
- fix(core): hide the hook child console on Windows ([#13670](https://github.com/QwenLM/qwen-code/pull/13670)) by @yiliang114
- fix(acp-bridge): keep local published file artifacts ephemeral ([#12395](https://github.com/QwenLM/qwen-code/pull/12395)) by @zjgzx1988
- fix(workflow): show results and failures in /workflows run details ([#13646](https://github.com/QwenLM/qwen-code/pull/13646)) by @qqqys
- fix(core): gate discovery hints on registered capabilities ([#13576](https://github.com/QwenLM/qwen-code/pull/13576)) by @yiliang114
- fix(memory): preserve the prompt prefix when memory indexes change ([#13521](https://github.com/QwenLM/qwen-code/pull/13521)) by @yiliang114
- fix(core): surface PreToolUse ask content on MCP tool confirmations (#13687) ([#13697](https://github.com/QwenLM/qwen-code/pull/13697)) by @yiliang114
- fix(web-shell): preserve artifact cards during reconnect ([#13714](https://github.com/QwenLM/qwen-code/pull/13714)) by @ytahdn
- fix(web-shell): allow downloading changed workspace artifacts ([#13718](https://github.com/QwenLM/qwen-code/pull/13718)) by @ytahdn
- fix(browser-use): fail fast when no Native Messaging host can be registered ([#13699](https://github.com/QwenLM/qwen-code/pull/13699)) by @yiliang114
- fix(web-shell): Select worktree mode without extra confirmation ([#13607](https://github.com/QwenLM/qwen-code/pull/13607)) by @wenshao
- fix(web-shell): show workspace artifacts by their filename ([#13672](https://github.com/QwenLM/qwen-code/pull/13672)) by @zjgzx1988
- fix(cli): preserve complete Hosted no-tool model Parts ([#13750](https://github.com/QwenLM/qwen-code/pull/13750)) by @doudouOUC
- fix(ci): raise the O4 gate step ceiling above its failsafe fork timeout (#13684) ([#13688](https://github.com/QwenLM/qwen-code/pull/13688)) by @qwen-code-dev-bot
- fix(verify-pr): drop the stale "ships no JDK" claim from the Java lane guidance (#13791) ([#13792](https://github.com/QwenLM/qwen-code/pull/13792)) by @qwen-code-dev-bot
- fix(release): reclaim docker disk and gate the data root before the sandbox image build (#13479) ([#13481](https://github.com/QwenLM/qwen-code/pull/13481)) by @qwen-code-dev-bot
- fix(managed-agent): unblock H3 background Shell and Monitor start path ([#13789](https://github.com/QwenLM/qwen-code/pull/13789)) by @wenshao
- fix(core): leave unknown ${identifier} placeholders literal in subagent prompts ([#13694](https://github.com/QwenLM/qwen-code/pull/13694)) by @yiliang114
- fix(mcp): discover tools on the readResource lazy-spawn path ([#13806](https://github.com/QwenLM/qwen-code/pull/13806)) by @yiliang114
- fiWeekly digest: every breaking change, retirement and price change across 20+ coding agents, one email.
Form not loading? Subscribe here.