mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-07-16 13:03:31 +08:00
8.6 KiB
8.6 KiB
Claude Code Haha v0.4.8
这是 v0.4.7 之后的桌面工作流、Provider 兼容性和安全加固版本,重点新增 Grok 官方 OAuth、Claude Code Auto 权限模式、内联 Diff 评审、对话导航和推理强度滑杆,同时修复 Windows 升级后数据目录丢失、断线重连后持续“思考”、受限端口启动失败和权限操作被遮挡等问题。
相比 v0.4.7,本版本让代码审阅、长对话定位和模型推理强度调整更直接;Windows 安装器会在升级前识别并保护旧安装目录中的用户数据,诊断与 Doctor 流程也补齐了脱敏、并发写入、损坏日志和安全修复边界。本地服务、H5 访问和远程预览进一步隔离,减少跨来源请求和预览页面获得桌面权限的风险。
Highlights
- Grok 官方登录:新增 xAI Grok 官方 OAuth 登录、token 刷新、动态模型目录和会话运行支持,内置 Grok 4.5 与 Composer 2.5 fallback,可直接在桌面端完成登录、选模和退出。
- Claude Code Auto 模式:权限选择器新增 Auto 模式,启用前会明确提示风险;运行时会审查工具调用和提示词注入,自动执行其认为安全的操作并阻止高风险操作。
- 内联 Diff 评审:工作台新增完整 Diff 审阅界面,支持语法高亮、旧/新行定位、单行或连续行评论,并把评论和代码引用带回聊天输入框。
- 对话与推理控制升级:长对话新增右侧导航目录;模型推理强度改为可拖动、可键盘操作的滑杆,并根据当前 Provider / 模型保留可用档位和会话选择。
- Windows 升级数据保护:NSIS 安装器会在卸载旧版本前识别、校验并恢复安装目录中的历史数据,避免服务商、会话、Skills、记忆或自定义数据目录随升级被移除。
- 桌面安全边界收紧:本地服务请求加入独立访问凭证,H5 / 反向代理流量与桌面可信流量分开判定;远程预览使用隔离 session,并默认拒绝摄像头、麦克风、通知等权限。
Fixes
- 修复 WebSocket 重连后遗留的 thinking 状态可能继续显示“已思考”并消耗 token 的问题 (#1002)。
- 修复 Markdown 预览或其他浮层可能遮挡权限操作按钮的问题,审批入口会保持可见 (#932)。
- 修复 Windows 等平台随机分配到浏览器受限端口后,桌面端或 H5 无法连接本地服务的问题 (#961)。
- 修复 Windows 升级可能删除安装目录内历史配置和会话数据的问题;恢复流程会校验来源、用户身份和复制结果,遇到歧义时停止安装而不是猜测迁移;没有旧目录数据的默认模式重装不会再被恢复保护误拦截 (#959, #973, #1000)。
- 修复 Auto 模式切换需要等待数秒、从跳过权限切换时可能触发额外重启,以及首次确认状态未正确保留的问题 (#978)。
- 修复 Diff 审阅中语法高亮、文件状态、行选择、折叠后选择失效和代码引用卡片丢失等问题,并让高亮效果更接近 Codex (#1004)。
- 修复长对话导航与输入框、消息内容和工作台面板之间的对齐、遮挡及窄窗口布局问题 (#782)。
- 修复推理强度弹层过大、选择未随会话恢复、切换模型后档位不匹配等问题 (#1007)。
- 修复诊断日志在并发写入、分段轮转或出现损坏记录时统计不准确、导出不稳定的问题;诊断包和 Issue 报告会尽力脱敏并限制内容范围。
- 修复 Doctor / runtime recovery 可能越过安全 UI 状态边界的问题;聊天历史、模型配置、Skills、MCP、IM 和 OAuth 等用户数据保持只读保护。
- 修复远程或带代理痕迹的请求可能被误判为本地可信请求,以及远程预览页面可能继承桌面 session 权限的问题。
Features and Improvements
- 新增 Grok 官方 Provider 设置页、浏览器 OAuth 回调与轮询、凭证安全存储、自动刷新、模型能力信息和 Provider 运行环境注入。
- Auto 模式贯通 CLI、桌面端、会话创建、WebSocket 恢复、权限分类器和持久化设置;活跃 turn 期间继续禁止切换权限,避免运行状态与界面选择不一致。
- 对话导航会从用户消息生成可扫描目录,支持快速跳转,并在靠近导航区域时提供更清楚的交互反馈。
- 工作台改为更紧凑的文件 / Diff 审阅布局,支持变更文件筛选、预览标签、文件状态、代码选择和评审评论引用。
- 推理强度滑杆支持鼠标拖动、点击选择、方向键、Home / End 和无障碍状态,并按不同模型暴露 low / medium / high 等实际支持档位。
- 诊断页新增更完整的保留策略、损坏记录提示、事件 ID、脱敏 Issue 报告、导出包和安全 UI 状态修复反馈。
- 合并社区安全加固 PR #1015,并继续补强 adapter、REST、WebSocket、Electron IPC 和 updater 的本地访问隔离测试。
- 发布 workflow 新增 Windows 历史数据恢复脚本自检,以及编译后安装器的全新安装 / 默认模式重装 smoke,确保安装包在发布前覆盖关键升级保护路径。
Issue 对照
- #782:新增长对话导航目录,并优化聊天区与输入框布局。
- #932:让权限操作在预览和浮层场景下保持可见。
- #959 / #973 / #1000:保护并恢复 Windows 旧安装目录中的用户数据。
- #961:避开浏览器会阻止访问的本地服务端口。
- #978:新增 Claude Code Auto 权限模式,并修复切换和确认流程。
- #1002:清理断线重连后遗留的 thinking 状态。
- #1004:新增并完善内联 Diff 评论与工作台审阅流程。
- #1007:新增推理强度滑杆,并恢复每个会话的实际选择。
Notes
- GitHub Release 正文继续以
release-notes/v0.4.8.md作为来源。 - 桌面端发布版本号来源是
desktop/package.json;rootpackage.json仍保留本地开发用的999.0.0-local。发布时需确保desktop/package.json、Git tagv0.4.8和release-notes/v0.4.8.md三者严格对齐。 - 正式发布时,
Release Desktopworkflow 会校验 tag 与desktop/package.json版本一致,并加载release-notes/v0.4.8.md。 - 自动更新依赖 GitHub Release 中完整的安装包、blockmap 和标准 updater metadata:
latest-mac.yml、latest.yml、latest-linux.yml、latest-linux-arm64.yml。 - macOS 正式公开发布需要签名和公证 secrets;缺失时只能保留 draft/测试产物。Windows 签名不是发布阻塞项,但未签名安装包会触发 SmartScreen 提示。
- H5 或反向代理访问仍需显式开启并配置 Token / CORS;桌面内置预览不会把本地访问凭证发送给非本地服务来源。
- 发布前建议至少跑
bun run scripts/release.ts 0.4.8 --dry和bun run check:impact;正式 tag 前再运行bun run verify,并执行一条v0.4.7 -> v0.4.8的真实自动更新 smoke,重点确认 Windows 用户数据完整保留。
安装
到本页面底部的 Assets 里,按系统和 CPU 架构下载对应文件:
| 平台 | 文件 |
|---|---|
| macOS Apple Silicon(M 系列) | Claude-Code-Haha-0.4.8-mac-arm64.dmg |
| macOS Intel | Claude-Code-Haha-0.4.8-mac-x64.dmg |
| Windows x64 | Claude-Code-Haha-0.4.8-win-x64.exe |
| Windows ARM64 | Claude-Code-Haha-0.4.8-win-arm64.exe |
| Linux x64 | Claude-Code-Haha-0.4.8-linux-x86_64.AppImage 或 Claude-Code-Haha-0.4.8-linux-amd64.deb |
| Linux ARM64 | Claude-Code-Haha-0.4.8-linux-arm64.AppImage 或 Claude-Code-Haha-0.4.8-linux-arm64.deb |
macOS
双击 DMG 把应用拖入“应用程序”。如果 macOS 签名和公证验证通过,首次打开应直接走正常 Gatekeeper 流程。
如果仍提示“已损坏”或“无法验证开发者”,说明当前产物可能仍是 unsigned fallback 或本地 quarantine 状态未清理,可在终端执行:
xattr -cr /Applications/Claude\ Code\ Haha.app
也可以在“系统设置 → 隐私与安全性”里点“仍要打开”。
Windows
双击 .exe 安装。SmartScreen 提示时点“更多信息”→“仍要运行”。安装器会在删除旧版本前检查需要恢复的数据;如果检测到仍在运行的旧版应用或无法安全判断的数据目录,会保留旧版本和原数据并提示处理后重试。如果提示安装器权限过高,请直接双击运行,不要使用“以管理员身份运行”。
Linux
AppImage:
chmod +x Claude-Code-Haha-0.4.8-linux-x86_64.AppImage
./Claude-Code-Haha-0.4.8-linux-x86_64.AppImage
deb:
sudo apt install ./Claude-Code-Haha-0.4.8-linux-amd64.deb
ARM64 机器把文件名换成 ...-linux-arm64.AppImage / ...-linux-arm64.deb。