mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-07-15 12:53:31 +08:00
release: v0.4.4
Tested: bun run scripts/release.ts 0.4.4 --dry Tested: bun run verify (artifacts/quality-runs/2026-07-01T12-34-24-275Z/report.md) Confidence: high Scope-risk: broad
This commit is contained in:
parent
c14a4ffe67
commit
183c8bbffd
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "claude-code-desktop",
|
||||
"private": true,
|
||||
"version": "0.4.3",
|
||||
"version": "0.4.4",
|
||||
"description": "Desktop coding agent workbench for Claude Code Haha.",
|
||||
"homepage": "https://github.com/NanmiCoder/cc-haha",
|
||||
"author": {
|
||||
|
||||
133
release-notes/v0.4.4.md
Normal file
133
release-notes/v0.4.4.md
Normal file
@ -0,0 +1,133 @@
|
||||
# Claude Code Haha v0.4.4
|
||||
|
||||
这是 `v0.4.3` 之后的稳定性和桌面体验补丁版本,重点修复后台任务、Goal 续跑、预热启动、provider/proxy、Trace、设置隐私、浏览器预览和 Windows 窗口行为中的真实使用问题。
|
||||
|
||||
相比 `v0.4.3`,本版本让后台 Agent 任务在前台回答结束后仍可见,减少任务通知回灌到模型或桌面 transcript 的噪音;同时修复 session 预热竞争、历史会话误预热、CLI-only provider proxy、loopback proxy、MCP secret 展示、Trace 删除和 provider 预设更新等问题。
|
||||
|
||||
## Highlights
|
||||
|
||||
- **后台任务和 Goal 续跑更可靠**:后台任务在前台 turn 完成后继续显示,并进入更清晰的 background task drawer;Goal 自动续跑会插入可见分隔标记,避免多个 assistant turn 混在一起;task-notification-only follow-up 不再污染桌面 transcript。
|
||||
- **启动、预热和会话刷新更稳**:修复 `prewarm_session` 与 `user_message` 几乎同时到达时 idle timer 杀掉活跃 CLI 的竞争;查看历史会话不会触发预热;Electron sidecar 会等 `/health` 真正可用后再继续;session list summary 加缓存,降低大历史列表刷新超时概率。
|
||||
- **Provider/proxy 链路更兼容**:CLI-only OpenAI-compatible provider 会启动轻量 standalone provider proxy,不再依赖固定 localhost server;loopback provider target 会绕过系统代理和 Bun proxy fetch options;provider connectivity check 覆盖 IPv4/IPv6 loopback;直连 provider trace 会正确记录脱敏 headers。
|
||||
- **桌面工作流细节补齐**:Settings tab、provider 表单保存、空会话 composer draft、active turn 计时、cache token usage、长标题 tooltip、手动刷新按钮、浏览器预览导航和 preview-agent edit bubble 都更稳定。
|
||||
- **设置和诊断更安全**:MCP 设置页会遮蔽敏感 command args、env 和 headers,同时保存时保留原始值;MCP server name 支持 Unicode 字母和数字;Trace 列表新增本地 trace session 删除,并明确不会删除聊天历史。
|
||||
|
||||
## Fixes
|
||||
|
||||
- 修复 session 预热 idle timer 在 CLI 启动盲窗内杀掉活跃用户 turn,导致桌面一直卡在“执行中”的问题 (#865)。
|
||||
- 修复查看历史 transcript 时误触发 CLI prewarm,只加载历史不再启动新 CLI (#880)。
|
||||
- 修复首次 onboarding 期间启动前预检 Anthropic/OAuth endpoint,导致未登录或未发起模型请求前就访问外部服务的问题 (#859)。
|
||||
- 修复停止或中断后可能出现 `API Error: Stream ended without receiving any events` 的处理路径。
|
||||
- 修复 scheduled task 超时、scheduled subprocess 权限参数、title generation auth、并行 tool card settlement 的一组问题 (#809, #846, #847, #854, #889)。
|
||||
- 修复 provider 表单保存中的取消/重复提交竞态、Settings tab 返回后丢失,以及切换项目时空会话 composer draft 丢失 (#810, #811, #871)。
|
||||
- 修复同一 session 打开新的 native browser preview target 时 WebContentsView 停留在旧文件,以及 preview-agent edit bubble 在低位置选区时超出视口的问题 (#819, #879)。
|
||||
- 修复 active turn duration 计时丢失、完成后轻量 duration 行显示不稳定,以及 queued follow-up 与完成状态行位置冲突的问题 (#813, #853)。
|
||||
- 修复 CLI-only OpenAI-compatible desktop provider 依赖固定本地 server proxy 的问题,并修复代理环境下 loopback provider target/connectivity check 被错误走代理的问题 (#845, #896)。
|
||||
- 修复后台 sync Agent 工具活动没有走统一 parent-tagged 事件、incomplete tool-use stream 缺少 fallback,以及结构化本地 Agent terminal notification 回灌模型的问题 (#870, #884, #886)。
|
||||
- 修复 EnterPlanMode 暴露模型内部指令、ExitPlanMode rejected tool card 显示空计划卡,以及 Windows frameless 窗口首次显示后拖拽命中区不刷新的问题 (#869, #874)。
|
||||
- 修复桌面 session 列表手动刷新可能被后台 pending fetch 长时间禁用或显示 spinner 的问题 (#893)。
|
||||
- 修复粘贴图片 FileReader 延迟回调在发送或切换 session 后重新污染输入框的问题 (#827)。
|
||||
- 修复 Electron sidecar 只等 TCP accept、不等 HTTP `/health` ok 就继续启动的问题 (#857)。
|
||||
- 修复 OpenAI-compatible sampling params 默认透传过多,以及 GLM-5.2 context metadata 缺失的问题 (#860)。
|
||||
- 修复长 sidebar title 没有完整 tooltip 的问题 (#885)。
|
||||
- 修复 MCP server name 只能使用 ASCII 名称的问题,现在支持 Unicode 字母和数字,同时继续拒绝空格和分隔符。
|
||||
- 修复 MCP 设置页可见 UI/input 中泄露敏感 args、env 和 headers 的问题。
|
||||
- 修复 direct provider trace 从 `Request` input 传入 headers 时没有持久化脱敏 headers 的问题 (#836)。
|
||||
- 修复 live session header 没有计入 cache read/write tokens 的问题 (#842)。
|
||||
- 修复 Goal hook evaluator 抛错时被当作非阻塞 hook error,导致 goal loop 提前停下的问题。
|
||||
- 修复 Goal hook 的 `preventContinuation` 和 `blockingError` 分开返回时被误判为普通停止,导致 goal 中途停止的问题 (#895)。
|
||||
- 修复 Goal continuation turn 在 session history 和桌面恢复中没有明确视觉分隔的问题 (#901)。
|
||||
- 修复国内 provider 预设、model context window 和 thinking capability 声明落后的问题。
|
||||
|
||||
## Features and Improvements
|
||||
|
||||
- Trace 列表新增删除入口,支持幂等删除本地 trace JSONL,并清理 trace read cache;确认弹窗会说明聊天历史不会被删除 (#868)。
|
||||
- 背景任务展示升级为官方风格 background task drawer,前台完成后仍保留任务进度,恢复后的 Agent 不会因为清理旧完成项而消失。
|
||||
- Goal 自动续跑新增 `Goal continuing` 本地命令分隔标记,并贯穿 server events、session history 和 desktop history restore。
|
||||
- Provider settings JSON 导入支持 cc-switch 风格模型配置:从 `ANTHROPIC_MODEL` 或 Sonnet fallback 推导 main model,把 `*_MODEL_NAME` 作为显示标签处理。
|
||||
- Provider 预设更新国内模型和 context window 声明,补齐相关 runtime/env、thinking 和 conversation-service 测试覆盖。
|
||||
- Session list summary 按 JSONL 文件 mtime/size 缓存,降低大历史目录下 `/api/sessions?limit=400` 的重复扫描成本 (#894)。
|
||||
|
||||
## Issue 对照
|
||||
|
||||
- #809 / #846:修复 scheduled task timeout 配置和调度启动行为。
|
||||
- #810:修复 provider 表单保存过程中的取消和重复提交问题。
|
||||
- #811:修复 Settings tab 返回后丢失当前页签。
|
||||
- #813 / #853:修复 active turn duration 和完成状态展示。
|
||||
- #819 / #879:修复 native browser preview 导航和 preview-agent edit bubble 位置。
|
||||
- #827:修复发送后延迟粘贴图片回到 composer。
|
||||
- #836:修复 OpenAI proxy/direct provider trace request headers 记录。
|
||||
- #842:修复 live session cache token usage 展示。
|
||||
- #845:修复 CLI-only OpenAI-compatible provider proxy。
|
||||
- #847:修复 scheduled task subprocess 权限参数。
|
||||
- #854:修复 title generation auth strategy。
|
||||
- #857:修复 Electron sidecar readiness 判断。
|
||||
- #859:修复 onboarding 前 Anthropic/OAuth preflight。
|
||||
- #860:修复 OpenAI-compatible sampling params 和 GLM-5.2 context metadata。
|
||||
- #865:修复 prewarm idle timer 与 user message 竞争。
|
||||
- #868:新增 Trace session 删除。
|
||||
- #869:优化 plan mode 桌面展示,并隐藏空 rejected plan preview。
|
||||
- #870 / #884 / #886:修复后台 Agent continuation、stream fallback 和任务通知回灌。
|
||||
- #871:修复空会话 composer draft 在项目切换后丢失。
|
||||
- #874:修复 Windows frameless 窗口拖拽命中区。
|
||||
- #880:修复查看历史会话误预热。
|
||||
- #885:修复长 session title 缺少完整 tooltip。
|
||||
- #889:修复 unresolved parallel tool card settlement。
|
||||
- #893:修复 session list 手动刷新按钮卡住。
|
||||
- #894:缓存 session list summaries,降低刷新超时风险。
|
||||
- #895:修复 Goal 中途停止。
|
||||
- #896:修复 loopback provider proxy bypass 和 provider connectivity check。
|
||||
- #901:Goal continuation turn 增加桌面可见分隔。
|
||||
|
||||
## Notes
|
||||
|
||||
- GitHub Release 正文继续以 `release-notes/v0.4.4.md` 作为来源。
|
||||
- 桌面端发布版本号来源是 `desktop/package.json`;root `package.json` 仍保留本地开发用的 `999.0.0-local`。发布时需确保 `desktop/package.json`、Git tag `v0.4.4` 和 `release-notes/v0.4.4.md` 三者严格对齐。
|
||||
- 本版本覆盖 desktop、server、provider/runtime、agent-loop 和 native 多个表面;发布前建议至少跑 `bun run scripts/release.ts 0.4.4 --dry` 和 `bun run verify`,并在有真实 provider 配额时跑 `bun run quality:gate --mode release --allow-live --provider-model <provider:model[:label]>`。
|
||||
- 建议发布前额外 smoke:后台 Agent task drawer、Goal 自动续跑、task notification 输出抑制、历史会话打开、空会话切项目、provider connectivity check、loopback provider、Trace 删除、MCP secrets redaction、native browser preview、Windows frameless 拖拽、macOS 签名 DMG 首次打开和自动更新 metadata。
|
||||
- 如果需要先验证全平台签名/公证产物,可以手动触发 `Release Desktop` workflow 并保持 `draft=true`;正式发布仍以 `v0.4.4` tag 对应提交和 GitHub Actions 产物为准。
|
||||
|
||||
## 安装
|
||||
|
||||
到本页面底部的 Assets 里,按系统和 CPU 架构下载对应文件:
|
||||
|
||||
| 平台 | 文件 |
|
||||
|------|------|
|
||||
| macOS Apple Silicon(M 系列) | `Claude-Code-Haha-0.4.4-mac-arm64.dmg` |
|
||||
| macOS Intel | `Claude-Code-Haha-0.4.4-mac-x64.dmg` |
|
||||
| Windows x64 | `Claude-Code-Haha-0.4.4-win-x64.exe` |
|
||||
| Linux x64 | `Claude-Code-Haha-0.4.4-linux-x86_64.AppImage` 或 `Claude-Code-Haha-0.4.4-linux-amd64.deb` |
|
||||
| Linux ARM64 | `Claude-Code-Haha-0.4.4-linux-arm64.AppImage` 或 `Claude-Code-Haha-0.4.4-linux-arm64.deb` |
|
||||
|
||||
### macOS
|
||||
|
||||
双击 DMG 把应用拖入「应用程序」。如果 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.4-linux-x86_64.AppImage
|
||||
./Claude-Code-Haha-0.4.4-linux-x86_64.AppImage
|
||||
```
|
||||
|
||||
deb:
|
||||
|
||||
```bash
|
||||
sudo apt install ./Claude-Code-Haha-0.4.4-linux-amd64.deb
|
||||
```
|
||||
|
||||
ARM64 机器把文件名换成 `...-linux-arm64.AppImage` / `...-linux-arm64.deb`。
|
||||
Loading…
x
Reference in New Issue
Block a user