⚠️ This is an early beta release for QwenPaw 2.0.0 (v2.0.0-beta.1), which is currently undergoing active development — it may contain breaking changes and instability. Intended for developers and early adopters only; not recommended for production use.
What's Changed
- refactor: migrate agentscope from version 1.x to 2.0.0 by @qbc2016 in #4846
- Add uninstall hooks and expose skill provider API by @wangfei010313 in #5008
- fix: propagate ModelInfo.max_input_length to AgentScope context_size for auto-compaction by @qbc2016 in #5018
- feat(tui): bundle the terminal chat UI into
qwenpaw(Phase 1) by @ekzhu in #5032 - feat(runtime): Runtime 2.0 modular architecture with enhanced tool-call coordination by @XiuShenAl in #5078
- feat(driver): introduce Agent OS Driver — unified abstraction for external capabilities (MCP/A2A/ACP/...) by @xiaoming-qxm in #5067
- feat: initial governance & sandbox interface disscussion by @weidankong in #5088
- bump: version to 2.0.0a1 by @rayrayraykk in #5281
- feat(context): migrate context management from LightContextManager to AgentScope 2.0 native compression by @qbc2016 in #5309
- feat(memory): migrate QwenPaw memory runtime to ReMe4 by @jinliyl in #5349
- Merge/2.0 into main by @rayrayraykk in #5412
- docs(roadmap): update roadmap for QwenPaw 2.0.0 by @cuiyuebing in #5461
- fix: macos sandbox missing close bracket by @weidankong in #5454
- refactor(memory): restructure auto-memory lifecycle, enhance /compact and add /system_prompt command by @jinliyl in #5450
- revert(upload_file): replace manual file size check with utility func… by @zhijianma in #5467
- perf: parallelize shutdown to reduce close time by @rayrayraykk in #5469
- feat(coding): expand chat panel to 50% and shrink editor area by @zhaozhuang521 in #5473
- Revert/relative path file preiview by @zhijianma in #5478
- feat(ci): end-to-end UI verification for desktop releases by @yutai78786 in #5428
- fix(cron): restore cron session compatibility and sanitize malformed tool_call history by @qbc2016 in #5475
- fix(cron): allow editing and deleting enabled cron jobs by @lalaliat in #5483
- fix(dashscope): honour extra_body generate_kwargs and avoid sending default enable_thinking by @qbc2016 in #5491
- fix(token_usage): restore chat token/context usage ring & popover under agentscope 2.0 by @yuanxs21 in #5493
- feat(dingtalk): support custom API endpoint for private deployments by @hongxicheng in #5111
- feat(discord): download attachments locally and add media_dir config by @hongxicheng in #5468
- fix(channel): restore streaming path and split multi-segment reply into separate streaming boxes by @hongxicheng in #5487
- feat(memory): Enhance memory search functionality and simplify metadata display by @jinliyl in #5482
- Feat/channel page dual layout by @zhaozhuang521 in #5504
- style(chat): remove max-width constraints in wide mode styles by @zhijianma in #5502
- feat(tools): redesign Tools page with enabled/available split layout by @zhaozhuang521 in #5509
- fix(WeCom): WeCom QR code fetch fails due to greedy regex in settings parsing by @hongxicheng in #5460
- fix(cron): cron session visibility, memory isolation and hot-reload stability by @lalaliat in #5494
- test(integration): stabilise flaky integration tests + remove dead /api/agent code by @yutai78786 in #5507
- fix(runtime): align envelope event translation with v1 streaming protocol by @XiuShenAl in #5495
- docs(locales): update "tools" translations for consistency across mul… by @zhijianma in #5516
- feat(console): mobile adaptation for sidebar, header, and page header by @yaozy2020 in #5444
- fix(chat): prevent ModelSelector dropdown overflow and marquee long model names on mobile by @yaozy2020 in #5445
- fix(chat): mobile header actions, session dropdown, and unified right drawers by @yaozy2020 in #5446
- feat(console): mobile adaptation for Debug page by @yaozy2020 in #5449
- feat(console): mobile adaptation for Security page by @yaozy2020 in #5451
- feat(console): mobile adaptation for Agent Skills page by @yaozy2020 in #5458
- feat(console): mobile adaptation for Skill Market page by @yaozy2020 in #5459
- feat(console): make TokenUsage tables horizontally scrollable on mobile by @yaozy2020 in #5463
- feat(console): mobile adaptation for Skill Pool page by @yaozy2020 in #5464
- feat(console): mobile adaptation for Voice Transcription settings page by @yaozy2020 in #5470
- fix(pack): repair desktop packaging builds by @jinglinpeng in #5518
- feat(skills): split Skills page into enabled/disabled sections with d… by @zhaozhuang521 in #5521
- fix: override format_tools for gemini by @qbc2016 in #5517
- fix: add DashScopeChatModel to ChatModelName literal type by @qbc2016 in #5513
- fix(console): improve MCP access policy layout by @xiaoming-qxm in #5213
- fix: inline $ref/$defs in tool schemas for GLM model compatibility by @qbc2016 in #5496
- feat: add OpenAI Response API provider by @qbc2016 in #5519
- fix: fix tool input json decode by @qbc2016 in #5486
- fix: refine mcp tool name to pase openai api by @qbc2016 in #5485
- fix(matrix): use nio client.download for encrypted media by @Morxi in #5059
- feat(inbox): add source type filter for push messages by @lalaliat in #5522
- fix(skillpool): restore SkillPool styles after PR #5521 by @zhaozhuang521 in #5532
- refactor(readme): add trending badge by @lalaliat in #5534
- fix(tui): restore ACP commands and inline approvals by @ekzhu in #5443
- Document Langfuse Docker deployment by @totoyang in #5380
- fix: add missing emptyState and emptyIcon styles for TokenUsage page by @zhaozhuang521 in #5544
- fix(chat): preserve assistant markdown newlines by @wananing in #5538
- fix: cap the file size of send_file_to_user by @weidankong in #5457
- fix(skill): zip metadata error handling by @Leirunlin in #5481
- feat(memory): refactor auto memory system with turn-based tracking by @jinliyl in #5540
- feat(tui): support project-scoped code sessions by @ekzhu in #5448
- fix(models): count only configured providers online by @wananing in #5537
- fix(skill): remove enable all during init by @Leirunlin in #5477
- test(e2e): adapt for agentscope 2.0 — drop Plan Mode, fix selectors and fixtures by @yutai78786 in #5542
- feat(desktop): add tauri auto updater by @jinglinpeng in #4669
- test(integration): parallelize with pytest-xdist and harden coverage pipeline by @yutai78786 in #5531
- fix: standalone "type": "null" in functionDeclaration schema breaks third-party proxies by @NotFoundOvO in #5545
- fix(hooks): inject user_id and channel into ContextVarsSetupHook by @XiuShenAl in #5552
- feat(channel): add Slack channel with full multimodal & streaming support by @celestialhorse51D in #5193
- fix(channel): use event content as primary text source in streaming end by @hongxicheng in #5553
- Feat/session switch performance by @zhaozhuang521 in #5559
New Contributors
- @XiuShenAl made their first contribution in #5078
- @xiaoming-qxm made their first contribution in #5067
- @wananing made their first contribution in #5538
- @NotFoundOvO made their first contribution in #5545
Full Changelog: v1.1.12.post2...v2.0.0-beta.1