v2.2.2

kevinraymond/fosforav2.2.2Oct 15, 2026by cuiyuebing

Upgrading?

Full Release Notes

## What's Changed

## ✨ Added

**Console & Workspaces**

- Add six theme palettes and custom colors and corner radii, with live preview and saved preferences ([#7741](https://github.com/agentscope-ai/QwenPaw/pull/7741))
- Add an authenticated, multi-tab terminal inside Chat, with a working directory for each conversation ([#7861](https://github.com/agentscope-ai/QwenPaw/pull/7861))
- Allow Console font size to be adjusted from 12 to 20 pixels across chat and settings ([#8005](https://github.com/agentscope-ai/QwenPaw/pull/8005))
- Save multi-folder workspaces as an Agent’s default for future tasks ([#7789](https://github.com/agentscope-ai/QwenPaw/pull/7789))
- Show files delivered by the Agent directly below its reply for easier preview and download ([#7750](https://github.com/agentscope-ai/QwenPaw/pull/7750))

**QwenPaw-Flash**

- Recommend QwenPaw-Flash 9B, 27B, and 35B-A3B locally: update the 9B recommendation and add 27B and 35B-A3B options ([#8155](https://github.com/agentscope-ai/QwenPaw/pull/8155))

**PawPort**

- Add PawPort to import supported conversations, memory, Skills, plugins, MCP settings, projects, and scheduled tasks from Codex and Qoder, with compatibility checks and selective retries ([#6960](https://github.com/agentscope-ai/QwenPaw/pull/6960))

**QwenPaw Creator & Data**

- Upgrade Creator to 2.0.1: review scripts before media production, keep manual regenerations from triggering paid downstream steps, and recover stalled projects ([#8121](https://github.com/agentscope-ai/QwenPaw/pull/8121))
- Upgrade QwenPaw Data to 0.3.0 with an integrated analysis workspace, interactive clarification, inline HTML reports, and `/data` and `/datasource` commands in chat channels ([#7637](https://github.com/agentscope-ai/QwenPaw/pull/7637))

**Models & Memory**

- Unify model discovery, pricing, and selection, with a candidate model pool and per-conversation model and thinking controls ([#7899](https://github.com/agentscope-ai/QwenPaw/pull/7899))
- Configure a custom provider’s name, endpoint, protocol, and API key in one dialog ([#7826](https://github.com/agentscope-ai/QwenPaw/pull/7826))
- Configure ReMe search reranking in the Console, including the model, endpoint, candidate multiplier, and timeout ([#6399](https://github.com/agentscope-ai/QwenPaw/pull/6399))

**Hub**

- Add a Hub model gateway with centrally managed organization models, member token budgets, usage dashboards, and invitation-based registration ([#7779](https://github.com/agentscope-ai/QwenPaw/pull/7779))
- Support initializing the first Hub administrator from the command line, including Local-only deployments without the Docker SDK ([#7696](https://github.com/agentscope-ai/QwenPaw/pull/7696))

**Skills, Tools, Automation & Channels**

- Add a `view_audio` tool so Agents can understand audio files through the existing transcription pipeline ([#8083](https://github.com/agentscope-ai/QwenPaw/pull/8083))
- Configure scheduled tasks with plain-text instructions and a chosen model, preserve history after interruptions, and inspect timeout results and sessions from the Inbox ([#7776](https://github.com/agentscope-ai/QwenPaw/pull/7776))
- Distribute selected Skills from the Skill pool to workspaces in batches ([#7852](https://github.com/agentscope-ai/QwenPaw/pull/7852))
- Allow Skills to be assigned to custom channels as well as built-in channels ([#7782](https://github.com/agentscope-ai/QwenPaw/pull/7782))
- Install or remove Skill Market sources as plugins, including QwenPaw, ClawHub, ModelScope, and Aliyun ([#8128](https://github.com/agentscope-ai/QwenPaw/pull/8128))
- Add collapsible thinking panels in Feishu, with optional automatic collapse after generation ([#7685](https://github.com/agentscope-ai/QwenPaw/pull/7685))
- Render Markdown tables as native Telegram Rich Messages in replies and completed streams, with fallback when unsupported ([#7713](https://github.com/agentscope-ai/QwenPaw/pull/7713))

## 🔄 Changed

- Improve model settings and selection interactions in the Console ([#8017](https://github.com/agentscope-ai/QwenPaw/pull/8017))
- Improve Settings navigation and search, add clearer runtime configuration tabs, and smooth conversation switching ([#7956](https://github.com/agentscope-ai/QwenPaw/pull/7956))
- Unify memory commands under `/reme <action> key=value`, replacing `/dream`, `/memorize`, and `/reme_status` ([#7444](https://github.com/agentscope-ai/QwenPaw/pull/7444))
- Limit visual compaction to older conversation history, preserve the latest two user turns, and retrieve original passages with `recall_context` ([#7703](https://github.com/agentscope-ai/QwenPaw/pull/7703))
- Reduce delays in long conversations by avoiding repeated full history-database checks on every request ([#7639](https://github.com/agentscope-ai/QwenPaw/pull/7639))
- Redesign conversation history with time, source, or ungrouped views, more room on small screens, richer session details, and conversation ID copying ([#7665](https://github.com/agentscope-ai/QwenPaw/pull/7665), [#7688](https://github.com/agentscope-ai/QwenPaw/pull/7688), [#7788](https://github.com/agentscope-ai/QwenPaw/pull/7788), [#7846](https://github.com/agentscope-ai/QwenPaw/pull/7846))
- Use source grouping by default for the conversation list ([#7972](https://github.com/agentscope-ai/QwenPaw/pull/7972))
- Move the chat file drawer to the right side ([#7704](https://github.com/agentscope-ai/QwenPaw/pull/7704))
- Reduce initial Console downloads by loading chat dependencies and language resources on demand ([#7829](https://github.com/agentscope-ai/QwenPaw/pull/7829))
- Stream background tool output only while its task panel is expanded, reducing idle connections ([#7831](https://github.com/agentscope-ai/QwenPaw/pull/7831))
- Upgrade Make Skill to 2.1 with more reliable planning, argument validation, and evaluation guidance ([#7753](https://github.com/agentscope-ai/QwenPaw/pull/7753))
- Report daily runtime activity when Agents execute, including scheduled tasks, while honoring existing telemetry consent and opt-out settings ([#7802](https://github.com/agentscope-ai/QwenPaw/pull/7802))

## 🐛 Fixed

**PawPort**

- Show the exact asset and cause when a PawPort import fails so failed items can be retried ([#7953](https://github.com/agentscope-ai/QwenPaw/pull/7953))

**Console, Chat & Files**

- Keep chat terminal tabs working on HTTP deployments that assign UUID session IDs ([#8144](https://github.com/agentscope-ai/QwenPaw/pull/8144), [#8146](https://github.com/agentscope-ai/QwenPaw/pull/8146))
- Keep chat input controls usable when the window is narrow ([#8145](https://github.com/agentscope-ai/QwenPaw/pull/8145))
- Keep files sent by the Agent visible after a conversation is restored from history ([#7949](https://github.com/agentscope-ai/QwenPaw/pull/7949))
- Allow users to interrupt navigation between conversations while messages are loading ([#8214](https://github.com/agentscope-ai/QwenPaw/pull/8214))
- Ignore replayed QQ gateway events to prevent duplicate handling of messages ([#8006](https://github.com/agentscope-ai/QwenPaw/pull/8006))
- Keep queued messages bound to their original Agent and conversation, and prevent delayed chat creation or history loading from disrupting navigation and cancellation ([#7382](https://github.com/agentscope-ai/QwenPaw/pull/7382))
- Preserve unsent drafts when pasting long text into Chat ([#8119](https://github.com/agentscope-ai/QwenPaw/pull/8119))
- Mark interrupted tool calls correctly after stopping a reply instead of leaving them stuck in a running state ([#7345](https://github.com/agentscope-ai/QwenPaw/pull/7345))
- Restore assistant reply timestamps and the correct visibility of response actions ([#7851](https://github.com/agentscope-ai/QwenPaw/pull/7851))
- Run `/compact` in the current conversation instead of opening a new session ([#7834](https://github.com/agentscope-ai/QwenPaw/pull/7834))
- Refresh cached text and CSV tabs when reopened or activated while preserving unsaved edits ([#7902](https://github.com/agentscope-ai/QwenPaw/pull/7902))
- Move Skill pool downloads off the request path and clear unfinished temporary files ([#8055](https://github.com/agentscope-ai/QwenPaw/pull/8055))
- Refresh expanded file directories without losing the current pagination state ([#8149](https://github.com/agentscope-ai/QwenPaw/pull/8149))
- Render LaTeX formulas in Console release notes and Markdown file previews ([#7909](https://github.com/agentscope-ai/QwenPaw/pull/7909))
- Recover from failed Console code downloads after the local service is available again, without exhausting reload attempts too early ([#8154](https://github.com/agentscope-ai/QwenPaw/pull/8154), [#8219](https://github.com/agentscope-ai/QwenPaw/pull/8219))
- Make project directory selection clearer and allow applying a directory directly from the browser ([#7897](https://github.com/agentscope-ai/QwenPaw/pull/7897))
- Improve loading on slow networks with smaller API responses and more resilient Skill list requests ([#7917](https://github.com/agentscope-ai/QwenPaw/pull/7917))
- Limit background polling and keep the model picker responsive during slow requests ([#8221](https://github.com/agentscope-ai/QwenPaw/pull/8221))
- Save model-routing changes together with other Agent settings ([#7747](https://github.com/agentscope-ai/QwenPaw/pull/7747))
- Show inherited thinking settings correctly, allow direct model selection from an empty model pool, and provide Kilo free-model defaults for fresh installations ([#7920](https://github.com/agentscope-ai/QwenPaw/pull/7920))
- Restore Vietnamese and Brazilian Portuguese language selection ([#7752](https://github.com/agentscope-ai/QwenPaw/pull/7752))
- Preserve the sidebar’s collapsed state across reloads ([#7681](https://github.com/agentscope-ai/QwenPaw/pull/7681))
- Keep Settings colors and menu typography consistent with the rest of the Console ([#7682](https://github.com/agentscope-ai/QwenPaw/pull/7682), [#7805](https://github.com/agentscope-ai/QwenPaw/pull/7805))
- Restore visible keyboard-focus indicators on links ([#7759](https://github.com/agentscope-ai/QwenPaw/pull/7759))
- Restore the PawPort entry in Agent configuration ([#7770](https://github.com/agentscope-ai/QwenPaw/pull/7770))

**Models, Runtime & Security**

- Preserve photo orientation when resizing images that contain EXIF rotation data ([#8136](https://github.com/agentscope-ai/QwenPaw/pull/8136))
- Validate Hub model settings against the model’s resolved context limit ([#8168](https://github.com/agentscope-ai/QwenPaw/pull/8168))
- Keep cancellation reasons visible and continue the Agent loop when a tool is stopped ([#8183](https://github.com/agentscope-ai/QwenPaw/pull/8183))
- Respect provider-resolved context windows to avoid premature conversation compaction ([#7652](https://github.com/agentscope-ai/QwenPaw/pull/7652))
- Use daylight-saving-aware time zones when displaying conversation transcript timestamps ([#8050](https://github.com/agentscope-ai/QwenPaw/pull/8050))
- Prevent PDFs returned by tools from breaking subsequent requests to Chat Completions models, including multimodal models ([#7636](https://github.com/agentscope-ai/QwenPaw/pull/7636))
- Recover when a provider rejects unsupported `input_audio` content in conversation history ([#7886](https://github.com/agentscope-ai/QwenPaw/pull/7886))
- Recover conversations after a model rejects an image or other media payload instead of replaying the rejected block on every turn ([#8010](https://github.com/agentscope-ai/QwenPaw/pull/8010))
- Filter historical images according to the selected model’s resolved capabilities, including text-only models ([#8190](https://github.com/agentscope-ai/QwenPaw/pull/8190))
- Keep optional tool parameters optional for Responses API models unless strict validation is explicitly enabled ([#7915](https://github.com/agentscope-ai/QwenPaw/pull/7915))
- Accept newer GPT token-limit parameters used by model providers ([#8090](https://github.com/agentscope-ai/QwenPaw/pull/8090))
- Correct Agent token-budget accounting and loop warnings, and recover from context overflow at the start of a streamed reply ([#7748](https://github.com/agentscope-ai/QwenPaw/pull/7748))
- Reclaim older media and tool results earlier so long conversations stay within the model context window ([#7965](https://github.com/agentscope-ai/QwenPaw/pull/7965), [#8193](https://github.com/agentscope-ai/QwenPaw/pull/8193))
- Prevent loop protection from terminating a task without new repeated tool calls ([#7919](https://github.com/agentscope-ai/QwenPaw/pull/7919))
- Prevent duplicate or fragmented ACP replies and enforce workspace protections for external runners with different tool argument formats ([#7783](https://github.com/agentscope-ai/QwenPaw/pull/7783))
- Recognize ACP permission choices by their protocol-defined kind to avoid unnecessary prompts in trusted sessions ([#7732](https://github.com/agentscope-ai/QwenPaw/pull/7732))
- Find user-installed command-line tools when running as a service or inside a container ([#7057](https://github.com/agentscope-ai/QwenPaw/pull/7057))
- Recover model responses after a provider stalls while closing a stream ([#7960](https://github.com/agentscope-ai/QwenPaw/pull/7960))
- Prevent Windows shell commands from propagating console control events that terminate the QwenPaw server ([#7910](https://github.com/agentscope-ai/QwenPaw/pull/7910))
- Reduce command-line startup time by loading initialization code only when needed ([#8004](https://github.com/agentscope-ai/QwenPaw/pull/8004))
- Handle compressed MCP error responses without breaking connection negotiation ([#7787](https://github.com/agentscope-ai/QwenPaw/pull/7787))
- Restrict overly broad master-key file permissions when reading existing keys on Unix systems ([#7699](https://github.com/agentscope-ai/QwenPaw/pull/7699))
- Validate Skill names before using them as installation paths ([#8065](https://github.com/agentscope-ai/QwenPaw/pull/8065))
- Return a validation error instead of a server error for NaN and infinite numeric inputs ([#7677](https://github.com/agentscope-ai/QwenPaw/pull/7677))

**Memory, Hub & Deployment**

- Show the specific reason when redeeming a Hub invitation fails ([#7952](https://github.com/agentscope-ai/QwenPaw/pull/7952))
- Close Hub database connections after transactions to avoid exhausting connections ([#8038](https://github.com/agentscope-ai/QwenPaw/pull/8038))
- Allow pending memory jobs to finish during graceful shutdown, including Windows desktop shutdown ([#7760](https://github.com/agentscope-ai/QwenPaw/pull/7760))
- Repair damaged history search indexes and recover retention cleanup without discarding conversation history ([#7655](https://github.com/agentscope-ai/QwenPaw/pull/7655))
- Strengthen history database writes, backups, and restores to reduce data loss after interrupted or failed operations ([#6459](https://github.com/agentscope-ai/QwenPaw/pull/6459))
- Distinguish failed memory jobs with empty error details from successful empty results in Inbox notifications ([#7756](https://github.com/agentscope-ai/QwenPaw/pull/7756))
- Restore the memory runtime after rolling back a failed backend change ([#7893](https://github.com/agentscope-ai/QwenPaw/pull/7893))
- Validate embedding-service timeouts consistently when saving settings or testing the connection ([#7758](https://github.com/agentscope-ai/QwenPaw/pull/7758))
- Require confirmation before processing more than 50 pending emails and pause after three consecutive failures, with resume controls in the Inbox ([#7690](https://github.com/agentscope-ai/QwenPaw/pull/7690))
- Keep approval decisions through timeout races so pending tool requests resolve consistently ([#8188](https://github.com/agentscope-ai/QwenPaw/pull/8188))
- Fix Hub Local runtime initialization, CLI access, and persistent workspaces, and restore authenticated PawApp access with correct model limits ([#7833](https://github.com/agentscope-ai/QwenPaw/pull/7833))
- Honor administrator overrides when checking member token permissions in Hub ([#8169](https://github.com/agentscope-ai/QwenPaw/pull/8169))
- Restore file previews through the Hub personal-runtime proxy ([#7766](https://github.com/agentscope-ai/QwenPaw/pull/7766))
- Record login attempts and denied runtime creation in Hub audit logs ([#7683](https://github.com/agentscope-ai/QwenPaw/pull/7683))
- Handle interrupted plugin catalog downloads without returning an internal server error ([#7763](https://github.com/agentscope-ai/QwenPaw/pull/7763))
- Restore loading of the bundled omp-roles Skill when it appears installed but cannot be used ([#7922](https://github.com/agentscope-ai/QwenPaw/pull/7922))
- Release PawApp streaming resources reliably and prevent cancellation from leaving tasks waiting indefinitely ([#7488](https://github.com/agentscope-ai/QwenPaw/pull/7488))
- Include the Console channel in desktop packages so the application can start correctly ([#7816](https://github.com/agentscope-ai/QwenPaw/pull/7816))
- Restore approval and denial of tool requests when the desktop pet is enabled ([#7933](https://github.com/agentscope-ai/QwenPaw/pull/7933))
- Use the same pinned application Python runtime in Docker and desktop builds ([#7751](https://github.com/agentscope-ai/QwenPaw/pull/7751))
- Stop repeated output errors after the terminal that launched QwenPaw has closed ([#6569](https://github.com/agentscope-ai/QwenPaw/pull/6569))

## New Contributors

- [@Wiziechen](https://github.com/Wiziechen)
- [@TerebiSAMA](https://github.com/TerebiSAMA)
- [@yang0228](https://github.com/yang0228)
- [@lorenzozanee](https://github.com/lorenzozanee)
- [@BeiMu-new](https://github.com/BeiMu-new)
- [@fanghua-ai](https://github.com/fanghua-ai)
- [@iluv7](https://github.com/iluv7)
- [@shuziP](https://github.com/shuziP)
- [@sdxwmlyl](https://github.com/sdxwmlyl)
- [@Xinji-Mai](https://github.com/Xinji-Mai)
- [@96loveslife](https://github.com/96loveslife)

**Full Changelog**: [v2.2.1...v2.2.2](https://github.com/agentscope-ai/QwenPaw/compare/v2.2.1...v2.2.2)

Related Repositories