11# Claude Code Haha v0.4.0
22
3- 这是一个以** 桌面端底层框架迁移** 为核心的大版本。相比 ` v0.3.2 ` ,本次最重要的变化是桌面端从 Tauri 2 迁移到 Electron:React/Vite 渲染层、本地 server/ sidecar、REST/WebSocket 业务协议继续保留,系统能力改由 Electron main/preload 和 ` desktopHost ` typed bridge 承载 。
3+ 这是一个以** 桌面端底层框架迁移** 为核心的大版本。桌面端已经从 Tauri 2 迁移到 Electron,内置浏览器、Workbench、终端、文件选择、系统通知、自动更新和 sidecar 进程管理都已经切到新的 Electron 桌面运行时 。
44
5- 这次迁移不是简单换壳。原先 Tauri 负责的自动更新、系统通知、文件选择、外链打开、窗口/托盘/菜单、PTY 终端、sidecar 进程、内置浏览器预览、应用模式和窗口状态持久化,都已经被重新映射到 Electron 运行时,并补了对应的 IPC、安全和 package-smoke 验证 。
5+ 对用户来说,这次迁移的目标是让桌面端在 macOS、Windows 和 Linux 上有更一致的渲染效果和系统交互能力。因为 Electron 自带 Chromium runtime,安装包体积会比过去的 Tauri 版本更大,这是本次迁移后的正常变化 。
66
7- ## Highlights
7+ ## 重要更新
88
9- - ** 桌面底层迁移到 Electron** :新增 Electron main/preload/preview-preload,以及 sidecar、updater、notification、dialog、shell、window、tray、menu、terminal、preview、app mode、zoom 等主进程服务。
10- - ** 保留业务边界,降低迁移风险** :前端继续使用现有 Zustand store、HTTP API 和 WebSocket 流式协议;不会把会话、聊天、workspace、team 等业务协议改成 Electron IPC。
11- - ** 跨平台打包链路切换为 electron-builder** :macOS 产出 DMG/ZIP,Windows 产出 NSIS 安装器,Linux 同时产出 AppImage 和 deb;release workflow 会校验完整资产和 update metadata。
12- - ** Electron updater 元数据重建** :从 Tauri 的 ` latest.json ` 迁移到 Electron 的 ` latest-mac.yml ` 、` latest.yml ` 、` latest-linux.yml ` 、` latest-linux-arm64.yml ` ;macOS 会合并 x64/arm64 update metadata。
13- - ** 打包结构验证加强** :新增 package-smoke 检查,覆盖 ` app.asar ` 、sidecar、` node-pty ` 、update metadata、blockmap 和 canonical release artifact set,避免缺资源的包被上传或发布。
14- - ** 桌面安全边界重建** :renderer 不暴露 Node/Electron 原始 API;preload 只暴露固定 ` desktopHost ` contract;IPC channel 和 payload 走 allowlist;外链、本地路径、预览消息和导航都有守卫。
15- - ** 系统交互稳定性修复** :修复 Windows PowerShell 选择未传给 agent sidecar、退出时 sidecar 残留、macOS 外接屏菜单栏异常、窗口拖拽区域、sidebar/titlebar 交互和 Windows AppUserModelID。
16- - ** Workbench 和聊天体验继续打磨** :agent slash 走正常聊天链路并流式展示进度,选择气泡更稳定,会话标题按用户语言生成,thinking summary 支持 Markdown 且默认收起。
17- - ** Provider 与输入兼容性改进** :MiniMax preset 升级到 MiniMax-M3,并使用 provider context window 估算;恢复大图和常见长截图读取;桌面 stale auth/socket 会自动恢复。
18- - ** 发布质量治理收口** :恢复 quarantine quality gates,pre-push 改为非阻塞提示,server 测试避免固定端口冲突,Linux deb metadata 和 Linux package-smoke artifact 匹配已修复。
9+ - ** 桌面底层切换到 Electron** :内置浏览器、Workbench 预览、终端、通知、托盘、菜单、窗口状态和自动更新都迁移到新的桌面运行时。
10+ - ** 跨平台安装包更新** :macOS 提供 DMG,Windows 提供安装器,Linux 提供 AppImage 和 deb。
11+ - ** 内置浏览器和 Workbench 更稳定** :预览、截图、网页选择和本地文件打开链路继续保留,并适配新的 Electron 桌面壳。
12+ - ** Agent 指令体验继续打磨** :agent slash 现在走正常聊天链路并流式展示进度,选择气泡更稳定,会话标题会按用户语言生成。
13+ - ** 上下文和图片输入兼容性改进** :恢复大图和常见长截图读取,provider context window 估算更准确。
14+ - ** Provider 更新** :MiniMax preset 升级到 MiniMax-M3。
15+ - ** 桌面稳定性修复** :修复 Windows PowerShell 选择、退出时 sidecar 残留、macOS 外接屏菜单栏异常、窗口拖拽区域和 sidebar/titlebar 交互问题。
1916
20- ## 底层框架迁移说明
17+ ## 框架迁移说明
2118
22- ` v0.4.0 ` 是第一个 Electron 桌面版本。迁移前桌面端基于 Tauri 2 和系统 WebView;迁移后桌面端使用 Electron/Chromium,宿主能力由 Electron main process 管理,renderer 通过 preload 暴露的 typed bridge 调用 。
19+ ` v0.4.0 ` 是第一个 Electron 桌面版本。旧版 Tauri 桌面端使用系统 WebView,新版 Electron 桌面端使用 Chromium,因此滚动、预览和内置浏览器行为会更接近统一的桌面浏览器体验 。
2320
24- 这带来几个用户能感知到的变化:
21+ 从旧 Tauri 版本升级到第一个 Electron 版本时,推荐手动下载安装 ` v0.4.0 ` ,把它作为后续 Electron 自更新的基线。直接替换 ` /Applications/Claude Code Haha.app ` 不会删除 ` ~/.claude ` 、 ` ~/.claude/cc-haha ` 或用户选择的便携数据目录。
2522
26- - 安装包体积会比 Tauri 版本明显变大,这是 Electron 自带 Chromium runtime 的正常结果。
27- - macOS release assets 里会同时出现 ` .dmg ` 和 ` .zip ` 。普通用户手动安装只需要 DMG;ZIP、blockmap 和 ` latest-mac.yml ` 是 Electron auto-update 需要的发布资产,不应该从 GitHub Release 里删除。
28- - 旧 Tauri 版本的自动更新 feed 是 ` latest.json ` ,Electron 版本使用 ` latest*.yml ` 。因此从旧 Tauri 版本升级到第一个 Electron 版本时,推荐手动下载安装 ` v0.4.0 ` ,把它作为后续 Electron 自更新的基线。
29- - 应用 bundle id 仍保持 ` com.claude-code-haha.desktop ` 。直接替换 ` /Applications/Claude Code Haha.app ` 不会删除 ` ~/.claude ` 、` ~/.claude/cc-haha ` 或用户选择的便携数据目录;少量窗口/UI 本地状态可能会按 Electron 首次运行重新生成。
23+ macOS Release 里会同时出现 ` .dmg ` 和 ` .zip ` 。普通用户手动安装只需要 DMG;ZIP、blockmap 和 ` latest-mac.yml ` 是后续自动更新需要的文件。
3024
31- ## 下载安装
25+ ## 下载
3226
3327前往 GitHub Release 下载对应系统和架构的文件:
3428
4034| Linux x64 | ` Claude-Code-Haha-0.4.0-linux-x86_64.AppImage ` 或 ` Claude-Code-Haha-0.4.0-linux-amd64.deb ` |
4135| Linux ARM64 | ` Claude-Code-Haha-0.4.0-linux-arm64.AppImage ` 或 ` Claude-Code-Haha-0.4.0-linux-arm64.deb ` |
4236
43- ### Windows
37+ ## Windows
4438
4539下载 ` Claude-Code-Haha-0.4.0-win-x64.exe ` 后双击安装。如果 Windows SmartScreen 提示未知发布者,选择"更多信息"再选择"仍要运行"。
4640
47- ### Linux
41+ ## Linux
4842
4943AppImage:
5044
@@ -61,21 +55,10 @@ sudo apt install ./Claude-Code-Haha-0.4.0-linux-amd64.deb
6155
6256ARM64 Linux 对应把文件名替换为 ` Claude-Code-Haha-0.4.0-linux-arm64.AppImage ` 或 ` Claude-Code-Haha-0.4.0-linux-arm64.deb ` 。
6357
64- ### macOS
58+ ## macOS
6559
66- 正式签名并公证的 DMG: 下载与你 Mac 架构匹配的 DMG,打开后把 ` Claude Code Haha.app ` 拖到 ` Applications ` ,再从 ` Applications ` 打开。
60+ 如果 DMG 已完成签名和公证, 下载与你 Mac 架构匹配的 DMG,打开后把 ` Claude Code Haha.app ` 拖到 ` Applications ` ,再从 ` Applications ` 打开。
6761
68- 如果本次 0.4.0 因 Apple Developer ID 还未准备好,只能先发布未签名构建, macOS 可能提示 DMG "已损坏"或"无法验证开发者"。这种情况下请下载同一个 Release 里的 ` install-macos-unsigned.sh ` ,和 DMG 放在同一目录后运行文末命令 。M 系列和 Intel 都用同一个脚本;脚本会自动选择同目录里匹配当前机器架构的 DMG,也可以手动传入 DMG 路径 。
62+ 如果本次 0.4.0 因 Apple ID 和签名还没准备好, macOS 可能提示 DMG "已损坏"或"无法验证开发者"。这种情况下请下载同一个 Release 里的 ` install-macos-unsigned.sh ` ,和 DMG 放在同一目录后运行下面这条命令 。M 系列和 Intel 都用同一个脚本;脚本会自动选择同目录里匹配当前机器架构的 DMG。
6963
70- ## 发布者备注
71-
72- - GitHub Release 正文继续以 ` release-notes/v0.4.0.md ` 作为来源。
73- - 发布前请确认 ` desktop/package.json ` 版本、tag ` v0.4.0 ` 和本文件名完全一致。
74- - 如果 macOS Developer ID / notarization secrets 已配置,release workflow 会额外跑 Gatekeeper 验证;如果暂时没有 Apple ID,本版本会以 unsigned macOS 构建发布,并依赖 ` install-macos-unsigned.sh ` 完成首次安装。
75- - 不要只上传 DMG 后删除 ZIP、blockmap 或 ` latest*.yml ` 。DMG 是手动安装入口,ZIP 和 metadata 是 Electron auto-update 链路需要的资产。
76-
77- macOS 未签名构建安装命令:
78-
79- ``` bash
80- bash ~ /Downloads/install-macos-unsigned.sh
81- ```
64+ macOS 未签名构建安装命令:` bash ~/Downloads/install-macos-unsigned.sh `
0 commit comments