Original release notes
Highlights
- Added native support for installing Qoder plugins from directories, archives, Git repos, URLs, and npm packages with automatic system-prompt loading. (#8661)
- Enabled Local Control pairing via QR code in CLI and Desktop apps for secure LAN access and added automatic default workspace creation on first launch. (#8727, #8814)
- Added drag-and-drop support for images in Web Shell and a fullscreen toggle for the right panel to improve artifact and subagent visibility. (#8696, #8614)
- Fixed Linux Wayland text copying to prefer native wl-copy and enabled microphone access for the macOS Desktop app with required entitlements. (#8481, #8715)
- Prevented telemetry startup failures by ignoring unsupported OpenTelemetry exporter environment variables and fixed session attribution marker logic. (#8703, #8712)
- Improved code review performance for large diffs and guaranteed composition survival during budget stops by reserving a 20-minute floor. (#8773, #8791)
Breaking Changes
No known breaking changes.
Complete Change List
Features
- Adds native support for installing Qoder plugins from directories, archives, Git repos, URLs, and npm packages, automatically loading system-prompt.md as extension context. (#8661) by @callmeYe
- Automatically assigns issues to area owners based on labels using a round-robin strategy that prefers owners with the fewest open assigned issues. (#8668) by @yiliang114
- Adds a daemon API endpoint and SDK helpers to enable or disable up to 100 Skills in a single batch request with per-target error reporting. (#8664) by @callmeYe
- The qwen review submit command now outputs the direct URL to posted reviews in both stderr and JSON stdout. (#8770) by @wenshao
- Added Local Control pairing to the CLI and Desktop app, allowing secure LAN access via QR code and a new Control menu option. (#8727) by @yiliang114
- Added a fullscreen toggle to the Web Shell right panel for easier viewing of artifacts and subagent details. (#8614) by @wenshao
- Added a guard to pause tool execution after repeated failures within a single interactive ACP session. (#8469) by @doudouOUC
- Enhanced the Workflow tool description with orchestration policies and default pipelining guidance for better model behavior. (#8694) by @qqqys
- Desktop now automatically creates a default workspace at ~/Documents/Qwen and starts the runtime on first launch without blocking the main thread. (#8814) by @yiliang114
- Web Shell now displays context window usage as a mini progress pill in the status bar with tooltips and accessible labels. (#8794) by @wenshao
- Web Shell now supports dragging and dropping PNG, JPEG, GIF, WebP, and BMP images into the composer with full attachment management and concurrency limits. (#8696) by @water-in-stone
- Stable Qwen Live Host packages are now mirrored to Aliyun OSS with automatic fallback to GitHub and support for up to one-hour archive downloads. (#8674) by @LaZzyMan
- Added automatic background cleanup for expired OpenAI API logs based on the new model.openAILogRetentionDays setting, which defaults to seven days. (#8862) by @doudouOUC
Bug Fixes
Requires explicit confirmation for read-only Git commands when repository configuration executes external programs via diff.external or core.fsmonitor. (#8645) by @yiliang114 Prevents telemetry initialization failures by ignoring unsupported OTEL_TRACES_EXPORTER, OTEL_LOGS_EXPORTER, and OTEL_METRICS_EXPORTER environment variables during startup. (#8703) by @zjunothing Improves the WebSearch startup notice to include a copy-pasteable settings.json example and environment variable alternative when no search model is configured. (#8665) by @qwen-code-dev-bot Prefers the native wl-copy command for text copying on Linux Wayland sessions, falling back to xclip, xsel, or OSC 52 if unavailable. (#8481) by @zjunothing Fixes session attribution to require exact value 1 for QWEN_CODE_SERVE and QWEN_CODE_DESKTOP markers, preventing false positives from values like 0 or false. (#8712) by @yiliang114 Fixed a rendering issue where the queued-acknowledgement comment on pull requests displayed raw text instead of formatted Markdown with working links. (#8726) by @wenshao Standardized caller-supplied session IDs across all daemon interfaces to ensure consistent session creation and validation. (#8415) by @doudouOUC Reduced noise in the demo event log by aggregating usage_update frames into a single context meter display. (#8762) by @wenshao Fixed a compatibility issue in external context reading by switching to an explicit reader loop for response bodies. (#8764) by @wenshao Enabled microphone access for the macOS Desktop app by adding the required usage description and audio-input entitlement. (#8715) by @yiliang114 Fixed a race condition in the Qoder plugin install integration test by properly awaiting the test rig setup. (#8793) by @yiliang114 Fixed flaky CI tests by updating memory extraction timeouts and extending manifest fixture teardown limits. (#8797) by @wenshao Hidden raw ACP usage update notifications from Web Shell transcripts while retaining token accounting functionality. (#8790) by @carffuca Compacted the Local Control dialog to ensure the QR code, pairing link, and disconnect button remain visible without scrolling. (#8800) by @yiliang114 Fixed workflow label mutations by switching to REST endpoints to avoid errors with older GitHub CLI versions. (#8761) by @wenshao Implemented a dedicated 60-second timeout for ACP session restoration to prevent hangs and improve error handling. (#8691) by @doudouOUC Web Shell no longer displays debug projections for unrecognized daemon events as conversation content in transcripts. (#8812) by @wenshao Background shell tests now use unique temporary paths to prevent file permission errors caused by shared sidecar files. (#8813) by @wenshao Local Control now opens the active Desktop session on mobile instead of a blank Web Shell and improves network address verification security. (<a href="https://github.com/QwenLM/qwen-code/pull/8806" data-hovercard-type="pull_request" data-hovercard-url="

