ByteNoteByteNote

字节笔记本

2026年5月6日

cc-haha:Claude Code 本地可运行版本,用 Python Bridge 实现 Computer Use

API中转
¥120

本文介绍 cc-haha,一个基于 Claude Code 泄露源码修复的本地可运行版本。它用 Python Bridge 替代了官方私有原生模块,实现了在 macOS 上完整可用的 Computer Use 功能,支持截屏、鼠标键盘控制和应用管理。

项目简介

cc-haha(NanmiCoder/cc-haha)是一个开源项目,拥有 9,812 Star。它基于 Claude Code 泄露源码进行深度改造,使其可以在本地独立运行,并补全了 Computer Use 桌面控制、图形化桌面端、IM 远程驱动等功能。

核心价值:官方 Computer Use(内部代号 "Chicago")依赖 Anthropic 私有原生模块(@ant/computer-use-swift@ant/computer-use-input),无法公开获取。cc-haha 用 Python Bridge 完全替代了这些模块,让任何人都能在 macOS 上使用 Computer Use。

核心特性

  • 完整 Ink TUI 交互界面:与官方 Claude Code 一致的终端体验
  • Computer Use 桌面控制:截屏、鼠标、键盘,24 个 MCP 工具
  • 图形化桌面端:Tauri 2 + React 客户端,多标签多会话
  • IM 远程驱动:通过 Telegram / 飞书 / 微信 / 钉钉远程对话
  • 自定义 API 端点:支持接入任意 Anthropic 兼容 API(MiniMax、OpenRouter 等)
  • 多 Agent 系统:多代理编排、并行任务、Teams 协作
  • Skills 系统:可扩展能力插件、自定义工作流
  • 记忆系统:跨会话持久化记忆

技术栈

类别技术
运行时Bun
语言TypeScript
终端 UIReact + Ink
CLI 解析Commander.js
APIAnthropic SDK
桌面端Tauri 2 + React
协议MCP, LSP

Computer Use 详解

支持的 24 个 MCP 工具

类别工具
截屏screenshotzoom
鼠标left_clickright_clickdouble_clickleft_click_dragmouse_movescrollcursor_position
键盘typekeyhold_key
应用open_applicationswitch_display
权限request_accesslist_granted_applications
剪贴板read_clipboardwrite_clipboard
其他waitcomputer_batch

工作原理

核心是截图-分析-操作闭环:

text
AI 模型收到请求
  -> 调用 screenshot 获取屏幕截图
  -> 分析像素识别 UI 元素位置
  -> 调用 left_click / type 执行操作
  -> 再次截图确认结果

坐标分析完全由模型的视觉能力完成,模型"看"截图就像人看屏幕一样。

平台支持

平台状态
macOS (Apple Silicon)完整支持(推荐)
macOS (Intel)完整支持
Windows理论可行,未适配
Linux理论可行,未适配

Python Bridge 架构

官方使用私有 Swift 原生模块,cc-haha 用 Python 替代:

text
TypeScript 工具层 (MCP 工具分发 + 安全检查)
  -> callPythonHelper()
  -> Python Bridge (pyautogui + mss + pyobjc)
  -> 系统操作(鼠标、截图、应用管理)

首次运行自动创建 Python 虚拟环境并安装依赖,零配置。

安装指南

前置要求

  • Bun >= 1.1.0
  • Python >= 3.8(Computer Use 功能需要)

安装步骤

bash
# 1. 安装 Bun
curl -fsSL https://bun.sh/install | bash

# 2. 克隆项目
git clone https://github.com/NanmiCoder/cc-haha.git
cd cc-haha

# 3. 安装依赖
bun install

# 4. 配置环境变量
cp .env.example .env
# 编辑 .env 填入 API Key

# 5. 启动
./bin/claude-haha                          # 交互模式
./bin/claude-haha -p "your prompt here"    # 无头模式

macOS 权限配置(Computer Use)

授予辅助功能和屏幕录制权限:

bash
# 辅助功能
open "x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility"

# 屏幕录制
open "x-apple.systempreferences:com.apple.preference.security?Privacy_ScreenCapture"

将终端应用添加到允许列表,授权后重启终端。

使用示例

text
> 帮我打开网易云音乐,搜索一首歌
> 截个屏看看当前桌面
> 帮我在 VS Code 里打开终端

安全机制

机制说明
应用白名单每次会话需明确授权允许操作的应用
并发保护同一时间只有一个会话可使用 Computer Use
剪贴板保护自动保存和恢复原始剪贴板内容
操作确认敏感操作需额外授权

环境变量配置

变量默认值说明
CLAUDE_COMPUTER_USE_ENABLED1设为 0 禁用
CLAUDE_COMPUTER_USE_COORDINATE_MODEpixelspixelsnormalized_0_100
CLAUDE_COMPUTER_USE_CLIPBOARD_PASTE1启用剪贴板粘贴输入
CLAUDE_COMPUTER_USE_MOUSE_ANIMATION1启用鼠标动画
CLAUDE_COMPUTER_USE_DEBUG0调试模式

已知限制

  • Computer Use 仅支持 macOS,Windows/Linux 需适配
  • 无全局 Escape 中止,使用 Ctrl+C 代替
  • 操作前不自动隐藏窗口
  • Python 进程启动约 100ms 开销

项目链接

分享: