Claude Code Haha v0.4.3
这是 v0.4.2 之后的桌面体验、provider/runtime、agent-loop 和 release 签名验证补丁版本,重点修复真实使用中暴露出来的上下文窗口声明、流式请求稳定性、后台 subagent 活动展示、工作区预览、会话搜索和终端快捷键问题。
相比 v0.4.2,本版本新增全局会话全文搜索、Workbench 面板 tab 化、终端剪贴板快捷键开关,并补齐 macOS Developer ID 签名/公证发布链路。0.4.3 建议先通过 GitHub Actions 的 Draft Release 路径生成全平台产物,用于验证新增 macOS 签名和 Gatekeeper 行为,再决定是否正式公开发布。
Highlights
- macOS 签名发布链路进入验证阶段:正式 release workflow 会预检 macOS 证书、Apple ID、app-specific password 和 Team ID;secrets 完整时构建签名/公证的 DMG/ZIP,并额外跑 Gatekeeper package-smoke。手动触发 workflow 时
draft默认开启,适合先生成草稿 release 和全平台 assets。 - Provider/runtime 上下文声明更准确:provider 设置支持 1M context 声明和自定义 context window,Anthropic providers 默认带上 Tool Search 能力,新会话会优先使用 provider 的主模型,减少模型能力和 UI 状态不一致。
- 流式请求更稳:首 token 等待会尊重请求超时,整体 stream 会限制 free-trickling provider 的最长持续时间;中途遇到可恢复的 transient tool-call 错误会重试,而不是直接让本轮失败。
- 桌面工作流更顺手:新增全局 session 全文搜索,Workbench 面板可扩展为 tabs;终端设置支持剪贴板快捷键,工具写入/编辑进度、pending JSON 输入、workspace diff preview 和输出卡片链接也更可靠。
- 后台 agent 和聊天恢复更完整:后台 subagent 工具活动会流式同步到桌面;重开会话后恢复 token usage,恢复历史时隐藏 slash-command breadcrumb,打断后 pending tool spinner 会正确停止。
Fixes
- 修复 provider 设置无法声明 1M context、server 侧没有正确透传 provider context window 的问题 (#814, [#830])。
- 修复 Anthropic providers 没有默认启用 Tool Search 能力,导致相关工具能力声明缺失的问题 (#823)。
- 修复新建会话没有优先使用 provider 主模型的问题 (#818)。
- 修复重开会话后 token usage 丢失,以及恢复历史会话时 slash-command breadcrumb 泄漏到聊天气泡的问题 (#820, [#833])。
- 修复后台 subagent 的工具活动不会实时流到桌面的问题,桌面现在能看到后台 agent 的工具进展 (#829)。
- 修复慢速或异常 provider 的流式边界:首 token 等待、整体 stream 时长和 transient mid-stream tool-call 错误都会按更明确的规则处理 (#766, [#826])。
- 修复回答进行中手动滚动时 MessageList 仍被 thinking/autoscroll 拉回底部的问题 (#727)。
- 修复 Memory 空状态和工具 autoscroll 状态处理不完整的问题 (#728, [#729])。
- 修复 pending tool JSON 输入不换行、工具写入/编辑进度不可见,以及 interrupt 后 pending spinner 不停止的问题 (#703, [#707], [#712], [#751])。
- 修复 workspace diff preview 不能按最新工作区状态刷新、预览时 workspace navigator 不自动收起的问题 (#706, [#709], [#724])。
- 修复输出卡片中的 log 链接被当成可打开目标,导致跳转到不该跳转位置的问题 (#714)。
- 修复 docked terminal 尺寸不稳定,以及终端复制/粘贴快捷键缺少桌面 host 能力开关的问题 (#708, [#837])。
- 修复 release workflow 和 update metadata 合并链路,支持签名 Electron release 更新,并补齐标准 update metadata 校验。
Features and Improvements
- 新增全局会话全文搜索入口,可搜索历史 sessions、消息内容和相关 metadata,并从侧边栏快捷打开结果。
- Workbench 面板支持 tab 化展示,workspace、terminal 等面板可以在更宽的工作区布局中展开使用 (#730)。
- 终端设置新增剪贴板快捷键配置,Electron host 暴露对应 capability,减少跨平台终端复制/粘贴冲突 (#837)。
- Provider 设置页补齐 context window、Tool Search 默认值和主模型选择相关 UI、类型和持久化行为 (#814, [#818], [#823], [#830])。
- Release 文档新增桌面安装和自动更新说明;release workflow 会校验完整 assets、标准 update metadata,并支持签名 macOS 构建的 Gatekeeper 检查。
Issue 对照
- [#703]:修复 interrupt 后 pending tool spinner 不停止。
- [#706] / [#709]:修复预览时 workspace navigator 展示和收起逻辑。
- [#707] / [#751]:新增工具写入/编辑进度展示。
- [#708]:修复 docked terminal 尺寸。
- [#712]:修复 pending tool JSON 输入换行。
- [#714]:修复输出卡片 log link 路由。
- [#724]:修复 workspace diff preview 刷新。
- [#727]:修复 thinking 状态下手动滚动被打断。
- [#728] / [#729]:修复 Memory 空状态和工具 autoscroll。
- [#730]:Workbench 面板扩展为 tabs。
- [#766]:修复 free-trickling provider stream 持续时间边界。
- [#814]:支持 1M provider context 声明。
- [#818]:新会话默认使用 provider 主模型。
- [#820]:恢复会话 token usage。
- [#823]:Anthropic providers 默认启用 Tool Search。
- [#826]:首 token 等待尊重请求超时。
- [#829]:后台 subagent 工具活动流式同步到桌面。
- [#830]:尊重自定义 provider context window。
- [#833]:恢复历史时隐藏 slash-command breadcrumbs。
- [#837]:支持终端剪贴板快捷键配置。
Notes
- GitHub Release 正文继续以
release-notes/v0.4.3.md作为来源。 - 桌面端发布版本号来源是
desktop/package.json;rootpackage.json仍保留本地开发用的999.0.0-local。发布时需确保desktop/package.json、GitHub Release tagv0.4.3和release-notes/v0.4.3.md三者严格对齐。 - 本次建议先走草稿发布:把 0.4.3 版本提交推到
main后,手动触发Release Desktopworkflow,并保持draft=true;不要先用git push origin main --tags走公开 tag release 路径。 - 草稿 workflow 会先构建 macOS ARM64、macOS x64、Windows x64、Linux x64、Linux ARM64 全平台产物,再创建 Draft Release。确认 macOS 签名、公证、Gatekeeper smoke 和自动更新 metadata 后,再决定是否公开 release。
- 发布前建议至少跑
bun run scripts/release.ts 0.4.3 --dry和bun run verify;如果 provider credentials/quota 可用,再跑bun run quality:gate --mode release --allow-live --provider-model <provider:model[:label]>。 - 本版本覆盖 release、native、desktop、server、provider/runtime 和 agent-loop 多个表面;建议额外 smoke:macOS 签名 DMG 首次打开、自动更新 metadata、全局搜索、Workbench tabs、provider context window、Tool Search 默认值、后台 subagent 工具活动、终端快捷键、慢 provider stream。
安装
到本页面底部的 Assets 里,按系统和 CPU 架构下载对应文件:
| 平台 | 文件 |
|---|---|
| macOS Apple Silicon(M 系列) | Claude-Code-Haha-0.4.3-mac-arm64.dmg |
| macOS Intel | Claude-Code-Haha-0.4.3-mac-x64.dmg |
| Windows x64 | Claude-Code-Haha-0.4.3-win-x64.exe |
| Linux x64 | Claude-Code-Haha-0.4.3-linux-x86_64.AppImage 或 Claude-Code-Haha-0.4.3-linux-amd64.deb |
| Linux ARM64 | Claude-Code-Haha-0.4.3-linux-arm64.AppImage 或 Claude-Code-Haha-0.4.3-linux-arm64.deb |
macOS
双击 DMG 把应用拖入「应用程序」。如果本次 Draft Release 的 macOS 签名和公证验证通过,首次打开应直接走正常 Gatekeeper 流程。
如果仍提示"已损坏"或"无法验证开发者",说明当前产物可能仍是 unsigned fallback 或本地 quarantine 状态未清理,可在终端执行:
:::bash
xattr -cr /Applications/Claude\ Code\ Haha.app
也可以在「系统设置 → 隐私与安全性」里点"仍要打开"。
Windows
双击 .exe 安装。SmartScreen 提示时点「更多信息」→「仍要运行」。
Linux
AppImage:
:::bash
chmod +x Claude-Code-Haha-0.4.3-linux-x86_64.AppImage
./Claude-Code-Haha-0.4.3-linux-x86_64.AppImage
deb:
:::bash
sudo apt install ./Claude-Code-Haha-0.4.3-linux-amd64.deb
ARM64 机器把文件名换成 ...-linux-arm64.AppImage / ...-linux-arm64.deb。