github QwenLM/qwen-code desktop-v0.24.7
Qwen Code Desktop v0.24.7

latest release: sdk-typescript-v0.1.17
3 hours ago

What's Changed

  • fix(serve): preserve session creation failure diagnostics by @callmeYe in #12331
  • feat(sdk-java): Add managed runtime attestation client by @doudouOUC in #12522
  • feat(web-shell): select a time range on the trajectory overview to narrow the table by @qqqys in #12543
  • feat(serve,web-shell): set the Qwen Live endpoint and model from settings by @qqqys in #12529
  • feat(channels): separate private and group access policies by @qqqys in #12547
  • fix(core): bound oversized images returned by MCP tools by @yiliang114 in #10835
  • feat(serve): run Qwen Live through the Web Shell, native macOS Host opt-in by @qqqys in #12534
  • feat(web-shell): search within the current conversation by @samuelhsin in #12234
  • perf(serve): use catalog for workspace extension activation projection by @callmeYe in #12541
  • fix(core): decide MCP media handling from the bytes, not the label by @yiliang114 in #12567
  • fix(core): read a backslash inside single quotes as literal when splitting by @TianYuan1024 in #11765
  • perf(web-shell): derive the session workflow projection once and share it across surfaces (#10865) by @now-ing in #11237
  • fix(skills): reload changed content after refresh by @jkxiao in #12182
  • feat(web-shell): add host controls for model management by @Lilian0122 in #12345
  • fix(cli): keep CoreToolScheduler stable across callback identity changes by @kabishou11 in #12069
  • fix(web-shell): make mobile access opt-in and simplify split composer by @ytahdn in #12537
  • test(cli): yield the event loop between base-tree tests by @wenshao in #12573
  • feat(browser-use): make the bundled runtime self-contained by @tanzhenxin in #12548
  • fix(cli): keep 64-bit file ids exact in the two identity comparators by @yiliang114 in #12568
  • fix(cli): keep plan-identity guards exact for 64-bit file ids by @yiliang114 in #12577
  • fix(java): Deliver broker cancellation after a dispatch lease lapses by @wenshao in #12583
  • feat(web-shell): zoom and pan the trajectory overview by @qqqys in #12557
  • fix(core): label each reattached image so older ones are not read as current by @yiliang114 in #12549
  • feat(review): audit the applied --fix for unpinned new assumptions by @wenshao in #10169
  • feat(channels): route messages to prefix-specific sessions by @qqqys in #12595
  • fix(java): Fence lapsed tool executions by the repository clock by @wenshao in #12608
  • feat(web-shell): show the trajectory over real time, idle included by @qqqys in #12607
  • fix(review): correct what the fix audit tells its reader by @wenshao in #12610
  • fix(serve): report serve.channels restore failures in channel status by @qqqys in #12542
  • test(review): drive the fix-audit build through the yargs command by @wenshao in #12614
  • feat(sdk-java): Adopt a Managed Runtime only after attestation by @doudouOUC in #12552
  • feat(web-shell): inspect session tool calls by prompt by @ytahdn in #12466
  • feat(web-shell): support selective host artifact integration by @dreamWB in #12588
  • fix(web-shell): stop rendering empty args and input JSON in tool cards by @yiliang114 in #12601
  • feat(live): stream shared screens into browser voice calls by @qqqys in #12623
  • docs(extensions): cover workflow reload and add Chinese design by @BlackishGreen33 in #12625
  • fix(core): cover every commit spelling and the promoted path in session-commit registration by @yiliang114 in #12556
  • feat(desktop): add QWEN_DESKTOP_DISABLE_UPDATES opt-out for the startup update check by @yiliang114 in #12587
  • perf(cli): stop one-shot runs from booting the CLI twice by @yiliang114 in #12602
  • perf(cli): skip interactive-only probes on headless startup by @yiliang114 in #12603
  • docs: fix /clear description, .qwen note, and outdated CLI name by @yc2bgr8 in #12555
  • docs(conversations-recovery): document non-graceful ACP writer recovery by @dvd233 in #12268
  • docs: fix comments and JSDoc that contradict the actual code by @sxh313 in #11950
  • fix(cli): honor the usage-statistics opt-out under --bare by @yiliang114 in #12604
  • fix(ci): trust the job workspace as a git safe.directory before checkout by @yiliang114 in #12648
  • test(review): add hard-link witness test to save-artifact overwrite guard (#12578) by @holny in #12581
  • test(java): make the local-process provisioner tests deterministic by @wenshao in #12639
  • feat(review): record per-file content verdicts that survive a rebase by @wenshao in #9661
  • feat(web-shell): manage the repository's worktrees from the git dialog by @wenshao in #12154
  • docs(tools): add Firecrawl to the web search MCP services by @JuampiHernandez in #12646
  • feat(sdk-java): Add the Hosted Harness private client by @doudouOUC in #12654
  • test(java): pin runtime-broker guards left open in earlier reviews by @wenshao in #12632
  • feat(java): Reconcile UNKNOWN tool executions from Runtime evidence by @wenshao in #12655
  • test(cli): pin the managed-runtime worker's boot, bind and shutdown guards by @wenshao in #12633
  • fix(review): persist the local findings ledger when a round cannot anchor by @wenshao in #12660
  • fix(core): Preserve Claude thinking across tool turns by @pomelo-nwu in #12621
  • feat(cli): Declare the v2 execute/status/cancel Managed Runtime contract by @doudouOUC in #12630
  • fix(cli): keep one-shot system-reminder prefixes out of shell mode by @yiliang114 in #12605
  • feat(sdk-java): Reconcile and adopt restored Runtime bindings by @doudouOUC in #12627
  • fix(standalone): pin @lydell/node-pty-linux-arm64 and fail release on missing prebuilds by @yiliang114 in #12649
  • feat(cli): list managed Agent View sessions in qwen sessions ps by @yiliang114 in #10942
  • fix(web-shell): fall back to a plain draft for New task in a Live chat without a draft target by @yiliang114 in #12626
  • chore(desktop): rename packages/desktop-shell to packages/desktop by @yiliang114 in #12653
  • test(java): wait for a renewal at the advanced time in lease renewal tests by @wenshao in #12656
  • fix(cli): resolve npm's global config when npm refuses to print it by @tanzhenxin in #12675
  • feat(scripts): check in the startup benchmark harness by @tanzhenxin in #12674
  • fix(web-shell): allow deleting the current session from sidebar and picker by @yiliang114 in #12636
  • fix(core): keep the deferred-tool bridge halves on the same tool by @yiliang114 in #12539
  • feat(sdk-java): Add the v2 tool operations to the runtime transport by @doudouOUC in #12637
  • feat: add native advisor tool by @ZijianZhang989 in #9636
  • feat(sdk-java): Add the W0a Managed Workspace binding contract by @wenshao in #12681
  • perf(cli): keep running in place when env files only hold model credentials by @tanzhenxin in #12680
  • feat(cli): Mount the v2 tool operations on the Managed Runtime worker by @doudouOUC in #12671
  • perf(cli): halve fresh-startup time to typeable and cut RSS by 60% by @tanzhenxin in #12622
  • fix(cli): make the Agent Team teammate tab transcript scrollable in VP mode by @yiliang114 in #9531
  • fix(cli): restore ripgrep exec bit on managed npm update activation by @yiliang114 in #12673
  • fix(cli): notify when the Linux clipboard tool is found but its query fails by @yiliang114 in #12666
  • fix(core): rank PreToolUse permissionDecision most-restrictive in hook aggregation by @yiliang114 in #12689
  • perf(serve): coalesce in-flight extension status loads by @callmeYe in #12638
  • feat(cli): Define the managed-context/1 envelope contract by @wenshao in #12700
  • feat(serve): add guarded Hosted Runtime foundations by @doudouOUC in #12691
  • feat(managed-agent): Spring control plane and dual-path WebShell by @doudouOUC in #12692
  • feat(serve): support model and reasoning selection at session creation by @callmeYe in #12308
  • feat(core): Durable Managed Session journal and failover by @doudouOUC in #12693
  • fix(cli): close the deferred /context accounting follow-ups by @yiliang114 in #12540
  • fix(core): deduplicate system prompt guidance in a second pass by @doudouOUC in #12546
  • feat(cli): agent-prepared Batch API workflow (/batch-api) by @yiliang114 in #12492
  • feat: complete Advisor consultation behavior and usage limits by @yiliang114 in #12688
  • test(cli): Close the fixture gaps deferred from managed-context/1 by @wenshao in #12712
  • fix(mcp): preserve registration URL from header discovery by @dvd233 in #12205
  • feat(managed-agent): admit workspace-bound sessions without execution by @doudouOUC in #12709
  • feat(cli): Run Managed Runtime tools in the Session's Workspace directory by @wenshao in #12732
  • feat(acp-bridge): route sessions across legacy and managed engines by @wenshao in #12698
  • feat(serve): Enable private Hosted Harness no-tool text turns by @doudouOUC in #12713
  • fix(core): consult system code page before chardet for non-UTF-8 output by @yiliang114 in #12731
  • fix(core): treat EHOSTUNREACH/ENETUNREACH as connection-level in web_fetch https-upgrade fallback by @yiliang114 in #12705
  • feat(managed-agent): Define the managed-tool-result/1 contract (O1a) by @wenshao in #12729
  • fix(cli): pass the post-update relaunch command line to cmd verbatim by @yiliang114 in #12694
  • fix(core): tolerate the win32 directory-sync refusal in managed session resources by @yiliang114 in #12718
  • fix(core): prioritize registered prefixes in tool suggestions by @yc2bgr8 in #12743
  • test(managed-agent): add Hosted no-tool process gates by @wenshao in #12733
  • feat(acp-bridge): back paired engine selection with session owners and typed rejections by @wenshao in #12746
  • fix(cli): Close the W0c-1 worker follow-ups before boot v2 is enabled by @wenshao in #12747
  • fix(serve): Restore transcript reads for standalone sessions by @qqqys in #12615
  • fix(serve): close review follow-ups for paired engine owners by @wenshao in #12750
  • fix(serve): Settle hosted turns after transient read failures by @doudouOUC in #12742
  • feat(runtime-broker): install managed Workspace contexts (W0c-2) by @doudouOUC in #12730
  • feat(web-shell): prepare updates and restart from sidebar by @wenshao in #12734
  • fix(serve): keep ACP child error messages and standalone conflicts intact by @wenshao in #12753
  • test(core): Close the compile-cache test and doc gaps deferred from #12747 by @wenshao in #12759
  • test(runtime-broker): Add Stage F multi-process fault gates for the tool path by @wenshao in #12752
  • fix(extensions): reject http archive URLs with an actionable error instead of attempting a git clone by @liwenjie200543 in #12697
  • fix(cli): report batch task records that list cannot read by @yiliang114 in #12741
  • fix(web-shell): clear scrollbar-gutter in collapsed sidebar rail (#12453) by @holny in #12652
  • feat(memory): extract structured scan and bounded retrieval by @yiliang114 in #12726
  • fix(core,cli): stop stale-worktree sweep from destroying git-ignored content by @yiliang114 in #12763
  • fix(serve): stop validating load-only restore fields on resume by @yiliang114 in #12768
  • fix(core): keep stale-worktree sweep from deleting untracked files by @yiliang114 in #12739
  • fix(ci): gate the E2E pool leg on a disk floor (#12764) by @qwen-code-dev-bot in #12769
  • fix(cli): surface real /update errors and self-heal stale pending swap by @yiliang114 in #12755
  • fix(desktop): identify missing node-pty pin by @barry166 in #12684
  • fix(vscode-ide-companion): hold the edit send until the rewind lands in the transcript by @yar3333 in #12711
  • fix(core): Log a failing schema's own error and close the compile-cache gaps by @wenshao in #12777
  • feat(acp-bridge): give each paired channel its own workspace runtime identity by @wenshao in #12776
  • feat(managed-agent): wire private Workspace execution (W0c-3) by @doudouOUC in #12754
  • feat(web-shell): expose BTW in the composer add menu by @wenshao in #12775
  • test(integration): Name the request in hosted session store failures by @wenshao in #12786
  • fix(runtime-broker): read attestation integers exactly by @wenshao in #12774
  • fix(core): deduplicate todo guidance and compress comment rule in a third prompt pass by @doudouOUC in #12784
  • fix(core): preserve MCP status for optional -32601 responses by @dvd233 in #12500
  • fix(core): recognize sed quiet aliases as read-only by @dvd233 in #12221
  • fix(acp-bridge): drop oversized notifications instead of tearing down the channel by @kabishou11 in #11925
  • fix(web-shell): complete zh-CN translations for the settings panel by @doudouOUC in #12783
  • fix(hooks): key enabled state by name, not identity by @PratikWayase in #11965
  • feat(mobile): support scoped native document selection (Phase 2) by @jabrailkhalil in #12126
  • feat(core): add local managed tool-result segment store by @doudouOUC in #12767
  • feat(acp-bridge): recover quarantined paired channels and operate per engine by @wenshao in #12795
  • test(managed-agent): gate tool-driven failover E2E modes on Hosted no-tool slice by @yiliang114 in #12801
  • fix(core): classify multi-address connect failures by any attempt, not the first by @yiliang114 in #12794
  • fix(sdk-java): reject unreadable decimal scales by @yc2bgr8 in #12798
  • test(runtime-broker): Add Stage F fault gates for W0c context installation by @wenshao in #12804
  • fix(cli): preserve source identity in session exports by @banned2054 in #12118
  • test(serve): tolerate workspace_runtime_stop envelope skew in capabilities baseline (#12490) by @qwen-code-dev-bot in #12494
  • test(cli): Split the W0c-3 release test so Windows skips only the rename by @wenshao in #12815
  • feat(acp-bridge): deliver workspace changes to every paired engine by @wenshao in #12807
  • fix(ci): retry the helper-tests step once against pool contention (#12772) by @qwen-code-dev-bot in #12780
  • fix(cli): report completion for saved workflow slash commands by @destire-mio in #12415
  • docs(design): specify paired engine host wiring for B2d by @wenshao in #12771
  • feat(managed-agent): Add the public API contract and contract tests by @wenshao in #12808
  • fix(mcp): Support larger Apps, scoped tool calls and isolated origins by @samuelhsin in #12258
  • fix(managed-agent): Align Flyway Runtime tables with the Broker schema by @wenshao in #12816
  • test(managed-agent): Make the Hosted no-tool gate assertions falsifiable by @wenshao in #12819
  • test(cli): Run the W0c-3 directory-loss test under Git Bash on Windows by @wenshao in #12818
  • fix(cli): let an aged .deferred marker escape the update-still-applying block by @yiliang114 in #12810
  • feat(cli): add /commit slash command with AI-drafted commit messages by @yiliang114 in #10586
  • feat(web-shell): support optional worktrees for branch sessions by @water-in-stone in #11816
  • fix(acp-bridge): close review follow-ups for paired quarantine recovery by @wenshao in #12811
  • test(sdk-java): close the connection on Hosted Harness no-content responses by @wenshao in #12824
  • fix(cli): require proof of death before deleting a staged swap by @yiliang114 in #12787
  • feat(web-shell): Select and bind managed Workspaces by @doudouOUC in #12797
  • feat(core): Capture foreground Managed Shell results with local receipts by @doudouOUC in #12821
  • fix(sdk-java): preserve configured JDBC lease duration by @yc2bgr8 in #12788
  • chore(sdk-java): align fastjson2 version to 2.0.65 by @wenshao in #12836
  • perf(core): trim restated tool guidance and budget the resident tool surface by @yiliang114 in #12532
  • feat(managed-agent): Implement the Session query contract (Stage D2) by @wenshao in #12822
  • test(acp-bridge): pin the background drain ownership middle term and the backgroundTurn busy guards by @Oscar-Williams in #12250
  • feat(memory): extract metadata migration and writer compatibility by @yiliang114 in #12757
  • fix(cli): restore sessions in selected workspace runtime by @XIQIXIQIXIQI in #9050
  • feat(managed-agent): Define the managed-extension-record/1 contract (H0b) by @wenshao in #12837
  • feat(serve): wire paired execution engines into ordinary hosts behind an opt-in by @wenshao in #12828
  • feat(managed-agent): Add the planned Stage H task contract (H0a) by @wenshao in #12830
  • docs(tools): sync shell.md with the shipped run_shell_command contract by @yiliang114 in #12841
  • fix(web-shell): complete skill toggle feedback and controls by @BlackishGreen33 in #12641
  • feat(managed-agent): Implement event replay (Stage D3) by @wenshao in #12840
  • feat(serve): add gated Hosted Workspace file tool turns by @doudouOUC in #12831
  • fix(web-shell): defer React root unmount in chip destroy out of the CodeMirror update cycle by @yiliang114 in #12834
  • feat(managed-agent): Design the ordinary-host Managed engine and close its preconditions (M1) by @wenshao in #12861
  • test(managed-agent): Close deferred H0b record contract follow-ups by @wenshao in #12863
  • test(managed-agent): Close the deferred Hosted no-tool gate follow-ups by @wenshao in #12864
  • feat(desktop): add a linux-aarch64 leg to the Desktop release matrix by @yiliang114 in #12833
  • fix(node-repl): widen the bounded-cancellation test margin under runner load by @yiliang114 in #12884
  • test(managed-agent): Add FG6a Hosted Broker reply-loss gates by @wenshao in #12873
  • test(integration): give the ACP model round trip its own request budget by @yiliang114 in #12885
  • fix(acp): disable LSP for MCP discovery config by @dvd233 in #12256
  • feat(managed-agent): Add the strict configuration snapshot and Managed compatibility evaluation (M3) by @wenshao in #12883
  • test(managed-agent): add FG6b Session Store failure gates by @wenshao in #12888
  • feat(managed-agent): Add W0e terminal recovery fences by @doudouOUC in #12839
  • feat(managed-agent): Make Session close, archive and delete durable operations (Stage D4) by @wenshao in #12881
  • fix(core): preserve memory read-limit signal on replay by @yc2bgr8 in #12893
  • fix(web-shell): inset docked right panel below the macOS titlebar drag region by @yiliang114 in #12876
  • fix(core): restore the vendored ripgrep exec bit at resolution time by @yiliang114 in #12892
  • fix(runtime-broker): reject BigDecimal scales beyond ±2048 by @yiliang114 in #12870
  • feat(computer-use): let a remote session use your desktop through a node_repl relay by @yiliang114 in #11799
  • docs: fix dead links in GitHub Action, extensions, and privacy pages by @pratikgx in #12717
  • docs: correct CSP invalid-source comments by @sherxlg-gif in #12163
  • fix(managed-agent): Move the Session operation migration to V17 by @wenshao in #12900
  • feat(agents): add durable workspace collaboration state by @yiliang114 in #12854
  • feat(memory): add structured on-demand recall by @ZijianZhang989 in #10183
  • fix(managed-agent): Refuse Legacy renames of Managed-owned transcripts (M1 follow-up) by @wenshao in #12906
  • fix(managed-agent): Treat settings locations that depend on the working directory as unknown (M3 follow-up) by @wenshao in #12903
  • feat(channels): rotate bounded route sessions by @qqqys in #12616
  • test(managed-agent): add FG6c process crash gates by @wenshao in #12896
  • fix(cli): honor usage-statistics opt-out and proxy in qwen mcp reconnect by @yiliang114 in #12857
  • feat(managed-agent): Commit Stage H records and serve the task list (H0c) by @wenshao in #12855
  • fix(runtime-broker): enforce the codec reader's total-digit budget by @yiliang114 in #12910
  • fix(cli): unwedge qwen batch after provider anomalies; bound maxCostUsd by the worst case by @yiliang114 in #12895
  • fix(core): reap stale worktrees holding only symlinks or nested build output by @yiliang114 in #12785
  • docs(developers): document CI and release repository variables by @Theater-ahyeon in #11129
  • fix(cli): honor --bare and --safe-mode in the cross-session messaging gate by @yiliang114 in #9845
  • fix(vscode-ide-companion): make the pre-auth Invalid Host header 403 actionable for port-forwarded windows by @yiliang114 in #12897
  • test(cli): give the hosted tool-turn waitFor an explicit timeout (#12911) by @qwen-code-dev-bot in #12915
  • test(managed-agent): add FG6d hosted cancellation gates by @wenshao in #12924
  • fix(web-shell): hide empty MCP approval subtitles by @BlackishGreen33 in #12644
  • fix(core): skip the skills listing when the Skill tool is not registered by @yiliang114 in #12838
  • feat(serve): add gated Hosted foreground Shell turns by @doudouOUC in #12848
  • test(managed-agent): add FG6e hosted SSE gap gates by @wenshao in #12942
  • fix(daemon): persist session approval mode across cold restore by @doudouOUC in #12918
  • fix(core): persist workflow replay suffix invalidation by @qqqys in #12948
  • feat(managed-agent): Serve the public Turn list and detail (Stage D5) by @wenshao in #12932
  • feat(web-shell): clarify trajectory overview metrics by @qqqys in #12944
  • fix(serve): Persist Hosted file path refusals by @doudouOUC in #12950
  • fix(managed-agent): Share the home-expansion and spawn-environment rules of the compatibility evaluation by @wenshao in #12934
  • feat(managed-agent): Adopt durable local Runtime workers by @doudouOUC in #12865
  • test(hosted): gate Shell output capture failures (FG6f) by @wenshao in #12954
  • feat(core): lazy-load deferred tools in Code Mode by @tanzhenxin in #12898
  • perf(memory): reduce automatic extraction token overhead by @yiliang114 in #12951
  • fix(memory): preserve migration progress when index rebuild fails by @yiliang114 in #12913
  • fix(managed-agent): Close the post-merge review of event replay by @wenshao in #12968
  • docs(managed-agent): Defer local engine delivery behind Hosted by @doudouOUC in #12920
  • feat(core): Add Landlock execution fallback by @doudouOUC in #12278
  • fix(memory): tighten structured recall contracts by @yiliang114 in #12916
  • fix(cli): scrub userinfo credentials from aux-model selector egress by @yiliang114 in #12862
  • fix(managed-agent): Declare the tenant filter's 403 on the task read routes by @wenshao in #12966
  • fix(core): preserve Code Mode cache when enabling workflow by @tanzhenxin in #12933
  • fix(core): let Full Access approve shell and monitor directories outside the workspace by @tanzhenxin in #12927
  • fix(core): withhold the SkillManager from subagents whose tool policy has no Skill tool by @yiliang114 in #12545
  • feat(runtime-broker): reconcile executions on session takeover by @wenshao in #12964
  • feat(managed-agent): Record Managed sessions as Managed Session logs (M4) by @wenshao in #12935
  • fix(managed-agent): align the delayed-Runtime ordering proof with the 15-second criterion by @wenshao in #12967
  • fix(core): isolate declarative subagent hooks by invocation by @qqqys in #12949
  • fix(workflow): validate structured output schemas before dispatch by @qqqys in #12978
  • fix(memory): preserve task lifecycle signals by @yiliang114 in #12917
  • test(core): register the Skill tool in the resume listing fixture by @yiliang114 in #12996
  • fix(cli): pin fast model to the selected provider endpoint by @yiliang114 in #12773
  • refactor: anchor rewind mapping to stable prompt identity by @yiliang114 in #9466
  • test(integration): disable managed auto-memory in advisor and telemetry CLI tests (#12979) by @qwen-code-dev-bot in #12981
  • fix(e2e): Relax LLM-turn timeouts in monitor and cron interactive tests by @yiliang114 in #13002
  • test(runtime-broker): Accept the takeover scan's settlement in the durable-local fault gate by @wenshao in #13000
  • feat(web-shell): inspect trajectory records in place by @qqqys in #12971
  • feat(managed-agent): Recover Workspace holders after trusted local reboot (W0e-3) by @doudouOUC in #12869
  • fix(runtime-broker): read ready, seed and request integers exactly by @wenshao in #12972
  • test(managed-agent): Accept a repeated cancel once an uncertain submit resolves by @wenshao in #13011
  • fix(core): run safe Code Mode calls concurrently by @tanzhenxin in #12931
  • fix(runtime-broker): Close the deferred W0c-2 findings from #12761 by @wenshao in #12975

New Contributors

Full Changelog: cua-driver-rs-v0.20.11...desktop-v0.24.7

Don't miss a new qwen-code release

NewReleases is sending notifications on new releases.