>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
TypeScript

开发者如何将 CLI 工具 Claude Code 打造成名为 cc-haha 的图形化桌面环境

如果你曾在控制台中运行过编码代理,可能遇到过同样的问题。终端非常适合执行单个命令。但当 AI 开始编辑十几个文件时,观看持续不断的 diff 输出会变得非常繁琐。你需要一个proper界面、语法高亮、会话标签页,以及一个清晰的撤销按钮来撤回更改。

这就是 cc-haha 项目的由来。作者提取了 Claude Code CLI 工具的源代码,在此基础上构建了一个桌面应用程序。成果是一个用于 autonomous AI agents 的桌面环境,支持 macOS、Windows 和 Linux。

Claude Code Haha

应用程序内部有什么

常规的控制台工具将开发者限制在终端窗口中。cc-haha 项目采用了不同的方法,用 Electron shell 包装了 agent 逻辑,并配备了 React 界面。你获得了一个图形化环境,神经网络对话与文件树、更改查看窗口和内置浏览器共存。

界面设计确保你对模型的操作保持完全控制。每一次代码更改在写入磁盘之前都会显示在侧边栏中。

Interface screenshot

cc-haha 的四个值得关注的功能

使用 CLI 版本的 agent 时,你必须不断在速度和安全性之间找到平衡。cc-haha 的创作者试图解决开发者的主要痛点。

通过 Git Worktree 实现任务隔离

直接在working branch中运行神经网络可能存在风险。模型一次草率的决策,你就会花半小时清理本地更改。在 cc-haha 中,创建会话时,只需点击一次即可将 agent 发送到单独的 Git Worktree 中工作。代码更改发生在隔离的目录中,而你的主分支保持不变。

可视化审查和灵活的权限设置

应用程序允许你配置五个autonomy级别,而不是在控制台中不断输入确认。你可以为每个 bash 命令执行请求权限,或者信任模型独立工作。所有修改的文件都以清晰的 diff 高亮显示。

Diff view

摆脱单一 provider 的束缚

原始的 Claude Code 绑定在 Anthropic API 上。在 cc-haha 中,这个限制被移除了。开箱即用地支持通过 Ollama 和 LM Studio 连接本地模型,以及第三方 API,包括 DeepSeek、GLM、Kimi 和 ChatGPT。有了强大的本地服务器,agent 可以在不向外部服务发送数据的情况下运行。

Skills marketplace

通过即时通讯工具和移动端网页进行管理

启动了一个大型重构任务后离开了电脑?会话可以链接到 Telegram、WhatsApp、飞书(Feishu),或通过二维码通过移动端网页界面访问。如果 agent 停下来请求执行命令的权限,你可以直接在智能手机屏幕上批准该操作。

技术栈的组织方式

cc-haha 架构结合了多种熟悉的 Web 技术:

  • 原生 Bun 运行时处理脚本执行和服务器逻辑。
  • Electron 配合 ReactVite 构成桌面环境。
  • 控制台界面基于 Ink 库和 Commander.js 解析器构建。
  • MCP(Model Context Protocol)和 LSP 协议的支持帮助 agent 读取项目上下文和类型结构。
  • Computer Use 模块赋予神经网络截取屏幕截图和控制光标的能力,以便处理无法通过简单文件编辑解决的任务。

Dark theme

如何在本地运行项目

最简单的方法是前往 GitHub 上的 releases 部分,下载适合你平台的现成安装程序。但是,如果你想调试 CLI 部分或从源代码构建,构建过程只需要几分钟。

你需要安装 Bun。命令序列如下:

git clone https://github.com/NanmiCoder/cc-haha.git
cd cc-haha
bun install

cp .env.example .env

./bin/claude-haha

首次启动后,你需要进入设置,输入所选 provider 的 API 密钥,或指定本地 Ollama 服务器的地址。

实际注意事项

在生产项目中使用此工具之前,值得考虑其来源。该代码库依赖于从 Anthropic 的 npm registry 公开的源代码。因此,仓库没有标准的开源许可证,LICENSE 文件显示 NOASSERTION 状态。

macOS 和 Windows 的预构建包尚未包含开发者数字签名。在 macOS 上首次启动时,操作系统会阻止执行,因此你需要手动在 OS 安全设置中允许该应用。

谁会发现 cc-haha 有用

该工具适合那些积极使用 AI agents 编写代码但更喜欢带有清晰更改控制的图形化界面的开发者。在 DeepSeek、Claude 和本地网络之间切换的能力使工作环境适用于各种场景。

相关项目