cc-haha 是一个围绕 Claude Code 工作流改造出来的项目。它的完整仓库名是 NanmiCoder/cc-haha,项目页面写得很直接:它基于 2026-03-31 从 Anthropic npm registry 泄露的 Claude Code 源码修复而来,现在主要形态是一个桌面端 Claude Code 工作台。
项目地址:https://github.com/NanmiCoder/cc-haha
这句话里有两个重点。
第一,它不是 Anthropic 官方 Claude Code。项目 README 也明确写了原始源码版权归 Anthropic 所有,仅供学习和研究用途。
第二,它现在的重点已经不只是“本地跑一个 Claude Code CLI”。从 README 和最新 release 看,cc-haha 更像一个把 Claude Code 的会话、项目、权限、Diff、Computer Use、远程访问和模型提供商配置集中起来的桌面应用。
它想解决什么问题
Claude Code 原本是偏终端的工具。会话、命令执行、权限确认、文件修改、上下文切换都在终端里完成。对熟悉 CLI 的人来说没问题,但长期使用时会遇到几个不方便的地方:
- 多个项目和多个会话不好同时管理。
- AI 改了哪些文件,需要自己切到 Git 或编辑器里看。
- 权限审批、命令执行、文件 Diff 分散在不同界面。
- 想在手机或其他设备上远程看当前会话,需要额外方案。
- 想接入非 Anthropic 模型,需要自己处理协议兼容。
cc-haha 的方向就是把这些东西做成一个图形化工作台。它并不是只给 Claude Code 换皮,而是把“会话管理”和“本地开发流程控制”放到了桌面端里。
桌面端工作台:从终端变成控制台
根据 README,cc-haha 桌面端把这些能力集中到 macOS / Windows App 里:
- 多会话工作台:用标签页、项目切换、终端入口和历史记录管理不同任务。
- 分支 / Worktree 启动:新会话可以选择仓库分支,也可以选择使用当前工作树或隔离 Worktree。
- 右侧代码改动面板:聊天时直接查看修改过的文件、增删行和工作区状态。
- 代码修改可视化:查看 AI 对文件的编辑、Diff 和执行过程。
- 权限与确认流:把危险命令、工具调用和 AI 反问集中到桌面端审批。
- 多模型提供商:支持 Anthropic 兼容 API、第三方模型、WebSearch fallback 和本地配置。
- H5 远程访问:用一次性 token 在手机或其他设备上接入当前桌面会话。
- IM 接入:通过 Telegram、飞书、微信、钉钉远程对话、切换项目和审批权限。
- 定时任务与 token 用量统计:在桌面端创建计划任务,并查看本机 token 使用趋势。
这类功能说明它更接近“AI 编程工作台”,而不是单纯的命令行替代品。它想把 AI 写代码时最常见的几个界面放到同一个地方:聊天、文件改动、权限、项目、远程入口、模型配置。
安装和启动方式
普通用户更适合从 Releases 下载桌面端安装包。
项目 README 给出的桌面端安装流程是:
- 前往 GitHub Releases 下载 macOS 或 Windows 安装包。
- 首次启动后,在桌面端设置里配置模型提供商、API Key 和默认模型。
- 如果 macOS 提示应用无法打开,按安装指南处理 Gatekeeper 权限。
最新 release 页面显示,v0.2.6 发布于 2026-05-13。这个版本主要围绕 H5 手机访问安全恢复、桌面会话管理、文件提及搜索和桌面体验细节。
如果想从源码启动 CLI,README 给出的命令是:
|
|
这个路径更适合想调试底层 CLI、服务端或自行开发的人。普通使用还是桌面端更直接。
v0.2.6 更新了什么
v0.2.6 的重点是把 H5/LAN 访问从临时放行收回到显式开启和 token 配对模型。
几个值得注意的变化:
- H5/LAN 访问需要本地显式开启。
- QR 链接会携带一次性显示的 token。
- 远程 API、proxy 和 WebSocket 不再裸露。
- Settings 新增独立 H5 Access 页面。
- 桌面侧边栏增加批量管理模式,支持多选和删除会话。
- 桌面文件提及搜索改为 git-first,遵守 ignore 规则,减少
node_modules和构建产物噪声。 - 新增纯白主题,修复长 URL 撑破聊天布局、多 tab 草稿串台等问题。
这说明项目已经不只是“能跑”,而是在补桌面产品需要的安全边界和日常体验。
尤其是 H5 访问这一块,作者在 release 里明确提醒:H5 是给个人或可信团队使用的浏览器访问入口,不是公开多租户登录系统。实际使用时,不应该把它当成公网开放的 SaaS 登录后台。
Computer Use:让 Agent 操作桌面
cc-haha 另一个重要卖点是 Computer Use。
项目文档说明,这个功能基于 Claude Code 泄露源码中的 Computer Use 内部实现改造而来。官方实现依赖 Anthropic 内部私有原生模块,例如 @ant/computer-use-swift 和 @ant/computer-use-input,无法公开获取。cc-haha 用 Python bridge 替换底层操作层,通过 pyautogui、mss、pyobjc 等公开库实现系统交互。
Computer Use 支持的操作包括:
- 截屏:
screenshot、zoom - 鼠标:点击、拖拽、移动、滚动、读取光标位置
- 键盘:输入文字、按键、按住按键
- 应用:打开应用、切换显示器
- 权限:请求应用授权、列出已授权应用
- 剪贴板:读取和写入剪贴板
- 其他:等待、批量操作
它的工作方式是一个“截图 - 分析 - 操作”的闭环:
- 模型收到用户请求。
- 调用
screenshot获取屏幕画面。 - 模型根据视觉能力识别按钮、输入框和坐标。
- 调用点击、输入或应用操作工具。
- 再次截图确认结果,再继续下一步。
从文档看,完整支持的平台主要是 macOS,包括 Apple Silicon 和 Intel。Windows / Linux 在理论上可行,但涉及 pyobjc 的应用管理部分需要替换为对应平台方案,当前并不是完整适配状态。
运行要求包括:
Bun >= 1.1.0Python >= 3.8- macOS Accessibility 辅助功能权限
- macOS Screen Recording 屏幕录制权限
这类功能很强,但也意味着权限风险更高。让 AI 操作桌面应用时,最好只授权明确需要的应用,不要在无关窗口里打开敏感内容。
多模型接入:通过 Anthropic 协议兼容层
cc-haha 的通信基础仍然是 Anthropic Messages API 协议。项目文档给出的推荐方案是用 LiteLLM 做协议转换代理。
基本结构是:
|
|
也就是说,cc-haha 发出 Anthropic Messages API 请求,LiteLLM 把它转换成 OpenAI Chat Completions 等格式,再转发给 OpenAI、DeepSeek、Ollama 或其他模型服务。
文档给出的 LiteLLM 安装方式是:
|
|
然后可以在 litellm_config.yaml 里配置 OpenAI、DeepSeek、Ollama 等模型。启动代理后,在 .env 或 ~/.claude/settings.json 里设置:
|
|
这里有几个实际注意点:
drop_params: true很重要,因为 Anthropic 的thinking、cache_control等参数在 OpenAI API 中不存在。- Extended Thinking 属于 Anthropic 专有能力,使用第三方模型时不可用。
- Prompt Caching 也不会按 Anthropic 原生方式生效。
- 工具调用会经过 Anthropic
tool_use到 OpenAI function calling 的转换,复杂工具调用可能存在兼容性问题。 - 本地 Ollama 小模型未必能稳定处理这套工具调用流程。
所以多模型接入能跑,不等于所有模型体验一样。cc-haha 对模型的工具调用、代码理解和长上下文能力要求仍然不低。
适合什么人
cc-haha 更适合这几类用户:
- 已经熟悉 Claude Code,但想要桌面端会话管理的人。
- 经常同时处理多个仓库、分支和 AI 会话的人。
- 希望在右侧直接看 AI 文件改动、Diff 和工作区状态的人。
- 想尝试 Computer Use,让 Agent 操作桌面应用的人。
- 想用 Anthropic 协议接入 OpenAI、DeepSeek、Ollama 或其他模型的人。
- 需要手机或 IM 远程查看会话、审批权限的人。
不太适合:
- 只想稳定使用官方 Claude Code 的用户。
- 不能接受泄露源码背景和版权不确定性的人。
- 不愿意给本地工具较高系统权限的人。
- 需要企业合规、审计和官方支持的人。
- 不熟悉 API key、代理、模型兼容和本地服务配置的人。
风险和边界
这篇文章不能只讲功能,也必须讲风险。
cc-haha 的来源决定了它不是一个普通的社区重写项目。README 明确写到它基于泄露的 Claude Code 源码,且原始源码版权归 Anthropic 所有。这会带来版权、合规和长期维护上的不确定性。
另外,Computer Use、H5 远程访问、IM 接入和本地权限审批都属于高权限能力。它们越方便,越需要清楚边界:
- 不要在不可信网络下开放 H5 访问。
- 不要把 token 当作长期公开登录凭证。
- 不要给 Agent 操作不相关的敏感应用。
- 不要在生产环境或公司合规环境里随意接入。
- 不要把第三方模型代理和 API key 配置暴露到公共仓库。
如果只是学习 AI 编程工具架构、桌面端工作流和 Computer Use 实现,它很有参考价值。如果要放进长期生产工作流,就要先评估法律、权限、安全和维护风险。
总结
cc-haha 最值得关注的地方,不是“它能不能复刻 Claude Code”,而是它把 Claude Code 类型的 AI 编程工具推向了桌面工作台形态。
会话、项目、Worktree、Diff、权限、远程访问、Computer Use、多模型提供商、定时任务和 token 用量统计都被放进同一个桌面体验里。这说明 AI 编程工具的下一步,不只是模型更强,也包括工作流界面更完整。
不过它的边界也很清楚:这不是 Anthropic 官方产品,来源存在敏感背景,高权限能力需要谨慎使用。更合适的态度是把它当成一个观察 AI 编程工具演化方向的项目,而不是无脑替代官方 Claude Code。