# 更新日志 本项目的所有重要变更都将记录在此文件中。 格式遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/), 版本号遵循 [语义化版本](https://semver.org/lang/zh-CN/)。 ## [0.9.6] - 2026-03-18 ### 修复 (Fixes) - **仪表盘二次加载崩溃** — 切换页面后返回仪表盘不再报 `Cannot read properties of null (reading 'recommended')` (#100) - **聊天代码单引号乱码** — 代码块中 `'` 不再显示为 `'`,修正 Markdown 渲染器的 HTML 转义策略 (#99) - **聊天图片路径反斜杠丢失** — Windows 路径 `C:\Users\...` 在图片加载失败提示中不再丢失反斜杠 - **聊天页折叠侧边栏后不自适应** — 折叠主侧边栏后聊天页面现在正确撑满全宽 - **Gateway 状态横条延迟** — WebSocket 连接成功后立即刷新 Gateway 状态,不再等待 30 秒轮询周期 - **版本列表加载失败** — 修复 npm registry 返回 gzip 压缩响应时 `error decoding response body` 错误(reqwest 启用 gzip 解压) - **配置保存后 Gateway 需手动启动** — 所有页面(模型/渠道/通信等)保存 openclaw.json 后自动重载 Gateway(防抖 3 秒),不再需要手动点启动按钮 - **dev.ps1 启动脚本报错** — 修复 PowerShell 解析 emoji 字符时的编码错误 ### 新功能 (Features) - **托管 Agent** — 聊天页新增「⊕ 托管」按钮,可设定任务目标后让 AI 自动循环引导 OpenClaw 执行: - 内置系统提示词,明确调度 Agent 的身份和职责 - 可视化滑块设置最大回复次数(5-200 或 ∞ 无限) - 定时自动停止(开关 + 滑块 + 倒计时进度条) - 上下文自动压缩(超过 20 条历史自动压缩为摘要) - OpenClaw 回复包含「完成/停止」时自动停止循环 - 单按钮启动/停止切换,运行时输入框自动锁定 ### 改进 (Improvements) - **Toast 通知样式** — 从半透明毛玻璃改为实底+边框+阴影,暗色模式兼容性更好 - **聊天输入框增大** — 最小高度 44px,最大高度 200px,输入体验更舒适 ## [0.9.5] - 2026-03-17 ### 修复 (Fixes) - **仪表盘加载卡住** — 从其他页面返回仪表盘时不再永远显示加载占位符,添加错误捕获和重试按钮 (#96) - **Gemini 模型配置崩溃** — Google Gemini 的 api 类型从错误的 `google-gemini` 修正为 `google-generative-ai`,与上游 OpenClaw 配置规范一致 (#93) - **聊天代码下划线消失** — Markdown 渲染器的下划线转斜体正则改为 word-boundary 匹配,`my_variable` 等标识符不再被误转 (#92) - **聊天发送前校验** — Gateway 未就绪时点击发送按钮会提示警告,而非静默失败 - **聊天页空值防御** — `createStreamBubble`、`renderAttachments`、`showPageGuide`、`loadHistory` 等 8 处空值检查,防止快速切页时报错 - **WebSocket 重复连接** — 添加 `_connecting` 状态标记和 `connect()` 防重入守卫,避免重复发起连接 ### 新功能 (Features) - **工具调用渲染** — 聊天消息中的 AI 工具调用(tool call)以可折叠卡片形式展示,包含工具名、状态、时间、参数和结果详情 - **自动滚动控制** — 用户向上滚动查看历史消息时,新回复不再强制跳到底部;点击 ↓ 按钮恢复自动跟随 ### 改进 (Improvements) - **WebSocket 全局单例** — `wsClient` 改为 `window` 级单例,防止热更新时创建重复实例 - **Docker 部署文档** — 新增 FAQ:面板内安装 OpenClaw 失败的原因和解决方案(推荐一体镜像或 Dockerfile 预装) ### 安全 (Security) - **quinn-proto 漏洞修复** — 更新 quinn-proto 0.11.13 → 0.11.14,修复 QUIC transport parameter 解析 panic (GHSA-6xvm-j4wr-6v98) ## [0.9.4] - 2026-03-17 ### 新功能 (Features) - **OpenClaw 独立安装包** — 全新 standalone 安装方式,自带 Node.js 运行时,零依赖、无需 npm,下载即用。支持 Windows/macOS/Linux/树莓派 - **安装方式选择器** — 初始设置页新增安装方式下拉:自动选择(推荐)/ CDN 加速 / GitHub / npm 编译,汉化版专属 - **GitHub 下载模式** — 支持从 GitHub Releases 下载独立安装包,CDN 不可用时的备选方案 - **动态版本查询** — 安装时动态查询 latest.json 获取最新版本,不怕旧资源被删除 ### 改进 (Improvements) - **默认汉化版** — 未安装状态默认识别为汉化优化版(而非官方版),更符合国内用户习惯 - **CherryStudio 干扰过滤** — CLI 检测过滤第三方 openclaw 二进制(如 CherryStudio),避免误识别 - **安装日志安全** — 日志不再暴露 R2 完整下载地址,防止被恶意利用 - **卸载兼容增强** — 卸载同时清理 standalone 安装目录和 npm 全局安装,覆盖所有可能路径 - **macOS 免 sudo** — standalone 安装到用户目录(~/.openclaw-bin),解决 macOS npm 全局安装权限不足问题 - **官网独立安装包入口** — README 和 docs/index.html 下载区新增独立安装包说明和下载按钮 ## [0.9.3] - 2026-03-16 ### 修复 (Fixes) - **仪表盘版本显示"未知"** — 修复 coreP Promise 解构顺序错误(config 和 version 互换),导致版本卡片无法正确读取版本信息 - **Agent 管理"暂无 Agent"** — OpenClaw 的 main agent 是隐式的(不在 agents.list 中),list_agents 现在始终自动插入 main agent - **Agent 模型显示 [object Object]** — 正确解析 model 对象的 primary 字段,兼容字符串和对象两种格式 - **定时任务触发/编辑/删除失败** — cron.run/update/remove RPC 参数从 id 修正为 jobId,匹配 Gateway schema - **聊天会话列表消失** — 恢复 chat header 中的 sidebar toggle 按钮(PR#88 将按钮移入 sidebar 内导致折叠后无法展开) - **Gateway 启动失败 Unknown config keys** — stripUiFields 现在清理根层级的 ClawPanel 内部字段(version info),防止污染 openclaw.json - **Docker 安装超时** — npm 镜像源不再 fallback 到海外 registry.npmjs.org,优先使用国内 npmmirror - **SkillHub CLI 检测误报"请先安装"** — 检测参数从 --version 修正为 --cli-version - **消息渠道配置被仪表盘覆盖** — 仪表盘自愈逻辑用缓存 config 覆盖文件导致 channels 丢失,现在先读取最新配置再 patch ### 改进 (Improvements) - **ARM 设备性能优化** — in-flight 请求去重防止进程堆积、后端 serverCached 缓存、Gateway 轮询降频(15s→30s)、get_status_summary 改为直接读文件不走 CLI - **R2 CDN 安装加速** — 新增 Cloudflare R2 预装归档下载(dl.qrj.ai),Windows 安装从 3-10 分钟降至 1-2 分钟 - **模型添加体验优化** — 快捷添加改为模型选择弹窗,用户可自主勾选需要的模型 ## [0.9.2] - 2026-03-16 ### 新功能 (Features) - **SkillHub + ClawHub 双源技能管理** — Skills 页面新增已安装/搜索安装 Tab 切换,支持 SkillHub 和 ClawHub 双源下拉选择、搜索安装、卸载功能 - **SkillHub CLI 集成** — 新增 SkillHub 检测、安装、搜索、安装 Skill 的完整后端命令链(Rust + Web 双模式) - **消息渠道多 Agent 绑定展示** — 已接入列表现在显示所有绑定的 Agent 标签,不再只显示第一个 - **消息渠道快速绑定 Agent** — 已接入平台点击"绑定新 Agent"弹出简化的 Agent 选择弹窗,无需重新填写凭证 - **消息渠道多账号支持(飞书)** — 后端 save_messaging_platform 支持 accountId 参数,可将不同飞书应用绑定到不同 Agent - **NVM_SYMLINK 环境变量支持** — Windows 下 nvm 用户的 Node.js 路径检测更可靠 ### 修复 (Fixes) - **Skills JSON 解析修复** — extractCliJson 函数正确处理 CLI 输出中混入的 Node.js 警告信息 - **`--verbose` 日志污染** — 移除 openclaw skills 命令中多余的 --verbose 参数,避免输出被 npm 日志污染 - **SkillHub 搜索结果解析** — 修复实际 CLI 输出格式与预期不符导致的搜索结果为空 - **Windows cmd /c 兼容** — SkillHub/npx/ClawHub 命令在 Windows 上正确通过 cmd /c 调用 - **Cron delivery 参数格式** — 定时任务投递参数修复为正确的 mode+to+channel 格式 - **白屏安全网** — boot() 增加 try-catch 和 splash 超时检测,WebView2 加载失败时不再白屏 ### 改进 (Improvements) - **Git HTTPS 重写规则扩展** — 从 6 条扩展到 14 条,覆盖 GitHub/GitLab/Bitbucket 的所有 SSH/Git 协议变体 - **Agent 管理直接读 openclaw.json** — 不再通过 CLI 获取 Agent 列表,响应速度大幅提升 - **记忆文件直接读 openclaw.json** — Agent workspace 路径从配置文件直接解析,避免 CLI 调用阻塞 - **NSIS 中文语言选择器** — Windows 安装包默认中文,支持语言选择 - **WebView2 内嵌引导安装** — NSIS 安装包内嵌 WebView2 bootstrapper,离线环境也能安装 - **模型添加体验优化** — 模型页面快捷添加改为模型选择弹窗,用户可自主勾选需要的模型 - **助手系统提示词精简** — 移除冗余信息,聚焦技术支持核心能力 ## [0.8.6] - 2026-03-13 ### 修复 (Fixes) - **切换汉化版 SSH 认证失败** — npm install 子进程现通过 `GIT_CONFIG_COUNT` 环境变量强制注入 HTTPS insteadOf 规则,确保即使全局 git config 未生效(Windows PATH 问题等),SSH→HTTPS 替换也能在 npm 子进程中工作 - **#58 定时任务触发错误** — 修复 `fetchJobs` 中 `id: j.name || j.id` 导致自定义名称的任务无法触发(感谢 @axdlee) - **#63 systemd 部署找不到 OpenClaw** — 文档改用 `$(which node)` 动态路径 + `Environment=PATH` 确保 systemd 服务能找到 Node.js 和 OpenClaw CLI - **#64 Skills 页面 JSON 解析错误** — `openclaw skills list --json` 输出混入 Node.js 警告时不再报错,新增 `extract_json` 提取有效 JSON 对象 - **CI rustfmt/clippy 跨平台警告** — 修复 `unused_imports`(BufRead/BufReader 移入 cfg block)、`needless_return`×3、`and_then→map` ### 改进 (Improvements) - **错误诊断更精准** — SSH 错误诊断改用更严格的匹配(`permission denied`、`publickey`、`host key verification`),不再被 npm verbose 日志中的 `git@` 字样误触发 - **README 文档增强** — 新增「快速上手」4 步指南、Web 版部署指南(含 Nginx 配置示例)、消息渠道配置指南、FAQ 扩充 6 个常见问题 ## [0.8.5] - 2026-03-13 ### 修复 (Fixes) - **Web 模式渠道配对报错** — 补全 `pairing_list_channel` / `pairing_approve_channel` 后端 handler,飞书/钉钉配对审批不再报"未实现的命令" - **Web 模式插件状态报错** — 补全 `get_channel_plugin_status` / `install_channel_plugin` handler,QQ 机器人等插件保存不再 404 - **Web 模式初始设置缺失** — 补全 `check_git` / `auto_install_git` / `configure_git_https` / `guardian_status` / `invalidate_path_cache` handler,Web 部署全流程可用 ### 改进 (Improvements) - **Web 模式 handler 100% 覆盖** — dev-api.js 现已覆盖 tauri-api.js 中所有命令,Web 部署不再出现"未实现的命令"错误 ## [0.8.4] - 2026-03-13 ### 改进 (Improvements) - **移除龙虾军团入口** — 精简产品功能,移除 Docker 集群管理页面及相关军事化主题 UI,聚焦"简单好用"的核心体验 - **前端瘦身** — 删除 3 个专用模块(docker.js / docker-tasking.js / pixel-roles.js),pages.css 减少约 700 行,tauri-api.js 清理 30 个未使用 API 方法 ## [0.8.3] - 2026-03-12 ### 修复 (Fixes) - **默认安装改为原版** — 版本选择器默认选中「原版」(official),原版排在汉化版前面 - **CI Clippy 兼容** — Linux root 检测从 `unsafe libc::geteuid()` 改为 `std::env::var("USER")`,移除 libc 依赖 ## [0.8.2] - 2026-03-12 ### 修复 (Fixes) - **接口地址不再强制拼接 /v1** — 火山引擎(/v3)等第三方 API 不再被错误追加 /v1,仅 Ollama(端口 11434)自动补全 - **OpenClaw 升级 SSH 失败** — 增加 `git://` 和 `git+ssh://` 协议重定向到 HTTPS,`--unset-all` + `--add` 确保 4 条规则全部生效 - **飞书插件安装失败** — 新增内置插件检测(`is_plugin_builtin`),已内置时自动跳过 npm install - **飞书保存 ReferenceError** — 修复 `overlay is not defined`(应为 `modal`),修复表单收集不支持 `