mirror of
https://github.com/NanmiCoder/claude-code-haha.git
synced 2026-10-10 03:43:11 +08:00
docs(readme): make English the default README
README.md carried the Chinese version while README.en.md held the English one, so the GitHub landing page opened in Chinese. Swap them: README.md is now English and the Chinese version lives in README.zh-CN.md, with both language switchers pointing at the new paths.
This commit is contained in:
@@ -59,7 +59,7 @@ jobs:
|
||||
'src/tools/',
|
||||
'src/utils/',
|
||||
]
|
||||
const docsExact = new Set(['README.md', 'README.en.md', 'package.json', 'package-lock.json', '.github/workflows/deploy-docs.yml'])
|
||||
const docsExact = new Set(['README.md', 'README.zh-CN.md', 'package.json', 'package-lock.json', '.github/workflows/deploy-docs.yml'])
|
||||
const releaseExact = new Set([
|
||||
'.github/workflows/pr-quality.yml',
|
||||
'.github/workflows/pr-triage.yml',
|
||||
|
||||
-218
@@ -1,218 +0,0 @@
|
||||
# Claude Code Haha
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/readme-cover-en.jpg" alt="cc-haha — Open-source desktop for Claude Code" width="960">
|
||||
</p>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://github.com/NanmiCoder/cc-haha/stargazers)
|
||||
[](https://github.com/NanmiCoder/cc-haha/network/members)
|
||||
[](https://github.com/NanmiCoder/cc-haha/issues)
|
||||
[](https://github.com/NanmiCoder/cc-haha/pulls)
|
||||
[](https://github.com/NanmiCoder/cc-haha/blob/main/LICENSE)
|
||||
[](README.en.md)
|
||||
[](README.md)
|
||||
[](https://cchaha.ai)
|
||||
|
||||
[简体中文](README.md) · **English**
|
||||
|
||||
</div>
|
||||
|
||||
Claude Code Haha is a **desktop Claude Code workspace** for macOS, Windows, and Linux: multi-session workspaces, global search, branch / Worktree launch, diff review, built-in browser preview, GUI permission approval, any model — Claude, ChatGPT, Grok, presets, or local endpoints — image generation, visual MCP & SubAgent managers, an Agent Teams workbench, dynamic Workflow orchestration, model trace, Computer Use, skill marketplace, colour themes, desktop pets, H5 remote access, IM integration, and scheduled tasks, all in one app.
|
||||
|
||||
<p align="center">
|
||||
<a href="#desktop-preview">Desktop Preview</a> · <a href="#install-the-desktop-app">Install</a> · <a href="#desktop-highlights">Highlights</a> · <a href="#more-documentation">More Docs</a> · <a href="#sponsorship--partnership">Sponsorship</a> · <a href="#user-group">User Group</a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## Desktop Preview
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/NanmiCoder/cc-haha/releases"><img src="https://img.shields.io/badge/⬇_Download_Desktop-macOS_%7C_Windows_%7C_Linux-FF7A00?style=for-the-badge" alt="Download Desktop"></a>
|
||||
</p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/session-new.webp" alt="Empty desktop session before the first task"><br><b>Start with a clear, empty session</b><br><sub>Project and permissions stay visible</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/session-main.webp" alt="Real task running with the Activity panel open"><br><b>Follow the task as it runs</b><br><sub>Tool calls and stage-by-stage progress stay in view</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/workspace-diff.webp" alt="Workspace diff review"><br><b>See exactly what changed</b><br><sub>A focused, full-width syntax-highlighted diff</sub></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/workspace-preview.webp" alt="Built-in browser previewing the page that was just changed"><br><b>Verify on the spot</b><br><sub>The real edited page in the built-in browser</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/model-picker.webp" alt="Model picker showing providers, presets, and local endpoints"><br><b>Choose the exact model</b><br><sub>Your providers, presets, and local endpoints in one list</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/skill-market.webp" alt="Skill marketplace"><br><b>Missing a trick? Install it</b><br><sub>Source and safety status shown up front</sub></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
---
|
||||
|
||||
## Sponsorship & Partnership
|
||||
|
||||
This project is maintained in the author's spare time. Corporate or individual sponsorships are welcome to support ongoing development. Custom features, integrations, and business partnerships are also open for discussion.
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="220">Sponsor</th>
|
||||
<th align="left">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" valign="middle">
|
||||
<a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">
|
||||
<img src="docs/images/sponsors/atlascloud-logo-black.png#gh-light-mode-only" width="180" alt="Atlas Cloud">
|
||||
<img src="docs/images/sponsors/atlascloud-logo-white.png#gh-dark-mode-only" width="180" alt="Atlas Cloud">
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
Thanks to <a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">Atlas Cloud</a> for sponsoring this project. Atlas Cloud is a full-modal AI inference platform that gives developers a single AI API to access video generation, image generation, and LLM APIs. Instead of managing multiple vendor integrations, you connect once and get unified access to 300+ curated models across all modalities. Atlas Cloud is already built into the cc-haha provider list, so you can pick it in settings and start using it with just an API key. Check out Atlas Cloud's new <a href="https://www.atlascloud.ai/console/coding-plan">coding plan promotion</a> for more budget-friendly API access.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="middle">
|
||||
<a href="https://www.apismart.ai">
|
||||
<img src="docs/images/sponsors/apismart-logo.png" width="180" alt="ApiSmart">
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
Thanks to <a href="https://www.apismart.ai">ApiSmart</a> for sponsoring this project. ApiSmart provides unified access to leading AI models through a single API. Use one API key to connect with LLM, image, and video models through an OpenAI-compatible interface. Easily switch between models, simplify billing, and improve reliability with intelligent routing and automatic failover.
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
📧 **Contact**: relakkes@gmail.com
|
||||
|
||||
---
|
||||
|
||||
## Install the Desktop App
|
||||
|
||||
1. Download the macOS / Windows / Linux desktop installer from [Releases](https://github.com/NanmiCoder/cc-haha/releases).
|
||||
2. On first launch, configure your model provider, API key, and default model in Settings.
|
||||
3. Public macOS releases require signing and notarization. Draft or unsigned temporary builds may still need one-time manual approval. Unsigned Windows installers may show SmartScreen; click "More info" -> "Run anyway". See the [desktop installation guide](docs/en/start/install.md).
|
||||
|
||||
Release trust and privacy: [Code signing policy](docs/en/start/code-signing.md) · [Privacy and network access](docs/en/start/privacy.md)
|
||||
|
||||
## Run the CLI from Source
|
||||
|
||||
For users who want to debug the underlying CLI, server, or local development flow:
|
||||
|
||||
```bash
|
||||
bun install
|
||||
cp .env.example .env
|
||||
./bin/claude-haha
|
||||
```
|
||||
|
||||
See [environment variables](docs/en/cli/env.md) and [CLI setup](docs/en/cli/index.md) for more configuration options.
|
||||
|
||||
---
|
||||
|
||||
## User Group
|
||||
|
||||
Scan the QR code below to join the cc-haha user group on WeCom (WeChat Work) — the conversation there is mostly in Chinese. For questions and bug reports in English, [Issues](https://github.com/NanmiCoder/cc-haha/issues) is the better place. For enterprise deployment, customization, or Agent development needs, contact the author [NanmiCoder](https://github.com/NanmiCoder).
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/community/wechat-group-qr.png" width="300" alt="cc-haha WeCom user group QR code">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## ☕ Buy Me a Coffee
|
||||
|
||||
If this project helps you, consider buying me a coffee — every bit of support keeps this project going ❤️
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/wechat_pay.jpeg" width="250" alt="WeChat Pay"><br>
|
||||
<b>WeChat Pay</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/zfb_pay.png" width="250" alt="Alipay"><br>
|
||||
<b>Alipay</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<a href="https://buymeacoffee.com/relakkes" target="_blank">
|
||||
<img src="docs/images/donate/bmc_button.png" width="250" alt="Buy Me a Coffee">
|
||||
</a><br>
|
||||
<b>Buy Me a Coffee</b>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
---
|
||||
|
||||
## Desktop Highlights
|
||||
|
||||
- **Multi-session workspace**: tabs, project switching, terminal entry, and session history in one place, with a resizable sidebar.
|
||||
- **Global search**: press Cmd+K to search across every session and jump to the match.
|
||||
- **Branch / Worktree launch**: choose a repository branch and decide whether to use the current working tree or an isolated Worktree.
|
||||
- **Review edits file by file**: the workspace lists this turn's changes; open any file for a syntax-highlighted diff, or undo the whole turn.
|
||||
- **Built-in browser preview**: the page your agent just edited renders right inside the app, cookies and login state included.
|
||||
- **Five permission modes**: from "ask every time" to "skip permissions" — risky commands, tool calls, and follow-up questions are all approved in the GUI.
|
||||
- **Bring your own model**: sign in to Claude, ChatGPT, or Grok; use presets for DeepSeek, Kimi, Zhipu GLM and others; or point it at LM Studio and Ollama running locally.
|
||||
- **Image generation**: generate and edit images right in the chat — sign in with ChatGPT or Grok for instant use, or plug in any OpenAI-compatible Images API.
|
||||
- **Visual MCP manager**: add and edit MCP servers in a GUI — STDIO / Streamable HTTP / SSE, with project, shared, or global scope.
|
||||
- **Six colour themes**: white, paper, warm classic, celadon, ink night, and ink blue — optionally following your system's light/dark setting.
|
||||
- **Skill marketplace**: discover, preview, and install third-party skills from ClawHub / SkillHub, with source and safety status shown up front.
|
||||
- **Session activity panel**: track task progress, background tasks, SubAgents, and sources in one side panel.
|
||||
- **Visual SubAgent manager**: create and tune SubAgents in a GUI — model, tools, and permission mode.
|
||||
- **Agent Teams workbench**: visualize multi-agent collaboration in the GUI — members, tasks, a communication feed, and a dependency-lane canvas.
|
||||
- **Dynamic Workflow orchestration**: the model writes and runs orchestration scripts on the fly, driving subagents concurrently or in pipelines, with phase views, interrupts, and resume.
|
||||
- **Model trace**: every model request is logged locally with status and timing — search and filter to diagnose stuck or failed calls.
|
||||
- **Computer Use**: let the agent take screenshots, click, type, and control desktop apps after authorization.
|
||||
- **Desktop pets**: Dada, Huhu, Bubu, and Huihui change what they do with the task at hand — or raise one of your own (off by default).
|
||||
- **H5 remote access**: scan a QR code to continue the session in your phone browser; locking the screen won't kill a running task.
|
||||
- **IM integration**: chat, switch projects, and approve actions through Telegram / Feishu / WeChat / DingTalk / WhatsApp / WeCom / QQ / Slack.
|
||||
- **Scheduled tasks and usage stats**: run planned tasks in their own sessions and track local token usage trends.
|
||||
|
||||
---
|
||||
|
||||
## More Documentation
|
||||
|
||||
Full documentation site: <https://cchaha.ai>
|
||||
|
||||
| Section | Documents |
|
||||
|------|------|
|
||||
| **Getting started** | [What this is](docs/en/start/index.md) · [Download and install](docs/en/start/install.md) · [Connect a model provider](docs/en/start/models.md) · [Your first session](docs/en/start/first-session.md) · [Troubleshooting](docs/en/start/troubleshooting.md) |
|
||||
| **Desktop features** | [Feature overview](docs/en/desktop/index.md) · [Computer Use](docs/en/desktop/computer-use.md) · [Desktop pets](docs/en/desktop/pets.md) · [Phone H5 and IM relay](docs/en/desktop/remote.md) |
|
||||
| **IM integrations** | [Overview and pairing](docs/en/im/index.md) · [Feishu](docs/en/im/feishu.md) · [Telegram](docs/en/im/telegram.md) · [WeChat](docs/en/im/wechat.md) · [DingTalk](docs/en/im/dingtalk.md) · [WhatsApp](docs/en/im/whatsapp.md) · [WeCom](docs/en/im/wecom.md) · [QQ](docs/en/im/qq.md) · [Slack](docs/en/im/slack.md) |
|
||||
| **CLI** | [Install and run](docs/en/cli/index.md) · [Command reference](docs/en/cli/reference.md) · [Environment variables](docs/en/cli/env.md) |
|
||||
| **Internals** | [Desktop architecture](docs/en/internals/desktop.md) · [Multi-agent system](docs/en/internals/agent.md) · [Skills system](docs/en/internals/skills.md) · [Memory system](docs/en/internals/memory.md) · [Computer Use architecture](docs/en/internals/computer-use.md) · [Local server and API](docs/en/internals/server.md) · [Channel system](docs/en/internals/channel.md) · [Project structure](docs/en/internals/structure.md) · [Contributing and quality gates](docs/en/internals/contributing.md) |
|
||||
|
||||
---
|
||||
|
||||
## Tech Stack
|
||||
|
||||
| Category | Technology |
|
||||
|------|------|
|
||||
| Language | TypeScript |
|
||||
| Desktop app | Electron |
|
||||
| Desktop UI | React + Vite |
|
||||
| Local runtime | [Bun](https://bun.sh) |
|
||||
| Terminal UI | React + [Ink](https://github.com/vadimdemedes/ink) |
|
||||
| CLI parsing | Commander.js |
|
||||
| API | Anthropic SDK |
|
||||
| Protocols | MCP, LSP |
|
||||
|
||||
## Acknowledgements
|
||||
|
||||
Thanks to the following open-source projects and community practices for reference and inspiration:
|
||||
|
||||
- [React](https://github.com/facebook/react): frontend engineering and component-based UI ecosystem.
|
||||
- [Electron](https://github.com/electron/electron): cross-platform desktop app capabilities and engineering practices.
|
||||
- [cc-switch](https://github.com/farion1231/cc-switch): reference for model provider configuration.
|
||||
- [LINUX DO](https://linux.do/): a new ideal developer community.
|
||||
|
||||
---
|
||||
|
||||
## ⭐ Star History
|
||||
|
||||
If this project helps you, please support it with a ⭐ Star so more people can discover Claude Code Haha.
|
||||
|
||||
<a href="https://www.repostars.dev/?repos=NanmiCoder%2Fcc-haha&theme=ocean">
|
||||
<img alt="Star History Chart" src="https://www.repostars.dev/api/embed?repo=NanmiCoder%2Fcc-haha&theme=ocean" />
|
||||
</a>
|
||||
@@ -1,7 +1,7 @@
|
||||
# Claude Code Haha
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/readme-cover-zh.jpg" alt="cc-haha — Claude Code 开源桌面端" width="960">
|
||||
<img src="docs/images/readme-cover-en.jpg" alt="cc-haha — Open-source desktop for Claude Code" width="960">
|
||||
</p>
|
||||
|
||||
<div align="center">
|
||||
@@ -11,52 +11,52 @@
|
||||
[](https://github.com/NanmiCoder/cc-haha/issues)
|
||||
[](https://github.com/NanmiCoder/cc-haha/pulls)
|
||||
[](https://github.com/NanmiCoder/cc-haha/blob/main/LICENSE)
|
||||
[](README.md)
|
||||
[](README.en.md)
|
||||
[](https://cchaha.ai)
|
||||
[](README.md)
|
||||
[](README.zh-CN.md)
|
||||
[](https://cchaha.ai)
|
||||
|
||||
**简体中文** · [English](README.en.md)
|
||||
[简体中文](README.zh-CN.md) · **English**
|
||||
|
||||
</div>
|
||||
|
||||
Claude Code Haha 是一个**桌面端 Claude Code 工作台**:多会话与全局搜索、分支 / Worktree 启动、Diff 审阅、内置浏览器预览、图形化权限审批、模型自选(Claude / ChatGPT / Grok / 预设 / 本地端点)、图片生成、MCP 与 SubAgent 可视化管理、Agent Teams 协作工作台、动态 Workflow 编排、模型请求追踪、Computer Use、技能市场、多主题、桌面宠物、H5 远程访问、IM 接入和定时任务,集中在一个 macOS / Windows / Linux APP 里。
|
||||
Claude Code Haha is a **desktop Claude Code workspace** for macOS, Windows, and Linux: multi-session workspaces, global search, branch / Worktree launch, diff review, built-in browser preview, GUI permission approval, any model — Claude, ChatGPT, Grok, presets, or local endpoints — image generation, visual MCP & SubAgent managers, an Agent Teams workbench, dynamic Workflow orchestration, model trace, Computer Use, skill marketplace, colour themes, desktop pets, H5 remote access, IM integration, and scheduled tasks, all in one app.
|
||||
|
||||
<p align="center">
|
||||
<a href="#桌面端预览">桌面端预览</a> · <a href="#安装桌面端">安装桌面端</a> · <a href="#桌面端亮点">桌面端亮点</a> · <a href="#更多文档">更多文档</a> · <a href="#赞助与合作">赞助与合作</a> · <a href="#用户交流群">用户交流群</a>
|
||||
<a href="#desktop-preview">Desktop Preview</a> · <a href="#install-the-desktop-app">Install</a> · <a href="#desktop-highlights">Highlights</a> · <a href="#more-documentation">More Docs</a> · <a href="#sponsorship--partnership">Sponsorship</a> · <a href="#user-group">User Group</a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## 桌面端预览
|
||||
## Desktop Preview
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/NanmiCoder/cc-haha/releases"><img src="https://img.shields.io/badge/⬇_下载桌面端-macOS_%7C_Windows_%7C_Linux-FF7A00?style=for-the-badge" alt="下载桌面端"></a>
|
||||
<a href="https://github.com/NanmiCoder/cc-haha/releases"><img src="https://img.shields.io/badge/⬇_Download_Desktop-macOS_%7C_Windows_%7C_Linux-FF7A00?style=for-the-badge" alt="Download Desktop"></a>
|
||||
</p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/session-new.webp" alt="第一次任务前的空会话"><br><b>从清爽的空会话开始</b><br><sub>项目和权限都在首屏</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/session-main.webp" alt="打开活动面板的真实执行中任务"><br><b>跟着任务一步步往前</b><br><sub>工具调用与阶段进度都留在眼前</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/workspace-diff.webp" alt="工作区 Diff 评审"><br><b>改了什么,逐行看清楚</b><br><sub>放大的高亮 Diff,文字和代码更清楚</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/session-new.webp" alt="Empty desktop session before the first task"><br><b>Start with a clear, empty session</b><br><sub>Project and permissions stay visible</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/session-main.webp" alt="Real task running with the Activity panel open"><br><b>Follow the task as it runs</b><br><sub>Tool calls and stage-by-stage progress stay in view</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/workspace-diff.webp" alt="Workspace diff review"><br><b>See exactly what changed</b><br><sub>A focused, full-width syntax-highlighted diff</sub></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/workspace-preview.webp" alt="内置浏览器预览刚改完的页面"><br><b>改完当场验证</b><br><sub>内置浏览器打开真实本地页面</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/model-picker.webp" alt="显示服务商、预设和本地端点的模型选择器"><br><b>每条会话自选模型</b><br><sub>自己的服务商、预设和本地端点都在一个列表里</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/skill-market.webp" alt="技能市场"><br><b>缺什么手艺装什么</b><br><sub>来源和安全状态摆在明处</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/workspace-preview.webp" alt="Built-in browser previewing the page that was just changed"><br><b>Verify on the spot</b><br><sub>The real edited page in the built-in browser</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/model-picker.webp" alt="Model picker showing providers, presets, and local endpoints"><br><b>Choose the exact model</b><br><sub>Your providers, presets, and local endpoints in one list</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/en/skill-market.webp" alt="Skill marketplace"><br><b>Missing a trick? Install it</b><br><sub>Source and safety status shown up front</sub></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
---
|
||||
|
||||
## 赞助与合作
|
||||
## Sponsorship & Partnership
|
||||
|
||||
本项目由个人利用业余时间维护,欢迎企业或个人赞助支持持续开发,也可洽谈定制、集成或商务合作。
|
||||
This project is maintained in the author's spare time. Corporate or individual sponsorships are welcome to support ongoing development. Custom features, integrations, and business partnerships are also open for discussion.
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="220">赞助商</th>
|
||||
<th align="left">介绍</th>
|
||||
<th width="220">Sponsor</th>
|
||||
<th align="left">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -68,7 +68,7 @@ Claude Code Haha 是一个**桌面端 Claude Code 工作台**:多会话与全
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
感谢 <a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">Atlas Cloud</a> 赞助本项目!Atlas Cloud 是一个全模态 AI 推理平台,让开发者通过统一的 AI API 访问视频生成、图像生成和 LLM API,无需分别维护多个厂商集成,即可调用 300+ 精选模型。cc-haha 已内置 Atlas Cloud 供应商预设,在设置里选择后填入 API Key 即可直接使用。Atlas Cloud 最新推出 <a href="https://www.atlascloud.ai/console/coding-plan">coding plan 优惠</a>,为开发者提供更具性价比的 API 访问预算。
|
||||
Thanks to <a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">Atlas Cloud</a> for sponsoring this project. Atlas Cloud is a full-modal AI inference platform that gives developers a single AI API to access video generation, image generation, and LLM APIs. Instead of managing multiple vendor integrations, you connect once and get unified access to 300+ curated models across all modalities. Atlas Cloud is already built into the cc-haha provider list, so you can pick it in settings and start using it with just an API key. Check out Atlas Cloud's new <a href="https://www.atlascloud.ai/console/coding-plan">coding plan promotion</a> for more budget-friendly API access.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -78,27 +78,27 @@ Claude Code Haha 是一个**桌面端 Claude Code 工作台**:多会话与全
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
感谢 <a href="https://www.apismart.ai">ApiSmart</a> 赞助本项目!ApiSmart 通过单一 API 提供对主流 AI 模型的统一访问。只需一个 API Key,即可通过兼容 OpenAI 的接口连接大语言模型、图像模型和视频模型。轻松切换模型、简化账单管理,并通过智能路由和自动故障转移提升可靠性。
|
||||
Thanks to <a href="https://www.apismart.ai">ApiSmart</a> for sponsoring this project. ApiSmart provides unified access to leading AI models through a single API. Use one API key to connect with LLM, image, and video models through an OpenAI-compatible interface. Easily switch between models, simplify billing, and improve reliability with intelligent routing and automatic failover.
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
📧 **联系邮箱**:relakkes@gmail.com
|
||||
📧 **Contact**: relakkes@gmail.com
|
||||
|
||||
---
|
||||
|
||||
## 安装桌面端
|
||||
## Install the Desktop App
|
||||
|
||||
1. 前往 [Releases](https://github.com/NanmiCoder/cc-haha/releases) 下载 macOS / Windows / Linux 桌面端安装包。
|
||||
2. 首次启动后,在桌面端设置里配置模型提供商、API Key 和默认模型。
|
||||
3. 正式 macOS Release 需要经过签名和公证;如果安装的是 draft/unsigned 临时包,首次打开可能仍需手动放行。Windows 未签名安装包可能出现 SmartScreen 提示,点「更多信息」→「仍要运行」即可。详见 [桌面端安装指南](docs/start/install.md)。
|
||||
1. Download the macOS / Windows / Linux desktop installer from [Releases](https://github.com/NanmiCoder/cc-haha/releases).
|
||||
2. On first launch, configure your model provider, API key, and default model in Settings.
|
||||
3. Public macOS releases require signing and notarization. Draft or unsigned temporary builds may still need one-time manual approval. Unsigned Windows installers may show SmartScreen; click "More info" -> "Run anyway". See the [desktop installation guide](docs/en/start/install.md).
|
||||
|
||||
发布可信度与隐私:[Code signing policy](docs/start/code-signing.md) · [隐私与联网说明](docs/start/privacy.md)
|
||||
Release trust and privacy: [Code signing policy](docs/en/start/code-signing.md) · [Privacy and network access](docs/en/start/privacy.md)
|
||||
|
||||
## 从源码启动 CLI
|
||||
## Run the CLI from Source
|
||||
|
||||
适合想调试底层 CLI、服务端或自行开发的用户:
|
||||
For users who want to debug the underlying CLI, server, or local development flow:
|
||||
|
||||
```bash
|
||||
bun install
|
||||
@@ -106,33 +106,33 @@ cp .env.example .env
|
||||
./bin/claude-haha
|
||||
```
|
||||
|
||||
更多配置见 [环境变量](docs/cli/env.md) 和 [命令行安装与启动](docs/cli/index.md)。
|
||||
See [environment variables](docs/en/cli/env.md) and [CLI setup](docs/en/cli/index.md) for more configuration options.
|
||||
|
||||
---
|
||||
|
||||
## 用户交流群
|
||||
## User Group
|
||||
|
||||
使用过程中有问题、想反馈 Bug,或者想看看别人怎么用,欢迎扫码加入 cc-haha 企业微信用户群。也可以直接来 [Issues](https://github.com/NanmiCoder/cc-haha/issues) 提问。企业定制 / 私有化部署 / Agent 定制需求,请联系作者 [NanmiCoder](https://github.com/NanmiCoder)。
|
||||
Scan the QR code below to join the cc-haha user group on WeCom (WeChat Work) — the conversation there is mostly in Chinese. For questions and bug reports in English, [Issues](https://github.com/NanmiCoder/cc-haha/issues) is the better place. For enterprise deployment, customization, or Agent development needs, contact the author [NanmiCoder](https://github.com/NanmiCoder).
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/community/wechat-group-qr.png" width="300" alt="cc-haha 企业微信用户群二维码">
|
||||
<img src="docs/images/community/wechat-group-qr.png" width="300" alt="cc-haha WeCom user group QR code">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## ☕ 请作者喝杯咖啡
|
||||
## ☕ Buy Me a Coffee
|
||||
|
||||
如果这个项目对您有帮助,欢迎打赏支持,您的每一份支持都是我持续更新的动力 ❤️
|
||||
If this project helps you, consider buying me a coffee — every bit of support keeps this project going ❤️
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/wechat_pay.jpeg" width="250" alt="微信赞赏"><br>
|
||||
<b>微信赞赏</b>
|
||||
<img src="docs/images/donate/wechat_pay.jpeg" width="250" alt="WeChat Pay"><br>
|
||||
<b>WeChat Pay</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/zfb_pay.png" width="250" alt="支付宝"><br>
|
||||
<b>支付宝</b>
|
||||
<img src="docs/images/donate/zfb_pay.png" width="250" alt="Alipay"><br>
|
||||
<b>Alipay</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<a href="https://buymeacoffee.com/relakkes" target="_blank">
|
||||
@@ -145,73 +145,73 @@ cp .env.example .env
|
||||
|
||||
---
|
||||
|
||||
## 桌面端亮点
|
||||
## Desktop Highlights
|
||||
|
||||
- **多会话工作台**:标签页、项目切换、终端入口和会话历史集中管理,侧边栏宽度可拖拽。
|
||||
- **全局搜索**:按 Cmd+K 跨所有会话全文搜索,一键跳到命中位置。
|
||||
- **分支 / Worktree 启动**:新会话可以选择仓库分支,并决定用当前工作树还是隔离 Worktree。
|
||||
- **改动逐个文件审阅**:右侧工作区列出本轮改动,点开就是带语法高亮的 Diff,整轮可撤销。
|
||||
- **内置浏览器预览**:Agent 刚改完的页面直接在应用内渲染,登录态和 Cookie 真实可用。
|
||||
- **五档权限模式**:从「询问权限」到「跳过权限」,危险命令、工具调用和 AI 反问都在桌面端审批。
|
||||
- **模型自选**:Claude / ChatGPT / Grok 官方账号可直接登录;DeepSeek、Kimi、智谱 GLM 等第三方 API 有现成预设;LM Studio、Ollama 的本地模型也接得上。
|
||||
- **图片生成**:聊天中直接生成和编辑图片——ChatGPT / Grok 授权登录即可使用,也支持接入任意 OpenAI 兼容的 Images API。
|
||||
- **MCP 图形化管理**:界面化增删改 MCP Server,支持 STDIO / Streamable HTTP / SSE 三种传输方式与项目私有、共享、全局三种作用域。
|
||||
- **六套配色主题**:纯白、纸墨、经典暖色、青瓷、墨夜、墨夜蓝,可跟随系统深浅色自动切换。
|
||||
- **技能市场**:发现、预览、安装 ClawHub / SkillHub 的第三方技能,来源和安全状态摆在明处。
|
||||
- **会话活动面板**:集中查看任务进度、后台任务、SubAgent 与来源。
|
||||
- **可视化 SubAgent 管理**:图形界面创建和调校子代理,选择模型、工具与权限模式。
|
||||
- **Agent Teams 协作工作台**:桌面端可视化多 Agent 协作团队——成员、任务、通信流和依赖泳道一目了然。
|
||||
- **动态 Workflow 编排**:模型当场编写并运行编排脚本,并发或流水线调度多个子代理,支持阶段视图、中断与断点续跑。
|
||||
- **模型请求追踪**:本地记录每轮模型请求的状态与耗时,可搜索筛选,快速定位卡死或失败调用。
|
||||
- **Computer Use**:让 Agent 在授权后截图、点击、输入并控制桌面应用。
|
||||
- **桌面宠物**:搭搭、弧弧、补补、回回随任务状态换动作,也能自己做一只(默认关闭)。
|
||||
- **H5 远程访问**:扫码用手机浏览器接入当前会话,锁屏切后台都不打断正在跑的任务。
|
||||
- **IM 接入**:通过 Telegram / 飞书 / 微信 / 钉钉 / WhatsApp / 企业微信 / QQ / Slack 远程对话、切换项目和审批权限。
|
||||
- **定时任务与用量统计**:创建计划任务在独立会话执行,并查看本机 Token 使用趋势。
|
||||
- **Multi-session workspace**: tabs, project switching, terminal entry, and session history in one place, with a resizable sidebar.
|
||||
- **Global search**: press Cmd+K to search across every session and jump to the match.
|
||||
- **Branch / Worktree launch**: choose a repository branch and decide whether to use the current working tree or an isolated Worktree.
|
||||
- **Review edits file by file**: the workspace lists this turn's changes; open any file for a syntax-highlighted diff, or undo the whole turn.
|
||||
- **Built-in browser preview**: the page your agent just edited renders right inside the app, cookies and login state included.
|
||||
- **Five permission modes**: from "ask every time" to "skip permissions" — risky commands, tool calls, and follow-up questions are all approved in the GUI.
|
||||
- **Bring your own model**: sign in to Claude, ChatGPT, or Grok; use presets for DeepSeek, Kimi, Zhipu GLM and others; or point it at LM Studio and Ollama running locally.
|
||||
- **Image generation**: generate and edit images right in the chat — sign in with ChatGPT or Grok for instant use, or plug in any OpenAI-compatible Images API.
|
||||
- **Visual MCP manager**: add and edit MCP servers in a GUI — STDIO / Streamable HTTP / SSE, with project, shared, or global scope.
|
||||
- **Six colour themes**: white, paper, warm classic, celadon, ink night, and ink blue — optionally following your system's light/dark setting.
|
||||
- **Skill marketplace**: discover, preview, and install third-party skills from ClawHub / SkillHub, with source and safety status shown up front.
|
||||
- **Session activity panel**: track task progress, background tasks, SubAgents, and sources in one side panel.
|
||||
- **Visual SubAgent manager**: create and tune SubAgents in a GUI — model, tools, and permission mode.
|
||||
- **Agent Teams workbench**: visualize multi-agent collaboration in the GUI — members, tasks, a communication feed, and a dependency-lane canvas.
|
||||
- **Dynamic Workflow orchestration**: the model writes and runs orchestration scripts on the fly, driving subagents concurrently or in pipelines, with phase views, interrupts, and resume.
|
||||
- **Model trace**: every model request is logged locally with status and timing — search and filter to diagnose stuck or failed calls.
|
||||
- **Computer Use**: let the agent take screenshots, click, type, and control desktop apps after authorization.
|
||||
- **Desktop pets**: Dada, Huhu, Bubu, and Huihui change what they do with the task at hand — or raise one of your own (off by default).
|
||||
- **H5 remote access**: scan a QR code to continue the session in your phone browser; locking the screen won't kill a running task.
|
||||
- **IM integration**: chat, switch projects, and approve actions through Telegram / Feishu / WeChat / DingTalk / WhatsApp / WeCom / QQ / Slack.
|
||||
- **Scheduled tasks and usage stats**: run planned tasks in their own sessions and track local token usage trends.
|
||||
|
||||
---
|
||||
|
||||
## 更多文档
|
||||
## More Documentation
|
||||
|
||||
完整文档站:<https://cchaha.ai>
|
||||
Full documentation site: <https://cchaha.ai>
|
||||
|
||||
| 分区 | 文档 |
|
||||
| Section | Documents |
|
||||
|------|------|
|
||||
| **开始使用** | [这是什么](docs/start/index.md) · [下载与安装](docs/start/install.md) · [连接模型服务](docs/start/models.md) · [跑通第一条会话](docs/start/first-session.md) · [故障排查](docs/start/troubleshooting.md) |
|
||||
| **桌面端功能** | [功能总览](docs/desktop/index.md) · [Computer Use](docs/desktop/computer-use.md) · [桌面宠物](docs/desktop/pets.md) · [手机 H5 与 IM 接力](docs/desktop/remote.md) |
|
||||
| **IM 接入** | [总览与配对流程](docs/im/index.md) · [飞书](docs/im/feishu.md) · [Telegram](docs/im/telegram.md) · [微信](docs/im/wechat.md) · [钉钉](docs/im/dingtalk.md) · [WhatsApp](docs/im/whatsapp.md) · [企业微信](docs/im/wecom.md) · [QQ](docs/im/qq.md) · [Slack](docs/im/slack.md) |
|
||||
| **命令行** | [安装与启动](docs/cli/index.md) · [命令参考](docs/cli/reference.md) · [环境变量](docs/cli/env.md) |
|
||||
| **深入原理** | [桌面端架构](docs/internals/desktop.md) · [多 Agent 系统](docs/internals/agent.md) · [Skills 系统](docs/internals/skills.md) · [记忆系统](docs/internals/memory.md) · [Computer Use 架构](docs/internals/computer-use.md) · [本地 Server 与 API](docs/internals/server.md) · [Channel 系统](docs/internals/channel.md) · [项目结构](docs/internals/structure.md) · [参与贡献与质量门禁](docs/internals/contributing.md) |
|
||||
| **Getting started** | [What this is](docs/en/start/index.md) · [Download and install](docs/en/start/install.md) · [Connect a model provider](docs/en/start/models.md) · [Your first session](docs/en/start/first-session.md) · [Troubleshooting](docs/en/start/troubleshooting.md) |
|
||||
| **Desktop features** | [Feature overview](docs/en/desktop/index.md) · [Computer Use](docs/en/desktop/computer-use.md) · [Desktop pets](docs/en/desktop/pets.md) · [Phone H5 and IM relay](docs/en/desktop/remote.md) |
|
||||
| **IM integrations** | [Overview and pairing](docs/en/im/index.md) · [Feishu](docs/en/im/feishu.md) · [Telegram](docs/en/im/telegram.md) · [WeChat](docs/en/im/wechat.md) · [DingTalk](docs/en/im/dingtalk.md) · [WhatsApp](docs/en/im/whatsapp.md) · [WeCom](docs/en/im/wecom.md) · [QQ](docs/en/im/qq.md) · [Slack](docs/en/im/slack.md) |
|
||||
| **CLI** | [Install and run](docs/en/cli/index.md) · [Command reference](docs/en/cli/reference.md) · [Environment variables](docs/en/cli/env.md) |
|
||||
| **Internals** | [Desktop architecture](docs/en/internals/desktop.md) · [Multi-agent system](docs/en/internals/agent.md) · [Skills system](docs/en/internals/skills.md) · [Memory system](docs/en/internals/memory.md) · [Computer Use architecture](docs/en/internals/computer-use.md) · [Local server and API](docs/en/internals/server.md) · [Channel system](docs/en/internals/channel.md) · [Project structure](docs/en/internals/structure.md) · [Contributing and quality gates](docs/en/internals/contributing.md) |
|
||||
|
||||
---
|
||||
|
||||
## 技术栈
|
||||
## Tech Stack
|
||||
|
||||
| 类别 | 技术 |
|
||||
| Category | Technology |
|
||||
|------|------|
|
||||
| 语言 | TypeScript |
|
||||
| 桌面 APP | Electron |
|
||||
| 桌面 UI | React + Vite |
|
||||
| 本地运行时 | [Bun](https://bun.sh) |
|
||||
| 终端 UI | React + [Ink](https://github.com/vadimdemedes/ink) |
|
||||
| CLI 解析 | Commander.js |
|
||||
| Language | TypeScript |
|
||||
| Desktop app | Electron |
|
||||
| Desktop UI | React + Vite |
|
||||
| Local runtime | [Bun](https://bun.sh) |
|
||||
| Terminal UI | React + [Ink](https://github.com/vadimdemedes/ink) |
|
||||
| CLI parsing | Commander.js |
|
||||
| API | Anthropic SDK |
|
||||
| 协议 | MCP, LSP |
|
||||
| Protocols | MCP, LSP |
|
||||
|
||||
## 致谢
|
||||
## Acknowledgements
|
||||
|
||||
感谢以下开源项目和社区实践为本项目提供参考与启发:
|
||||
Thanks to the following open-source projects and community practices for reference and inspiration:
|
||||
|
||||
- [React](https://github.com/facebook/react):前端工程与组件化 UI 生态。
|
||||
- [Electron](https://github.com/electron/electron):跨端桌面应用能力与工程实践。
|
||||
- [cc-switch](https://github.com/farion1231/cc-switch):模型供应商配置能力参考。
|
||||
- [LINUX DO](https://linux.do/):新的理想型开发者社区。
|
||||
- [React](https://github.com/facebook/react): frontend engineering and component-based UI ecosystem.
|
||||
- [Electron](https://github.com/electron/electron): cross-platform desktop app capabilities and engineering practices.
|
||||
- [cc-switch](https://github.com/farion1231/cc-switch): reference for model provider configuration.
|
||||
- [LINUX DO](https://linux.do/): a new ideal developer community.
|
||||
|
||||
---
|
||||
|
||||
## ⭐ Star History
|
||||
|
||||
如果这个项目对你有帮助,欢迎点一个 ⭐ Star,让更多人发现 Claude Code Haha。
|
||||
If this project helps you, please support it with a ⭐ Star so more people can discover Claude Code Haha.
|
||||
|
||||
<a href="https://www.repostars.dev/?repos=NanmiCoder%2Fcc-haha&theme=ocean">
|
||||
<img alt="Star History Chart" src="https://www.repostars.dev/api/embed?repo=NanmiCoder%2Fcc-haha&theme=ocean" />
|
||||
|
||||
+218
@@ -0,0 +1,218 @@
|
||||
# Claude Code Haha
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/readme-cover-zh.jpg" alt="cc-haha — Claude Code 开源桌面端" width="960">
|
||||
</p>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://github.com/NanmiCoder/cc-haha/stargazers)
|
||||
[](https://github.com/NanmiCoder/cc-haha/network/members)
|
||||
[](https://github.com/NanmiCoder/cc-haha/issues)
|
||||
[](https://github.com/NanmiCoder/cc-haha/pulls)
|
||||
[](https://github.com/NanmiCoder/cc-haha/blob/main/LICENSE)
|
||||
[](README.zh-CN.md)
|
||||
[](README.md)
|
||||
[](https://cchaha.ai)
|
||||
|
||||
**简体中文** · [English](README.md)
|
||||
|
||||
</div>
|
||||
|
||||
Claude Code Haha 是一个**桌面端 Claude Code 工作台**:多会话与全局搜索、分支 / Worktree 启动、Diff 审阅、内置浏览器预览、图形化权限审批、模型自选(Claude / ChatGPT / Grok / 预设 / 本地端点)、图片生成、MCP 与 SubAgent 可视化管理、Agent Teams 协作工作台、动态 Workflow 编排、模型请求追踪、Computer Use、技能市场、多主题、桌面宠物、H5 远程访问、IM 接入和定时任务,集中在一个 macOS / Windows / Linux APP 里。
|
||||
|
||||
<p align="center">
|
||||
<a href="#桌面端预览">桌面端预览</a> · <a href="#安装桌面端">安装桌面端</a> · <a href="#桌面端亮点">桌面端亮点</a> · <a href="#更多文档">更多文档</a> · <a href="#赞助与合作">赞助与合作</a> · <a href="#用户交流群">用户交流群</a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## 桌面端预览
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/NanmiCoder/cc-haha/releases"><img src="https://img.shields.io/badge/⬇_下载桌面端-macOS_%7C_Windows_%7C_Linux-FF7A00?style=for-the-badge" alt="下载桌面端"></a>
|
||||
</p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/session-new.webp" alt="第一次任务前的空会话"><br><b>从清爽的空会话开始</b><br><sub>项目和权限都在首屏</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/session-main.webp" alt="打开活动面板的真实执行中任务"><br><b>跟着任务一步步往前</b><br><sub>工具调用与阶段进度都留在眼前</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/workspace-diff.webp" alt="工作区 Diff 评审"><br><b>改了什么,逐行看清楚</b><br><sub>放大的高亮 Diff,文字和代码更清楚</sub></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/workspace-preview.webp" alt="内置浏览器预览刚改完的页面"><br><b>改完当场验证</b><br><sub>内置浏览器打开真实本地页面</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/model-picker.webp" alt="显示服务商、预设和本地端点的模型选择器"><br><b>每条会话自选模型</b><br><sub>自己的服务商、预设和本地端点都在一个列表里</sub></td>
|
||||
<td align="center" width="33.33%"><img src="docs/images/app/zh-CN/skill-market.webp" alt="技能市场"><br><b>缺什么手艺装什么</b><br><sub>来源和安全状态摆在明处</sub></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
---
|
||||
|
||||
## 赞助与合作
|
||||
|
||||
本项目由个人利用业余时间维护,欢迎企业或个人赞助支持持续开发,也可洽谈定制、集成或商务合作。
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="220">赞助商</th>
|
||||
<th align="left">介绍</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" valign="middle">
|
||||
<a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">
|
||||
<img src="docs/images/sponsors/atlascloud-logo-black.png#gh-light-mode-only" width="180" alt="Atlas Cloud">
|
||||
<img src="docs/images/sponsors/atlascloud-logo-white.png#gh-dark-mode-only" width="180" alt="Atlas Cloud">
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
感谢 <a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=cc-haha">Atlas Cloud</a> 赞助本项目!Atlas Cloud 是一个全模态 AI 推理平台,让开发者通过统一的 AI API 访问视频生成、图像生成和 LLM API,无需分别维护多个厂商集成,即可调用 300+ 精选模型。cc-haha 已内置 Atlas Cloud 供应商预设,在设置里选择后填入 API Key 即可直接使用。Atlas Cloud 最新推出 <a href="https://www.atlascloud.ai/console/coding-plan">coding plan 优惠</a>,为开发者提供更具性价比的 API 访问预算。
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="middle">
|
||||
<a href="https://www.apismart.ai">
|
||||
<img src="docs/images/sponsors/apismart-logo.png" width="180" alt="ApiSmart">
|
||||
</a>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
感谢 <a href="https://www.apismart.ai">ApiSmart</a> 赞助本项目!ApiSmart 通过单一 API 提供对主流 AI 模型的统一访问。只需一个 API Key,即可通过兼容 OpenAI 的接口连接大语言模型、图像模型和视频模型。轻松切换模型、简化账单管理,并通过智能路由和自动故障转移提升可靠性。
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
📧 **联系邮箱**:relakkes@gmail.com
|
||||
|
||||
---
|
||||
|
||||
## 安装桌面端
|
||||
|
||||
1. 前往 [Releases](https://github.com/NanmiCoder/cc-haha/releases) 下载 macOS / Windows / Linux 桌面端安装包。
|
||||
2. 首次启动后,在桌面端设置里配置模型提供商、API Key 和默认模型。
|
||||
3. 正式 macOS Release 需要经过签名和公证;如果安装的是 draft/unsigned 临时包,首次打开可能仍需手动放行。Windows 未签名安装包可能出现 SmartScreen 提示,点「更多信息」→「仍要运行」即可。详见 [桌面端安装指南](docs/start/install.md)。
|
||||
|
||||
发布可信度与隐私:[Code signing policy](docs/start/code-signing.md) · [隐私与联网说明](docs/start/privacy.md)
|
||||
|
||||
## 从源码启动 CLI
|
||||
|
||||
适合想调试底层 CLI、服务端或自行开发的用户:
|
||||
|
||||
```bash
|
||||
bun install
|
||||
cp .env.example .env
|
||||
./bin/claude-haha
|
||||
```
|
||||
|
||||
更多配置见 [环境变量](docs/cli/env.md) 和 [命令行安装与启动](docs/cli/index.md)。
|
||||
|
||||
---
|
||||
|
||||
## 用户交流群
|
||||
|
||||
使用过程中有问题、想反馈 Bug,或者想看看别人怎么用,欢迎扫码加入 cc-haha 企业微信用户群。也可以直接来 [Issues](https://github.com/NanmiCoder/cc-haha/issues) 提问。企业定制 / 私有化部署 / Agent 定制需求,请联系作者 [NanmiCoder](https://github.com/NanmiCoder)。
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/community/wechat-group-qr.png" width="300" alt="cc-haha 企业微信用户群二维码">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## ☕ 请作者喝杯咖啡
|
||||
|
||||
如果这个项目对您有帮助,欢迎打赏支持,您的每一份支持都是我持续更新的动力 ❤️
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/wechat_pay.jpeg" width="250" alt="微信赞赏"><br>
|
||||
<b>微信赞赏</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<img src="docs/images/donate/zfb_pay.png" width="250" alt="支付宝"><br>
|
||||
<b>支付宝</b>
|
||||
</td>
|
||||
<td align="center" width="33%">
|
||||
<a href="https://buymeacoffee.com/relakkes" target="_blank">
|
||||
<img src="docs/images/donate/bmc_button.png" width="250" alt="Buy Me a Coffee">
|
||||
</a><br>
|
||||
<b>Buy Me a Coffee</b>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
---
|
||||
|
||||
## 桌面端亮点
|
||||
|
||||
- **多会话工作台**:标签页、项目切换、终端入口和会话历史集中管理,侧边栏宽度可拖拽。
|
||||
- **全局搜索**:按 Cmd+K 跨所有会话全文搜索,一键跳到命中位置。
|
||||
- **分支 / Worktree 启动**:新会话可以选择仓库分支,并决定用当前工作树还是隔离 Worktree。
|
||||
- **改动逐个文件审阅**:右侧工作区列出本轮改动,点开就是带语法高亮的 Diff,整轮可撤销。
|
||||
- **内置浏览器预览**:Agent 刚改完的页面直接在应用内渲染,登录态和 Cookie 真实可用。
|
||||
- **五档权限模式**:从「询问权限」到「跳过权限」,危险命令、工具调用和 AI 反问都在桌面端审批。
|
||||
- **模型自选**:Claude / ChatGPT / Grok 官方账号可直接登录;DeepSeek、Kimi、智谱 GLM 等第三方 API 有现成预设;LM Studio、Ollama 的本地模型也接得上。
|
||||
- **图片生成**:聊天中直接生成和编辑图片——ChatGPT / Grok 授权登录即可使用,也支持接入任意 OpenAI 兼容的 Images API。
|
||||
- **MCP 图形化管理**:界面化增删改 MCP Server,支持 STDIO / Streamable HTTP / SSE 三种传输方式与项目私有、共享、全局三种作用域。
|
||||
- **六套配色主题**:纯白、纸墨、经典暖色、青瓷、墨夜、墨夜蓝,可跟随系统深浅色自动切换。
|
||||
- **技能市场**:发现、预览、安装 ClawHub / SkillHub 的第三方技能,来源和安全状态摆在明处。
|
||||
- **会话活动面板**:集中查看任务进度、后台任务、SubAgent 与来源。
|
||||
- **可视化 SubAgent 管理**:图形界面创建和调校子代理,选择模型、工具与权限模式。
|
||||
- **Agent Teams 协作工作台**:桌面端可视化多 Agent 协作团队——成员、任务、通信流和依赖泳道一目了然。
|
||||
- **动态 Workflow 编排**:模型当场编写并运行编排脚本,并发或流水线调度多个子代理,支持阶段视图、中断与断点续跑。
|
||||
- **模型请求追踪**:本地记录每轮模型请求的状态与耗时,可搜索筛选,快速定位卡死或失败调用。
|
||||
- **Computer Use**:让 Agent 在授权后截图、点击、输入并控制桌面应用。
|
||||
- **桌面宠物**:搭搭、弧弧、补补、回回随任务状态换动作,也能自己做一只(默认关闭)。
|
||||
- **H5 远程访问**:扫码用手机浏览器接入当前会话,锁屏切后台都不打断正在跑的任务。
|
||||
- **IM 接入**:通过 Telegram / 飞书 / 微信 / 钉钉 / WhatsApp / 企业微信 / QQ / Slack 远程对话、切换项目和审批权限。
|
||||
- **定时任务与用量统计**:创建计划任务在独立会话执行,并查看本机 Token 使用趋势。
|
||||
|
||||
---
|
||||
|
||||
## 更多文档
|
||||
|
||||
完整文档站:<https://cchaha.ai>
|
||||
|
||||
| 分区 | 文档 |
|
||||
|------|------|
|
||||
| **开始使用** | [这是什么](docs/start/index.md) · [下载与安装](docs/start/install.md) · [连接模型服务](docs/start/models.md) · [跑通第一条会话](docs/start/first-session.md) · [故障排查](docs/start/troubleshooting.md) |
|
||||
| **桌面端功能** | [功能总览](docs/desktop/index.md) · [Computer Use](docs/desktop/computer-use.md) · [桌面宠物](docs/desktop/pets.md) · [手机 H5 与 IM 接力](docs/desktop/remote.md) |
|
||||
| **IM 接入** | [总览与配对流程](docs/im/index.md) · [飞书](docs/im/feishu.md) · [Telegram](docs/im/telegram.md) · [微信](docs/im/wechat.md) · [钉钉](docs/im/dingtalk.md) · [WhatsApp](docs/im/whatsapp.md) · [企业微信](docs/im/wecom.md) · [QQ](docs/im/qq.md) · [Slack](docs/im/slack.md) |
|
||||
| **命令行** | [安装与启动](docs/cli/index.md) · [命令参考](docs/cli/reference.md) · [环境变量](docs/cli/env.md) |
|
||||
| **深入原理** | [桌面端架构](docs/internals/desktop.md) · [多 Agent 系统](docs/internals/agent.md) · [Skills 系统](docs/internals/skills.md) · [记忆系统](docs/internals/memory.md) · [Computer Use 架构](docs/internals/computer-use.md) · [本地 Server 与 API](docs/internals/server.md) · [Channel 系统](docs/internals/channel.md) · [项目结构](docs/internals/structure.md) · [参与贡献与质量门禁](docs/internals/contributing.md) |
|
||||
|
||||
---
|
||||
|
||||
## 技术栈
|
||||
|
||||
| 类别 | 技术 |
|
||||
|------|------|
|
||||
| 语言 | TypeScript |
|
||||
| 桌面 APP | Electron |
|
||||
| 桌面 UI | React + Vite |
|
||||
| 本地运行时 | [Bun](https://bun.sh) |
|
||||
| 终端 UI | React + [Ink](https://github.com/vadimdemedes/ink) |
|
||||
| CLI 解析 | Commander.js |
|
||||
| API | Anthropic SDK |
|
||||
| 协议 | MCP, LSP |
|
||||
|
||||
## 致谢
|
||||
|
||||
感谢以下开源项目和社区实践为本项目提供参考与启发:
|
||||
|
||||
- [React](https://github.com/facebook/react):前端工程与组件化 UI 生态。
|
||||
- [Electron](https://github.com/electron/electron):跨端桌面应用能力与工程实践。
|
||||
- [cc-switch](https://github.com/farion1231/cc-switch):模型供应商配置能力参考。
|
||||
- [LINUX DO](https://linux.do/):新的理想型开发者社区。
|
||||
|
||||
---
|
||||
|
||||
## ⭐ Star History
|
||||
|
||||
如果这个项目对你有帮助,欢迎点一个 ⭐ Star,让更多人发现 Claude Code Haha。
|
||||
|
||||
<a href="https://www.repostars.dev/?repos=NanmiCoder%2Fcc-haha&theme=ocean">
|
||||
<img alt="Star History Chart" src="https://www.repostars.dev/api/embed?repo=NanmiCoder%2Fcc-haha&theme=ocean" />
|
||||
</a>
|
||||
@@ -35,7 +35,7 @@ describe('evaluateChangePolicy', () => {
|
||||
'docs/index.md',
|
||||
'site/src/App.tsx',
|
||||
'README.md',
|
||||
'README.en.md',
|
||||
'README.zh-CN.md',
|
||||
])
|
||||
|
||||
expect(result.blocked).toBe(false)
|
||||
|
||||
@@ -177,7 +177,7 @@ const policyExactPaths = new Set([
|
||||
|
||||
const docsExactPaths = new Set([
|
||||
'README.md',
|
||||
'README.en.md',
|
||||
'README.zh-CN.md',
|
||||
'package.json',
|
||||
'package-lock.json',
|
||||
'.github/workflows/deploy-docs.yml',
|
||||
|
||||
@@ -269,8 +269,8 @@ async function checkLocaleRedirect() {
|
||||
async function main() {
|
||||
const { records } = await generateDocsManifest()
|
||||
const readmes = await Promise.all([
|
||||
{ locale: 'en', sourcePath: 'README.en.md' },
|
||||
{ locale: 'zh', sourcePath: 'README.md' }
|
||||
{ locale: 'en', sourcePath: 'README.md' },
|
||||
{ locale: 'zh', sourcePath: 'README.zh-CN.md' }
|
||||
].map(async (readme) => {
|
||||
const absolutePath = path.join(paths.repoDir, readme.sourcePath)
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user