← Qwen Code
Qwen Code Release v0.26.2
modelpricing2026-10-27 · official notes
Summary
- <!-- Release notes generated using configuration in .github/release.yml at release/v0.26.2 -->
- feat(managed): add session permission rules and Auto approval by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15448
- fix(cli): harden serve token resolution against project env injection by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15228
Full notes
<!-- Release notes generated using configuration in .github/release.yml at release/v0.26.2 -->
## What's Changed
* feat(managed): add session permission rules and Auto approval by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15448
* fix(cli): harden serve token resolution against project env injection by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15228
* feat(core): add an experimental shared agent loop and run headless on it by @qqqys in https://github.com/QwenLM/qwen-code/pull/15369
* fix(cli): align OpenTUI cancellation and retry with Ink by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15283
* test(managed-agent): assert web_fetch in the Hosted workspace gate fixture by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15451
* fix(vscode): leave edit mode after a refused edit by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15439
* fix(rewind): resolve legacy turns by source identity by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/13737
* test(cli): cover remaining Managed Workspace activation refusals by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15460
* fix(managed-agent): retire registered zombies before startup waits by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15459
* feat(core): attribute 千问AI平台 / QwenCloud requests with the source-config header by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15041
* fix(cli): preserve arrival order of direct-mode stream-json startup messages by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15378
* fix(managed-agent): restore the module and cli lanes after #15448 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15455
* test(managed-agent): correct the CSI inventory column count after #15448 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15469
* docs(design): fix first-run scheduled-task gate examples by @sxl-lucky7 in https://github.com/QwenLM/qwen-code/pull/15452
* test(managed-agent): retry the team-lead boot past the harness port race by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15224
* feat(cli): preserve OpenTUI session replay and rewind by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15384
* fix(cli): preserve checkpoint restore ownership and cold continuation by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15386
* feat(cli): capture and restore complete OpenTUI checkpoints by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15389
* fix(cli): run OpenTUI on private Bun 1.4.4 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15387
* test(ci): pin the disk-pressure collector revision and FULL_PAYLOAD run bodies by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15475
* fix(ci): file main CI failures whose successor has not settled by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15471
* test(integration): pin removeScratchDir retry budget with a mutation witness by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15488
* test: capture expected disk-full logs by @EthDing in https://github.com/QwenLM/qwen-code/pull/8549
* fix(web-shell): keep permission rule declarations self-contained by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15501
* fix(cli): preserve OpenTUI clipboard source across draft recovery by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15396
* fix(hosted): preserve primary MySQL isolation failures by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15505
* fix(cli): stop double-counting reasoning tokens in cost estimates by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15464
* fix(release): bound summary concurrency and refresh release PRs by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15500
* fix(web-shell): Prevent duplicate Managed composers by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15496
* fix(serve): probe X11 display reachability before advertising the native directory picker by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15434
* test(managed-agent): wait for worker exit visibility by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15503
* ci(sdk-java): preserve failure reports and SQL causes by @Aling33 in https://github.com/QwenLM/qwen-code/pull/14910
* test(ci): pin JUnit report upload paths by @barry166 in https://github.com/QwenLM/qwen-code/pull/15502
* fix(test): budget the standalone runtime suite for the release pool by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15102
* feat(managed-agent): pool the automation scanner's rows and lease from the claim time by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15442
* test(cli): budget hosted approval waits for slow runners (#15176) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15183
* fix(cli): refuse an autofix watch a daemon cannot run by @wenshao in https://github.com/QwenLM/qwen-code/pull/15506
* feat(generated-ui): continue analysis with reviewed parameters by @qqqys in https://github.com/QwenLM/qwen-code/pull/15333
* fix(web-shell): simplify status when loading phrases are hidden by @deggs7 in https://github.com/QwenLM/qwen-code/pull/15423
* fix(ci): keep the incremental lint history fetch blobless and visible by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15511
* test(cli): budget the hosted approval wait for loaded runners (#15093) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15101
* feat(runtime-broker): add HTTP-backed external scratch workers by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15261
* fix(ci): preserve independent validation for main push SHAs by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15508
* fix(release): authenticate managed OSS preflight by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15504
* feat(verify-pr): declare an argument hint for the command prompt by @wenshao in https://github.com/QwenLM/qwen-code/pull/15463
* fix(ci): run the sdk-java suite before taking the host lock by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15254
* fix(ci): skip main-failure issues for post-merge reruns (#15239) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15250
* feat(managed): add durable mid-turn user message queue by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15449
* feat(cli): list /autofix-pr watches and resume them in a later session by @wenshao in https://github.com/QwenLM/qwen-code/pull/15510
* perf(ci): overlap web-shell and standalone tests with the CLI suite by @wenshao in https://github.com/QwenLM/qwen-code/pull/15438
* fix(cli): Hide unavailable Managed background tools by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15497
* feat(web-shell): create workspaces from a Git URL by @wenshao in https://github.com/QwenLM/qwen-code/pull/15361
* fix(managed-agent): guard lifecycle renewal scheduling during shutdown (#15208) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15231
* perf(memory): retain unchanged legacy catalog snapshots by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15246
* fix(runtime): deliver bounded provider images and PDFs by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/13606
* fix(runtime): unblock independent resident workspaces and tool admission by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15457
* fix(web-shell): keep UI language changes out of standalone workspace scope by @wenshao in https://github.com/QwenLM/qwen-code/pull/15521
* fix(core): handle a failed queued memory extraction rejection by @wenshao in https://github.com/QwenLM/qwen-code/pull/15338
* fix(ci): run credential-free release fanout on ecs runners by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15517
* fix(cli): surface retry classification in headless mode by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15515
* feat(managed-agent): give the Hosted Harness its Broker through the environment by @wenshao in https://github.com/QwenLM/qwen-code/pull/15244
* fix(cli): keep a Web Shell /autofix-pr watch alive through an idle session by @wenshao in https://github.com/QwenLM/qwen-code/pull/15523
* test(memory): pin recovery-path and hard-rescue catalog accounting by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15535
* test(managed-agent): pin the row pool's fan-out, correct its design claims by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15528
* test(managed-agent): Add shared Harness Kubernetes qualification tools by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15519
* test(cli): pin the lifecycle-protocol refusal on the load route by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15536
* test(lint): observe the --setup installer guard by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15533
* refactor(core): share the curated catalog-visibility predicate by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15534
* fix(memory): delete a turn's catalog snapshot record with the turn by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15540
* refactor(core): import the QwenCloud host list instead of repeating it by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15532
* fix(ci): price ARM64 fleet lanes from the self-hosted label by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15529
* feat(managed-agent): register external Workspace storage ownership by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15516
* fix(managed): persist session Todo and project committed task lists by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15155
* fix(ci): deepen the incremental lint history until the merge base is provable by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15525
* feat(core): skip re-injecting an unchanged UserPromptSubmit hook context block by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/14129
* fix(lint): group incremental Prettier by the nearest config directory by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15531
* feat(mods): observe turn start and completion by @qqqys in https://github.com/QwenLM/qwen-code/pull/15443
* test(cli): budget the flaky hosted-harness waits through the settle policy by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15551
* feat(web-shell): manage extra workspace directories from settings by @wenshao in https://github.com/QwenLM/qwen-code/pull/15393
* feat(autofix-pr): run the helpers through a tool, and let a confirmed watch's fixes run unattended by @wenshao in https://github.com/QwenLM/qwen-code/pull/15548
* feat(managed-agent): let the bootstrap set the service account and MySQL up by @wenshao in https://github.com/QwenLM/qwen-code/pull/15543
* feat(managed-agent): add pinned extension package management by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15490
* docs(design): external Hosted Workspace profile (phase 2) by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15520
* docs(managed): describe gate scanner capacity under the row pool by @wenshao in https://github.com/QwenLM/qwen-code/pull/15571
* docs: clarify usage statistics across authentication methods by @sxl-lucky7 in https://github.com/QwenLM/qwen-code/pull/15554
* feat(managed-agent): support Workspace file uploads by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15586
* feat(core): Add durable terminal identity lookup by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15566
* test(managed-agent): align S1 acceptance fixtures with runtime contracts by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15585
* fix(managed-agent): pass the pool Harness the Broker pair serve removes by @wenshao in https://github.com/QwenLM/qwen-code/pull/15394
* fix(ci): route the tui-parity changes gate to the ECS pool for trusted PRs by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15561
* fix(core): preserve hook dedup across compaction by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15575
* test(managed-agent): Fix workspace upload admission fixtures by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15588
* fix(mods): pin the Mod contract to Claude Code 2.1.310 by @qqqys in https://github.com/QwenLM/qwen-code/pull/15560
* feat(acp): run the model round of fresh prompts on the shared agent loop by @qqqys in https://github.com/QwenLM/qwen-code/pull/15509
* fix(core): preserve hook context deduplication after catalog snapshots by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15556
* feat(mods): add ui.render, $.ui.resolve and $.ui.invalidate to the runtime by @qqqys in https://github.com/QwenLM/qwen-code/pull/15591
* test(runtime-broker): build the extension-profile fixture paths portably by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15598
* test(cli): budget the skill-recovery poll through the settle policy by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15589
* fix(ci): resolve the pool's Maven dependencies through a domestic mirror by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15610
* fix(ci): stop failing the Maven bootstrap on a rate-limited pool egress by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15539
* fix(managed-agent): retry read-only attestation after EOF by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15608
* feat(web-shell): add plain-text and Markdown reply copying by @ytahdn in https://github.com/QwenLM/qwen-code/pull/15345
* fix(ci): resolve libfaketime for the host architecture by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15609
* fix(ci): bound setup-java on the pool and fall back to the tool cache by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15605
* feat(cli): connect OpenTUI voice input to the shared pipeline by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15617
* feat(ci): canary-split the PR review model by PR number by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15538
* feat(daemon): add cached workspace artifact queries and batch removal by @BZ-D in https://github.com/QwenLM/qwen-code/pull/15594
* fix(web-shell): match cancellation duration to turn summary by @ytahdn in https://github.com/QwenLM/qwen-code/pull/15615
* feat(managed-agent): add native snapshots and HTTP recovery by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15569
* fix(web-shell): hide turn navigation without sufficient gutters by @ytahdn in https://github.com/QwenLM/qwen-code/pull/15604
* feat(cli): admit Managed Runtime boot-v2 with external storage and publication surface in container mode by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15522
* fix(core): stop warning about a placeholder in the attribution header by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15636
* feat(tools): let an explicitly configured search backend name its host by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15638
* fix(managed-agent)!: simplify Web Shell controls and retire cwd submissions by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15616
* feat(cli): align OpenTUI foreground shell controls with Ink by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15642
* test(lint): pin the .gitignore grouping arm and the batch stride by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15640
* docs(qwencloud): document the forced attribution header and pin the admission split by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15633
* feat(acp): run the tool batches of fresh prompts on the shared agent loop by @qqqys in https://github.com/QwenLM/qwen-code/pull/15627
* feat(serve): allow secondary sessions to cd within their workspace by @rockybot2026 in https://github.com/QwenLM/qwen-code/pull/15323
* feat(mods): draw the band above the prompt in the Ink terminal by @qqqys in https://github.com/QwenLM/qwen-code/pull/15619
* fix(ci): resolve the pool's Maven dependencies from the intranet mirror by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15641
* Pin unknown sed long options by @waybarrios in https://github.com/QwenLM/qwen-code/pull/15223
* fix: preserve interleaved reasoning in TUI and Chat replay by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/15621
* feat(autofix-pr): run an unattended watch's fix agent in the background by @wenshao in https://github.com/QwenLM/qwen-code/pull/15578
* feat(core): add local managed journal snapshot recovery by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15626
* fix(cli): preserve previews and verify installed OpenTUI distribution by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15655
* feat(verify-pr): add a local preflight and a verdict check by @wenshao in https://github.com/QwenLM/qwen-code/pull/15614
* fix(ci): Isolate Managed runtime release test classes by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15676
* ci: run every suite but CLI and core in the side test lane by @wenshao in https://github.com/QwenLM/qwen-code/pull/15570
* test(cli): read xn-- hosts by the running URL parser in the Broker URL fixture by @wenshao in https://github.com/QwenLM/qwen-code/pull/15544
* feat(web-shell): show /autofix-pr watches and stop them from the Web Shell by @wenshao in https://github.com/QwenLM/qwen-code/pull/15668
* fix(ci): deepen until the lint scope's own acceptance holds by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15644
* test(integration): widen the ready-prompt budget on GitHub-hosted macOS x64 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15692
* fix(release): extend standalone runtime download retries by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/15673
* fix(ci): preserve setup-java JDKs during pool fallback by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15623
* feat(mods): compile JSX in .tsx and .jsx Mod modules by @qqqys in https://github.com/QwenLM/qwen-code/pull/15624
* fix(ci): keep the sdk-java cache write-back on a failed suite by @wenshao in https://github.com/QwenLM/qwen-code/pull/15555
* chore(goal): remove an unused evidence helper and stale /goal hook comments by @qqqys in https://github.com/QwenLM/qwen-code/pull/15693
* fix(serve): Fix Hosted local state and foreground Shell validation by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15670
* test(web-shell): raise the 200-record history-viewport smoke budget to 300s by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15656
* feat(cli): bind the PR named by a /verify-pr prompt by @wenshao in https://github.com/QwenLM/qwen-code/pull/15625
* feat(cli): complete OpenTUI extension discovery and source management by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15671
* refactor(managed-agent): close the scanner row-pool residues (#15527) by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15632
* feat(managed-agent): add the external-workspace provisioning prerequisite (#15512) by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15654
* fix(release): close the failure issue once a re-run passes by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/15711
* test(managed-agent): initialize the snapshot pool connection synchronously by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15715
* fix(ci): refresh the stale ci.yml workflow-size baseline by @wenshao in https://github.com/QwenLM/qwen-code/pull/15717
* test(cli): close the deferred review Suggestions from #15625 by @wenshao in https://github.com/QwenLM/qwen-code/pull/15710
* feat(web-shell): nest derived sessions under their parent in the sidebar by @wenshao in https://github.com/QwenLM/qwen-code/pull/15714
* fix(web-shell): keep session rename responsive by @wenshao in https://github.com/QwenLM/qwen-code/pull/15688
* fix(cli): preserve OpenTUI extension update state by @chiga0 in https://github.com/QwenLM/qwen-code/pull/15716
* feat(web-shell): name new sessions from the first prompt by @wenshao in https://github.com/QwenLM/qwen-code/
Weekly digest: every breaking change, retirement and price change across 23 coding agents, one email.
Form not loading? Subscribe here.