mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-07-17 13:13:35 +08:00
Desktop sessions can run against different saved providers at the same time, so the runtime selection must remain scoped to the session from WebSocket startup through the CLI request path. This adds parallel-session regression coverage, a browser-driven fake-provider E2E, and refreshes idle connected sessions after provider saves so stale provider edits are reapplied without disturbing active turns. Constraint: Desktop provider credentials must stay session-scoped and must not leak across concurrent CLI child processes Rejected: Rely on provider test connectivity alone | it does not exercise the desktop WebSocket, session runtime, or CLI request path Confidence: high Scope-risk: moderate Directive: Do not change runtime selection persistence or provider env injection without rerunning the parallel provider browser E2E Tested: cd desktop && bun run test src/stores/providerStore.test.ts src/stores/chatStore.test.ts Tested: CLAUDE_CONFIG_DIR=/Users/nanmi/.claude bun test src/server/__tests__/conversations.test.ts --timeout 30000 Tested: desktop/scripts/e2e-parallel-providers-agent-browser.sh Tested: bun run quality:smoke --provider-model custom:main:custom-main --provider-model minimax:main:minimax-main Tested: cd desktop && bun run lint Tested: git diff --check Not-tested: bun run verify passes fully; coverage lane still fails on the existing agent-utils ratchet below baseline
Claude Code Haha Desktop
基于 Tauri 2 + React 的桌面客户端。
开发
bun install
bun run tauri dev
构建
# macOS (Apple Silicon)
./scripts/build-macos-arm64.sh
# Windows (x64, MSI only)
.\scripts\build-windows-x64.ps1
构建产物位于 build-artifacts/ 目录,文件名会显式包含平台、架构和包类型。
常见问题
macOS 提示"已损坏,无法打开"
xattr -cr /Applications/Claude\ Code\ Haha.app