diff --git a/release-notes/v0.2.8.md b/release-notes/v0.2.8.md index 79557443..f8a78678 100644 --- a/release-notes/v0.2.8.md +++ b/release-notes/v0.2.8.md @@ -1,16 +1,17 @@ # Claude Code Haha v0.2.8 -这是一个围绕 **Portable / Windows 桌面体验、运行时环境一致性、会话恢复、聊天交互稳定性和集成配置可用性** 的版本。 +这是一个围绕 **/goal 目标管理新功能、Portable / Windows 桌面体验、运行时环境一致性、会话恢复和聊天交互稳定性** 的版本。 -相比 `v0.2.7`,本次重点把一批已经验证但此前散落在 worktree 或远端 main 里的修复正式收拢到主线:Windows 终端和 portable storage 变得可配置、可理解;桌面从 Finder / Dock 启动时能获得更接近真实终端的环境;会话、worktree、侧边栏和 `/goal` 状态恢复更可靠;同时补齐了自定义 slash command、未发送草稿、AskUserQuestion、多 agent 进度、批量关闭运行中 tab、飞书引导和 provider 模型映射等日常使用问题。 +相比 `v0.2.7`,本次最重要的变化是正式新增 `/goal` 目标管理能力:用户可以在 CLI、桌面端或 WebUI 中创建目标,运行中的目标会在桌面端保持可见,完成结果会进入对话历史并在刷新或恢复会话后继续保留。除此之外,本次也把一批此前散落在 worktree 或远端 main 里的修复正式收拢到主线:Windows 终端和 portable storage 变得可配置、可理解;桌面从 Finder / Dock 启动时能获得更接近真实终端的环境;会话、worktree、侧边栏恢复更可靠;同时补齐了自定义 slash command、未发送草稿、AskUserQuestion、多 agent 进度与结果展示、批量关闭运行中 tab、飞书引导和 provider 模型映射等日常使用问题。 ## Highlight +- **新增 /goal 目标管理**:`/goal` 现在作为正式功能提供目标创建、运行中目标展示和完成结果留痕;完成态通过 Stop hook 持久化到 transcript,桌面端把运行中的 goal 放在紧凑 header,已完成 goal 回到聊天历史里展示。 - **Portable storage 可视化配置**:Settings 现在会说明当前配置目录来源,支持选择 portable data folder,并在需要时引导受控重启,让用户不用依赖环境变量也能理解和切换数据目录。 - **Windows 终端与 sidecar 更可靠**:Windows 用户可以配置内置终端启动 shell / Bash 路径;system fallback、portable Bash path 和显式 startup shell 的优先级更清晰,并恢复了 Windows x64 sidecar 兼容性修复。 - **桌面子进程环境对齐终端**:桌面会话、MCP stdio 和 scheduled task 会捕获用户 login + interactive shell 环境,减少 Finder / Dock 启动时找不到 `npx`、Homebrew、nvm 或自定义 PATH 的问题。 -- **会话恢复和工作流状态更稳**:legacy Windows workdir、stale worktree、macOS `/var` alias、侧边栏项目恢复、`/goal` 完成态和后台任务状态都补上了更明确的恢复路径。 -- **聊天输入与 Agent 进度更干净**:自定义 slash command 不再被 live update 覆盖;未发送草稿跨标签保留;多问题 AskUserQuestion 不串答案;选区添加至对话更贴近真实选区;Agent 背景进度回到 Agent 卡片内展示。 +- **会话恢复和工作流状态更稳**:legacy Windows workdir、stale worktree、macOS `/var` alias、侧边栏项目恢复和后台任务状态都补上了更明确的恢复路径。 +- **聊天输入与 Agent 展示更干净**:自定义 slash command 不再被 live update 覆盖;未发送草稿跨标签保留;多问题 AskUserQuestion 不串答案;选区添加至对话更贴近真实选区;Agent 背景进度回到 Agent 卡片内展示,完成结果优先展示可读报告,不再暴露原始 transport JSON。 - **集成和配置入口更友好**:飞书未配置状态直接展示创建入口和必要步骤;provider 空模型槽会在 UI 和服务端统一归一化,避免空 `ANTHROPIC_DEFAULT_*` 进入运行时。 ## 主要更新 @@ -21,8 +22,11 @@ - Windows x64 sidecar 构建恢复低指令集兼容路径,减少低配 Windows 机器启动失败风险。 - 桌面子进程启动时会合并用户 shell 环境,覆盖桌面 CLI 会话、scheduled task、MCP stdio 和 MCP preflight。 - 桌面更新检查支持系统代理和手动代理设置,且只作用于 app updater,不和 provider / model 代理混用。 -- `/goal` 完成态改为通过 Stop hook 和 local command transcript 持久化,桌面历史恢复、CLI 输出和 WebUI 能看到同一个完成结果。 +- 新增 `/goal` 目标管理入口,支持创建目标、跟踪当前目标状态,并把完成结果作为对话历史的一部分保留下来。 +- 桌面 `/goal` UI 将运行中的目标显示在紧凑 header strip,完成目标进入 conversation flow,避免目标状态占用过多聊天空间。 +- `/goal` 完成态通过 Stop hook 和 local command transcript 持久化,CLI、headless、桌面历史和 WebUI 能看到同一个完成结果。 - 新增本地 Web UI 启动脚本,自动避开被占用端口,并把实际 backend URL 传给 Vite 前端。 +- Agent / subagent 结果展示会保留终端侧 Markdown 报告;没有报告时,structured fallback 和 text-wrapped JSON 也会格式化成可读结果。 - 飞书设置未配置状态加入 OpenClaw 创建入口和两步配置提示,减少首次绑定卡住的问题。 ## 问题修复 @@ -34,8 +38,11 @@ - 修复 AskUserQuestion 多问题场景下,自定义输入和选项状态互相覆盖的问题。 - 修复“添加至对话”浮层按鼠标位置而不是真实选区定位,导致遮挡选中文本或残留多个浮层的问题。 - 修复 assistant turn 已完成但后台 bash / task 仍在运行时,桌面状态把后台工作隐藏的问题。 +- 修复 `/goal` 完成结果在刷新或恢复会话后不可见,以及运行中 / 已完成 goal 在桌面 UI 中重复占位的问题。 - 修复 worktree startup 的一次性状态文案泄漏到后续 Thinking / execution bubble 的问题。 - 修复 Agent tool 调用期间 local_agent / remote_agent 后台事件被渲染成独立 transcript 卡片,导致重复展示和内部类型外露的问题。 +- 修复 Agent 完成报告被 raw tool_result 覆盖,以及 structured fallback / text-wrapped JSON 在预览和结果弹窗里显示成原始 JSON 的问题。 +- 修复 Agent 分组结果标签格式化在严格 TypeScript 构建下的类型安全问题。 - 修复批量关闭 tab 时绕过运行中会话确认,可能静默放弃正在运行任务的问题。 - 修复通知插件 listener cleanup 丢失 `this` 上下文导致浏览器 shell 清理时报 unhandled rejection 的问题。 - 修复飞书 adapter 文件路径越界访问风险,并在解绑 / 删除会话时保持 adapter session mapping 清理。 @@ -45,16 +52,17 @@ ## 验证 - 相关提交已新增和更新 portable storage、Settings、terminal shell、update proxy、sidecar build、Tauri native 和 Cargo lock 相关测试。 +- 相关提交已新增和更新 `/goal` state、Stop hook、headless 命令、CLI transcript、desktop ActiveSession 和 WebSocket memory event 相关测试。 - 相关提交已新增和更新 shell environment、MCP preflight、scheduled task、conversation service、provider service 和 adapter coverage 相关测试。 -- 相关提交已新增和更新 session / worktree 恢复、sidebar recovery、slash commands、AskUserQuestion、ChatInput、MessageList、TabBar、Agent progress、desktop notification、Feishu settings 等回归测试。 -- 多个功能分支分别跑过 `bun run check:desktop`、`bun run check:server`、`bun run check:native`、`bun run check:coverage`、`bun run verify`、adapter coverage,以及针对 `/goal`、selection popover、portable storage、Feishu setup、本地 Web UI 启动脚本的定向验证。 +- 相关提交已新增和更新 session / worktree 恢复、sidebar recovery、slash commands、AskUserQuestion、ChatInput、MessageList、TabBar、Agent progress、Agent result formatting、desktop notification、Feishu settings 等回归测试。 +- 多个功能分支分别跑过 `bun run check:desktop`、`bun run check:server`、`bun run check:native`、`bun run check:coverage`、`bun run verify`、adapter coverage,以及真实 `/tmp` `/goal` CLI run、WebUI screenshot verification、selection popover、portable storage、Feishu setup、本地 Web UI 启动脚本的定向验证。 - 仍建议在正式发布前补充一次真实 Windows packaged app smoke、真实 Feishu 开发者账号流程,以及至少一次安装包级桌面聊天 / 设置 / 重启验收。 ## 其他说明 - GitHub Release 正文继续以 `release-notes/v0.2.8.md` 作为来源,发布时无需手动复制 Markdown。 - 本版本包含 storage / portable mode 和终端环境相关变化,升级后如遇到启动路径或配置目录异常,请优先保留诊断信息和当前 config directory 来源。 -- `/goal` 在本版本作为已恢复到可发布路径的桌面 / CLI 状态能力写入 release note;如果发布前决定继续隐藏,需要从本文件移除对应段落。 +- `/goal` 是本版本面向用户新增的重点能力;发布前需要优先做一轮真实桌面会话、CLI 使用和 transcript 恢复验收。 - Feishu 引导只是降低首次配置门槛,真实机器人创建、权限和菜单配置仍以飞书开发者控制台与项目文档为准。 ## 安装说明