## ✨ Added

**Agent System**

- **Mission Mode**: `/mission` command for autonomous, multi-phase task execution — the agent plans, executes, and self-corrects iteratively. Supports `/mission status` and `/mission list` to monitor running missions ([#3364](https://github.com/agentscope-ai/QwenPaw/pull/3364), [#3480](https://github.com/agentscope-ai/QwenPaw/pull/3480))
- **Auto-Continue on Text-Only**: When enabled, the agent automatically retries up to two extra reasoning passes if the model responds with text but no tool calls ([#3107](https://github.com/agentscope-ai/QwenPaw/pull/3107))
- **Custom Agent ID**: Specify a custom ID when creating agents from the console or API ([#3333](https://github.com/agentscope-ai/QwenPaw/pull/3333))
- **ACP External Agent Delegation**: Delegate tasks to external coding agents (OpenCode, Qwen, Claude Code, Codex) via the new `delegate_external_agent` tool with permission guards and real-time streamed output ([#3340](https://github.com/agentscope-ai/QwenPaw/pull/3340))
- **Agent CLI**: Create agents from the command line with `qwenpaw agents create`, with template selection (`default`, `local`, `qa`) and workspace initialization ([#3385](https://github.com/agentscope-ai/QwenPaw/pull/3385))

**CLI**

- **`qwenpaw doctor`**: Diagnostic command that checks environment, config, providers, channels, skills, MCP, memory, security, and more — with `doctor fix` for auto-remediation ([#3371](https://github.com/agentscope-ai/QwenPaw/pull/3371))
- **`qwenpaw skills info`**: Inspect skill details (enabled state, channels, path, description) from the command line; also adds `/skills` slash command in chat ([#3459](https://github.com/agentscope-ai/QwenPaw/pull/3459))

**Memory**

- **Memory Dream**: Scheduled long-term memory consolidation — a "dream" agent periodically deduplicates and reorganizes `MEMORY.md` ([#2177](https://github.com/agentscope-ai/QwenPaw/pull/2177))
- **Recursive File Watcher**: New `recursive_file_watcher` option to include subdirectory files in memory indexing ([#3347](https://github.com/agentscope-ai/QwenPaw/pull/3347))

**Console & UI**

- **Skill Import Hub**: Redesigned import modal with URL validation, marketplace integration, and overwrite confirmation when importing skills that conflict with existing ones ([#2412](https://github.com/agentscope-ai/QwenPaw/pull/2412), [#3415](https://github.com/agentscope-ai/QwenPaw/pull/3415), [#3482](https://github.com/agentscope-ai/QwenPaw/pull/3482))
- **Debug Page**: New Debug page in settings to view backend log files in real time ([#3478](https://github.com/agentscope-ai/QwenPaw/pull/3478), [#3511](https://github.com/agentscope-ai/QwenPaw/pull/3511))

**Channels**

- **WeChat Quoted Messages**: Quoted/replied messages are now parsed with support for text, image, voice, file, and video ([#3483](https://github.com/agentscope-ai/QwenPaw/pull/3483))

## 🔄 Changed

- **Provider Sort Order**: Provider list in settings is now sorted by availability ([#3458](https://github.com/agentscope-ai/QwenPaw/pull/3458))
- **Agent Communication Tools**: Inter-agent communication tools split into `chat_with_agent` (synchronous) and new `submit_to_agent` / `check_agent_task` (asynchronous background tasks) ([#3485](https://github.com/agentscope-ai/QwenPaw/pull/3485))

## 🐛 Fixed

**Console & UI**

- **Clear Chat History**: `/clear` now properly clears chat history in the console UI ([#3348](https://github.com/agentscope-ai/QwenPaw/pull/3348))
- **Token Usage Sort**: Token usage "by date" table now sorts with newest dates first ([#3387](https://github.com/agentscope-ai/QwenPaw/pull/3387))
- **Cron Job ID Tooltip**: Cron job ID tooltip corrected to describe it as a system-generated UUID ([#3404](https://github.com/agentscope-ai/QwenPaw/pull/3404))
- **Message History Navigation**: ArrowUp message history no longer triggers when slash-command suggestions are visible ([#3444](https://github.com/agentscope-ai/QwenPaw/pull/3444))

**Providers**

- **Image MIME Normalization**: Normalized `image/jpg` to `image/jpeg` in data URLs to prevent rejection by strict APIs ([#3313](https://github.com/agentscope-ai/QwenPaw/pull/3313))
- **Multimodal Tool Call Ordering**: Promoted image messages no longer break the contiguous tool-result block required by OpenAI and Anthropic ([#3299](https://github.com/agentscope-ai/QwenPaw/pull/3299))
- **Provider Class Identity**: Fixed Pydantic class-identity crash when the same provider is loaded from multiple import paths ([#3431](https://github.com/agentscope-ai/QwenPaw/pull/3431))

**Agent System**

- **Background Task Tracking**: Background tasks dispatched via AgentApp API are now tracked by `TaskTracker`, preventing cancellation during reload or shutdown ([#3305](https://github.com/agentscope-ai/QwenPaw/pull/3305))
- **Memory Compaction Guard**: Memory compaction hook no longer runs twice per reasoning step ([#3461](https://github.com/agentscope-ai/QwenPaw/pull/3461))

**Channels**

- **Discord Thread Routing**: Discord thread messages now route to the correct thread session instead of the parent channel ([#3144](https://github.com/agentscope-ai/QwenPaw/pull/3144))
- **WeChat Typing Indicator**: WeChat typing indicator no longer leaks background tasks; typing starts on message receive and stops reliably on completion or error ([#3488](https://github.com/agentscope-ai/QwenPaw/pull/3488))

**Desktop**

- **Python Environment Isolation**: Packaged desktop builds now set `PYTHONNOUSERSITE=1` to prevent user-installed packages from conflicting with bundled dependencies ([#3476](https://github.com/agentscope-ai/QwenPaw/pull/3476))

## 🔧 CI & Infrastructure

- **Channel Testing Infrastructure**: Contract tests, unit tests, CI workflow, and Makefile targets for channel quality assurance ([#2506](https://github.com/agentscope-ai/QwenPaw/pull/2506))
