## ✨ 新增功能

**架构**

- **多 Agent / 多工作区架构**：支持同时运行多个 Agent，每个 Agent 拥有独立的工作区，包含各自的配置、记忆、技能和工具。控制台新增 Agent 切换器，方便在不同 Agent 间快速切换 ([#1375](https://github.com/agentscope-ai/CoPaw/pull/1375), [#1625](https://github.com/agentscope-ai/CoPaw/pull/1625), [#1670](https://github.com/agentscope-ai/CoPaw/pull/1670), [#1714](https://github.com/agentscope-ai/CoPaw/pull/1714), [#1664](https://github.com/agentscope-ai/CoPaw/pull/1664), [#1614](https://github.com/agentscope-ai/CoPaw/pull/1614))
- **上下文管理**：新增 Token 计数功能，支持 `/dump_history` 和 `/load_history` 命令导出/导入对话历史，可配置历史长度上限，记忆压缩时显示进度提示 ([#1628](https://github.com/agentscope-ai/CoPaw/pull/1628), [#1754](https://github.com/agentscope-ai/CoPaw/pull/1754), [#1689](https://github.com/agentscope-ai/CoPaw/pull/1689))

**安全**

- **技能安全扫描**：技能在安装前会自动进行静态分析扫描，检测提示词注入、命令注入、硬编码密钥、数据外泄等安全风险 ([#564](https://github.com/agentscope-ai/CoPaw/pull/564))
- **危险命令检测**：新增安全规则，可识别磁盘格式化、fork 炸弹、反向 Shell、权限提升等危险 Shell 命令 ([#1484](https://github.com/agentscope-ai/CoPaw/pull/1484), [#1529](https://github.com/agentscope-ai/CoPaw/pull/1529))
- **Web 登录认证**：新增可选的 Web 认证功能，支持单用户注册、Token 登录、本地访问免认证、以及 CLI 命令([#1329](https://github.com/agentscope-ai/CoPaw/pull/1329), [#1666](https://github.com/agentscope-ai/CoPaw/pull/1666), [#1719](https://github.com/agentscope-ai/CoPaw/pull/1719))

**通道（Channels）**

- **企业微信通道**：新增企业微信通道，支持富媒体消息收发、扫码接入、控制台配置 UI ([#1407](https://github.com/agentscope-ai/CoPaw/pull/1407), [#1706](https://github.com/agentscope-ai/CoPaw/pull/1706), [#1725](https://github.com/agentscope-ai/CoPaw/pull/1725), [#1728](https://github.com/agentscope-ai/CoPaw/pull/1728), [#1681](https://github.com/agentscope-ai/CoPaw/pull/1681), [#1747](https://github.com/agentscope-ai/CoPaw/pull/1747), [#1766](https://github.com/agentscope-ai/CoPaw/pull/1766), [#1618](https://github.com/agentscope-ai/CoPaw/pull/1618), [#1631](https://github.com/agentscope-ai/CoPaw/pull/1631), [#1860](https://github.com/agentscope-ai/CoPaw/pull/1860), [#1856](https://github.com/agentscope-ai/CoPaw/pull/1856))
- **小艺通道**：新增小艺通道 ([#1213](https://github.com/agentscope-ai/CoPaw/pull/1213))
- **钉钉 AI 卡片回复**：钉钉现已支持 AI 卡片形式的流式回复，不可用时自动回退到 Webhook/Markdown 方式 ([#1118](https://github.com/agentscope-ai/CoPaw/pull/1118))

**技能与工具**

- **LobeHub 技能导入**：支持直接从 LobeHub 导入技能 ([#1350](https://github.com/agentscope-ai/CoPaw/pull/1350))
- **魔搭技能市场**：支持从魔搭（ModelScope）技能市场导入技能 ([#1673](https://github.com/agentscope-ai/CoPaw/pull/1673))
- **内置技能版本同步**：内置技能现在会跟踪版本号，升级时自动同步更新，同时保留用户的自定义修改 ([#1674](https://github.com/agentscope-ai/CoPaw/pull/1674), [#1716](https://github.com/agentscope-ai/CoPaw/pull/1716), [#1749](https://github.com/agentscope-ai/CoPaw/pull/1749))
- **引导技能**：新增内置引导技能，可通过本地文档和官网回答 CoPaw 的安装与配置问题 ([#1522](https://github.com/agentscope-ai/CoPaw/pull/1522))
- **Zip 压缩包技能导入**：支持在控制台直接上传 Zip 压缩包导入技能 ([#1840](https://github.com/agentscope-ai/CoPaw/pull/1840))
- **内置工具**：新增 `glob_search` 和 `grep_search` 内置工具，用于在 Agent 工作区中进行文件搜索和内容搜索 ([#1852](https://github.com/agentscope-ai/CoPaw/pull/1852))
- **MCP Header 环境变量**：MCP HTTP 客户端请求头支持 `${ENV_VAR}` 占位符展开 ([#1629](https://github.com/agentscope-ai/CoPaw/pull/1629))

**多模态**

- **控制台多模态对话**：控制台聊天现在支持在文本消息中附带图片和文件 ([#1772](https://github.com/agentscope-ai/CoPaw/pull/1772))
- **图片分析工具**：新增 `view_image` 工具，让 LLM 能够分析本地图片，用于多模态对话 ([#1526](https://github.com/agentscope-ai/CoPaw/pull/1526))
- **非多模态模型媒体回退**：当非多模态 LLM 收到图片/音频/视频内容时，系统会自动去除媒体块并重试请求 ([#1676](https://github.com/agentscope-ai/CoPaw/pull/1676))
- **语音转文字**：支持通过 Whisper API 或本地 Whisper 模型对语音消息进行转录，包含音频格式转换和控制台语音转录设置页 ([#1476](https://github.com/agentscope-ai/CoPaw/pull/1476), [#1726](https://github.com/agentscope-ai/CoPaw/pull/1726))

**模型供应商（Providers）**

- **Gemini**：新增 Google Gemini 作为内置模型供应商 ([#1507](https://github.com/agentscope-ai/CoPaw/pull/1507))
- **DeepSeek**：新增 DeepSeek 作为内置模型供应商 ([#1498](https://github.com/agentscope-ai/CoPaw/pull/1498))
- **MiniMax**：新增 MiniMax 作为内置模型供应商，国际版与国内版分别配置 ([#1376](https://github.com/agentscope-ai/CoPaw/pull/1376), [#1735](https://github.com/agentscope-ai/CoPaw/pull/1735))
- **Kimi**：新增 Kimi 作为内置模型供应商，国内版与国际版分别配置 ([#1832](https://github.com/agentscope-ai/CoPaw/pull/1832))

**CLI 与部署**

- **`copaw update` 命令**：新增 `copaw update` 和 `copaw shutdown` 命令，`copaw update` 自动检测环境并从 PyPI 升级 ([#1278](https://github.com/agentscope-ai/CoPaw/pull/1278))
- **Docker Compose**：Docker 部署改用 `docker-compose.yml`，简化了配置和数据卷管理 ([#1320](https://github.com/agentscope-ai/CoPaw/pull/1320))
- **Docker 镜像**：Docker 镜像新增了更多通道依赖 ([#1761](https://github.com/agentscope-ai/CoPaw/pull/1761))

**控制台与界面**

- **暗色模式**：控制台全面支持暗色模式，提供亮色/暗色/跟随系统三种切换选项，覆盖所有页面 ([#1566](https://github.com/agentscope-ai/CoPaw/pull/1566), [#1637](https://github.com/agentscope-ai/CoPaw/pull/1637), [#1662](https://github.com/agentscope-ai/CoPaw/pull/1662))
- **流式对话**：控制台中的 Agent 回复现在以 SSE 方式流式输出，支持断线重连和中途停止 ([#1571](https://github.com/agentscope-ai/CoPaw/pull/1571), [#1672](https://github.com/agentscope-ai/CoPaw/pull/1672))

**其他**

- **时区配置**：控制台新增时区选择器，时区会应用到系统提示词、定时任务和心跳检测等场景，支持多平台自动检测 ([#1535](https://github.com/agentscope-ai/CoPaw/pull/1535), [#1746](https://github.com/agentscope-ai/CoPaw/pull/1746))
- **系统提示词包含 OS 信息**：系统提示词中自动注入操作系统信息，让模型回复更贴合当前平台 ([#1660](https://github.com/agentscope-ai/CoPaw/pull/1660))

## 🔄 变更

**核心与生命周期**

- **优雅的生命周期管理**：桌面端关闭时子进程会正常终止，Agent 重载实现零停机切换，关闭前会等待所有活跃任务完成 ([#1646](https://github.com/agentscope-ai/CoPaw/pull/1646), [#1664](https://github.com/agentscope-ai/CoPaw/pull/1664), [#1714](https://github.com/agentscope-ai/CoPaw/pull/1714))
- **自定义工作目录**：全面替换了代码中硬编码的 `~/.copaw` 路径，`COPAW_WORKING_DIR` 环境变量现在可以正常生效 ([#1652](https://github.com/agentscope-ai/CoPaw/pull/1652))
- **动态 Token 计数**：Token 计数现在使用 Agent 级别的配置，而非硬编码的全局分词器，支持按 Agent 配置计数策略 ([#1819](https://github.com/agentscope-ai/CoPaw/pull/1819))
- **配置加载保护**：配置加载过程增加了错误处理，路径规范化或心跳配置失败不再导致应用崩溃 ([#1865](https://github.com/agentscope-ai/CoPaw/pull/1865))

**模型与供应商**

- **模型显示一致性**：控制台在页面切换时会重新获取当前模型信息，确保显示的供应商和模型始终一致 ([#1420](https://github.com/agentscope-ai/CoPaw/pull/1420))
- **Ollama 默认地址**：Ollama 默认地址从 `localhost` 改为 `127.0.0.1`，连接更稳定 ([#1480](https://github.com/agentscope-ai/CoPaw/pull/1480))
- **供应商请求头**：改进了供应商专用 HTTP 请求头的处理方式，DashScope 使用精确 URL 匹配 ([#1757](https://github.com/agentscope-ai/CoPaw/pull/1757))

**控制台、界面与平台**

- **多语言支持**：改进了控制台的多语言支持，同步了语言设置、文档导航本地化，以及聊天提示词和欢迎文案的本地化 ([#1409](https://github.com/agentscope-ai/CoPaw/pull/1409), [#1686](https://github.com/agentscope-ai/CoPaw/pull/1686), [#1707](https://github.com/agentscope-ai/CoPaw/pull/1707), [#1858](https://github.com/agentscope-ai/CoPaw/pull/1858))
- **工作区路径**：编辑已有 Agent 时，工作区路径变为只读，避免误修改 ([#1624](https://github.com/agentscope-ai/CoPaw/pull/1624), [#1764](https://github.com/agentscope-ai/CoPaw/pull/1764))
- **Windows 桌面端启动加速**：预编译 Python 字节码，加快 Windows 桌面端启动速度 ([#1639](https://github.com/agentscope-ai/CoPaw/pull/1639))
- **QQ 频道回复优化**：改进了回复逻辑，支持私聊回复，优化了被封锁 URL 的处理方式 ([#1650](https://github.com/agentscope-ai/CoPaw/pull/1650))

## 🐛 修复

**通道（Channels）**

- **Telegram**：修复了消息线程回复、媒体处理和错误上报的问题；轮询断线后现在会以指数退避方式自动重连 ([#1210](https://github.com/agentscope-ai/CoPaw/pull/1210), [#1475](https://github.com/agentscope-ai/CoPaw/pull/1475))
- **Discord**：修复了不同频道的消息被错误合并的问题；修正了定时任务中 Discord ID 的格式处理；将会话级防抖逻辑推广到所有通道 ([#300](https://github.com/agentscope-ai/CoPaw/pull/300), [#1002](https://github.com/agentscope-ai/CoPaw/pull/1002), [#1583](https://github.com/agentscope-ai/CoPaw/pull/1583))
- **钉钉**：修复了发送者信息不完整时消息被错误跳过的问题；过滤了富文本解析中的空文本块 ([#851](https://github.com/agentscope-ai/CoPaw/pull/851), [#1554](https://github.com/agentscope-ai/CoPaw/pull/1554))
- **飞书**：修复了卡片中表格超出单卡元素上限的问题；新增语音消息处理能力；修复了 WebSocket 事件循环冲突导致的通道重载失败 ([#1627](https://github.com/agentscope-ai/CoPaw/pull/1627), [#1726](https://github.com/agentscope-ai/CoPaw/pull/1726), [#1817](https://github.com/agentscope-ai/CoPaw/pull/1817))

**模型与供应商**

- **Ollama / LM Studio**：修复了上下文长度设置不生效的问题；连接和模型拉取错误现在会显示具体的错误信息 ([#1427](https://github.com/agentscope-ai/CoPaw/pull/1427), [#1745](https://github.com/agentscope-ai/CoPaw/pull/1745))
- **流式响应**：修复了流式响应 chunk 没有 choices 时导致崩溃的问题 ([#1524](https://github.com/agentscope-ai/CoPaw/pull/1524))
- **推理内容**：修复了消息格式化改变助手消息数量后，推理内容（reasoning_content）丢失的问题 ([#1557](https://github.com/agentscope-ai/CoPaw/pull/1557))
- **工具选择**：修复了 `tool_choice` 被错误强制设为 `auto` 的问题，现在会原样传递 ([#1570](https://github.com/agentscope-ai/CoPaw/pull/1570))

**技能（Skills）**

- **定时任务**：修复了星期名称不匹配导致定时任务在错误日期触发的问题；注入 UTC 时间上下文防止时区漂移；自定义 Cron 表达式在 UI 编辑后不再丢失；无效定时任务会被优雅跳过；Agent 现在能在正确的工作区中创建定时任务 ([#1269](https://github.com/agentscope-ai/CoPaw/pull/1269), [#1432](https://github.com/agentscope-ai/CoPaw/pull/1432), [#1257](https://github.com/agentscope-ai/CoPaw/pull/1257), [#1734](https://github.com/agentscope-ai/CoPaw/pull/1734), [#1768](https://github.com/agentscope-ai/CoPaw/pull/1768), [#1839](https://github.com/agentscope-ai/CoPaw/pull/1839))
- **技能管理**：修复了技能名含 `/` 时导入失败；去除了重复的内置技能列表；修复了从包导入时文件不完整的问题；恢复了技能同步重构后的启用/禁用功能；新增导入超时提示和取消选项；技能描述现在能正确显示在控制台；导入失败时显示安全扫描详情等友好错误信息 ([#1369](https://github.com/agentscope-ai/CoPaw/pull/1369), [#1396](https://github.com/agentscope-ai/CoPaw/pull/1396), [#1576](https://github.com/agentscope-ai/CoPaw/pull/1576), [#1716](https://github.com/agentscope-ai/CoPaw/pull/1716), [#1720](https://github.com/agentscope-ai/CoPaw/pull/1720), [#1626](https://github.com/agentscope-ai/CoPaw/pull/1626), [#1862](https://github.com/agentscope-ai/CoPaw/pull/1862))

**控制台、界面与平台**

- **记忆压缩**：修复了系统提示词为空时记忆压缩崩溃的问题 ([#1608](https://github.com/agentscope-ai/CoPaw/pull/1608))
- **控制台对话**：修复了刷新页面时错误跳转到聊天页；复制功能现在提取文本内容而非原始 JSON；切换 Agent 时会话列表能正确刷新；聊天会话在页面导航后可以保持 ([#1373](https://github.com/agentscope-ai/CoPaw/pull/1373), [#1471](https://github.com/agentscope-ai/CoPaw/pull/1471), [#1662](https://github.com/agentscope-ai/CoPaw/pull/1662), [#1722](https://github.com/agentscope-ai/CoPaw/pull/1722))
- **控制台 UI**：修复了静态资源加载失败、工作区列表刷新异常、工作区路径显示问题、版本更新通知过滤以及 TypeScript 相关错误 ([#1402](https://github.com/agentscope-ai/CoPaw/pull/1402), [#1737](https://github.com/agentscope-ai/CoPaw/pull/1737), [#1764](https://github.com/agentscope-ai/CoPaw/pull/1764), [#1769](https://github.com/agentscope-ai/CoPaw/pull/1769), [#1822](https://github.com/agentscope-ai/CoPaw/pull/1822))
- **Windows 兼容性**：修复了跨磁盘文件移动失败的问题；抑制了 Shell 命令执行时 AutoRun 产生的多余 stderr 输出；修复了 GBK 控制台下 emoji/Unicode 日志乱码 ([#1483](https://github.com/agentscope-ai/CoPaw/pull/1483), [#1556](https://github.com/agentscope-ai/CoPaw/pull/1556), [#1601](https://github.com/agentscope-ai/CoPaw/pull/1601), [#1495](https://github.com/agentscope-ai/CoPaw/pull/1495))

## 📚 文档

- **Ollama 上下文长度**：新增关于 Ollama 和 LM Studio 上下文长度配置的提示文档 ([#1433](https://github.com/agentscope-ai/CoPaw/pull/1433))
- **中文文档**：修复了中文文档中的排版和一致性问题 ([#1300](https://github.com/agentscope-ai/CoPaw/pull/1300))
- **Docker 快速开始**：统一了快速开始页面中 Docker 密钥配置的文档说明 ([#1584](https://github.com/agentscope-ai/CoPaw/pull/1584))
- **定时任务技能**：更新了定时任务技能文档中 `--channel` 选项，列出所有支持的通道 ([#1541](https://github.com/agentscope-ai/CoPaw/pull/1541))
- **通道白名单**：新增通道白名单配置、@提及、白名单 ID 说明的文档 ([#1760](https://github.com/agentscope-ai/CoPaw/pull/1760))
- **开发者社区**：新增开发者社区信息 ([#1678](https://github.com/agentscope-ai/CoPaw/pull/1678))
- **控制台**：更新了控制台中的 Release Note 链接 ([#1622](https://github.com/agentscope-ai/CoPaw/pull/1622))
- **企业微信 SDK**：新增企业微信 AI Bot 官方 SDK 的使用说明 ([#1843](https://github.com/agentscope-ai/CoPaw/pull/1843))
