Source: https://seerepo.com/compare/CherryHQ/cherry-studio/vs/NanmiCoder/cc-haha
Markdown source: https://seerepo.com/compare/CherryHQ/cherry-studio/vs/NanmiCoder/cc-haha.md
Description: cherry-studio and cc-haha share 19 technologies: Vite, React, lru-cache, MCP, Anthropic, Electron, grammy, Tailwind CSS, dnd-kit, Lucide, sharp, yaml, turndown, dompurify, katex, pdfjs-dist, qrcode, Zod, and docx-preview. Both are written in TypeScript.

# cherry-studio vs cc-haha

cherry-studio and cc-haha share 19 technologies: Vite, React, lru-cache, MCP, Anthropic, Electron, grammy, Tailwind CSS, dnd-kit, Lucide, sharp, yaml, turndown, dompurify, katex, pdfjs-dist, qrcode, Zod, and docx-preview. Both are written in TypeScript.

- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio): Your AI workspace for models, agents, and productivity.
- [NanmiCoder/cc-haha](https://seerepo.com/r/NanmiCoder/cc-haha): 本地优先的跨平台 Claude Code / AI Agent 桌面工作台：多 Agent 协作、Git Worktree、代码 Diff、技能市场、多模型、Computer Use、桌面宠物；支持微信、飞书、钉钉及 H5 等远程访问。 | Local-first Claude Code / AI Agent desktop workspace: multi-agent teams, Git worktrees, diffs, skills marketplace, multi-model, Computer Use, task-aware desktop pets; remote via WeChat, Feishu, DingTalk, Telegram, WhatsApp & H5.

## What they share and what sets them apart

- In common: Vite, React, lru-cache, MCP, Anthropic, Electron, grammy, Tailwind CSS, dnd-kit, Lucide, sharp, yaml, turndown, dompurify, katex, pdfjs-dist, qrcode, Zod, docx-preview
- Only in cherry-studio: TanStack, SQLite, dexie, electron-store, @aws-sdk/lib-storage, sqlite-vec, OpenAI, Sentry, Hugging Face, Perplexity, PostHog, elysia, @earendil-works/chord, @electron-toolkit/preload, quickjs-wasi, quick-lru, PostCSS, tailwind-merge, tiptap, motion, React Hook Form, @tanstack/react-virtual, react-spinners, react-hotkeys-hook, react-error-boundary, echarts, @uiw/react-codemirror, xyflow, @floating-ui/dom, virtua, emoji-picker-react, @dagrejs/dagre, @pierre/highlights, @react-aria/live-announcer, @viz-js/viz, ansi-to-react, CodeMirror, emoji-picker-element-data, og-crd, react-player, Iconify, @iconify-json/material-icon-theme, Drizzle, @elysia/bearer, ai, ai-sdk, cherrystudio, earendil-works, @vectorstores/core, tesseract.js, @napi-rs/system-ocr, @paddleocr/api-sdk, ollama-ai-provider-v2, partial-json, @opeoginni/github-copilot-openai-compatible, ai-retry, gpt-tokenizer, voyage-ai-provider, unified, streamdown, unist-util-visit, file-type, remark-parse, markdown-it, qrcode.react, strict-url-sanitise, @firecrawl/anydoc, @napi-rs/canvas, htmlparser2, remark-gfm, @vectorstores/readers, fast-xml-parser, officeparser, remove-markdown, @e965/xlsx, @mozilla/readability, @tiptap/markdown, @tryfabric/martian, Cheerio, docx, epub, gray-matter, html-to-image, html-to-text, mdast-util-from-markdown, mediabunny, micromark-util-types, pdf-lib, pdf-parse, remark-math, remark-stringify, telegram-markdown-v2, vfile-location, word-extractor, @hookform/resolvers, typebox, opentelemetry, winston, winston-daily-rotate-file, @agentclientprotocol/sdk, @earendil-works/pi-ai, OpenRouter, @aiden0z/pptx-renderer, fast-formula-parser, exceljs, numfmt, rtf.js, @ai-sdk/provider-utils, class-variance-authority, @uiw/codemirror-themes-all, Radix UI, uiw, @lezer/highlight, @mermanjs/web-render, @viz-js/lang-dot, cmdk, react-day-picker, react-dropzone, react-resizable-panels, vaul, rehype-parse, rehype-stringify, remark-definition-list, remark-github-blockquote-alert, remark-mark-highlight
- Only in cc-haha: react-reconciler, Tauri, tauri-runtime-wry, react-native, Expo, androidx.core:core-ktx, @react-native-async-storage/async-storage, expo-secure-store, com.facebook.react:react-android, x11rb, uiautomation, usehooks-ts, core-graphics, ink, asciichart, cli-boxes, agent-desktop-core, @aws-sdk/client-bedrock-runtime, marked, png, highlight.js, pillow, xss, Ajv, tracing, OpenTelemetry, tracing-subscriber, psutil, prism-react-renderer, xterm, ProseMirror, prosemirror-state, Mermaid, prosemirror-commands, prosemirror-history, prosemirror-keymap, prosemirror-view, react-diff-viewer-continued, react-shiki, tauri-plugin-dialog, tauri-plugin-notification, html2canvas, shiki, xlsx, expo-font, react-native-safe-area-context, react-native-svg, expo-linear-gradient, expo-camera, expo-status-bar, @expo/ui, expo-widgets, react-native-image-viewing, expo-image-picker, expo-document-picker, expo-image-manipulator

## Side by side

| | cherry-studio | cc-haha |
|---|---|---|
| Size | 1,788,458 lines written, 6,208 code files | 1,895,975 lines written, 5,295 code files |
| Who writes it | 11.9% of its commits signed by AI. With Claude Code, GitHub Copilot, Cursor, Factory, Jules, Amp, Qwen Code, and Codex | 15.2% of its commits signed by AI. With Claude Code, Codex, and GitHub Copilot |
| Activity | Last push November 10, 2026, 10,134 commits, 53,389 stars | Last push November 9, 2026, 2,228 commits, 15,369 stars |
| Tests | 3,273 test files. 48% of its code files have a test that imports them | 3,172 test files. 50.9% of its code files have a test that imports them |

- Size: Lines written by people and agents, without generated ones; code files, without tests.
- Who writes it: A commit counts as AI's when it carries its signature: a Co-Authored-By line, its author name or the merge of its branch.
- Activity: From GitHub and its history, on the day SeeRepo read it.
- Tests: The files that test the code, and the share of code files a test imports.

## Frequently asked questions

### Which is bigger, cherry-studio or cc-haha?

cc-haha, with 1,895,975 lines written; cherry-studio has 1,788,458.

The proof: [NanmiCoder/cc-haha's code at commit 9800f4b](https://github.com/NanmiCoder/cc-haha/tree/9800f4b5b3747e758d61d9bf8f8886edbb202039)

### Which has more GitHub stars, cherry-studio or cc-haha?

cherry-studio, with 53,389 stars; cc-haha has 15,369.

The proof: [CherryHQ/cherry-studio on GitHub](https://github.com/CherryHQ/cherry-studio)

### Which has more tests, cherry-studio or cc-haha?

cherry-studio, with 3,273 test files; cc-haha has 3,172.

The proof: [CherryHQ/cherry-studio's code at commit 321e3dd](https://github.com/CherryHQ/cherry-studio/tree/321e3dda993aea22bb47360d29cf9f00c1b8aee3)

### Which was updated more recently, cherry-studio or cc-haha?

cherry-studio: its last push was on November 10, 2026, and cc-haha's on November 9, 2026.

The proof: [CherryHQ/cherry-studio's commits on GitHub](https://github.com/CherryHQ/cherry-studio/commits)

### Which has more commits signed by AI, cherry-studio or cc-haha?

cc-haha: an AI signed 15.2% of its commits, with Claude Code, Codex, and GitHub Copilot; in cherry-studio, 11.9%.

The proof: [the commits each tool signed in NanmiCoder/cc-haha](https://seerepo.com/r/NanmiCoder/cc-haha/ai)

## Sources

- CherryHQ/cherry-studio: Read on November 10, 2026, at commit 321e3dd (https://github.com/CherryHQ/cherry-studio/tree/321e3dda993aea22bb47360d29cf9f00c1b8aee3)
- NanmiCoder/cc-haha: Read on November 9, 2026, at commit 9800f4b (https://github.com/NanmiCoder/cc-haha/tree/9800f4b5b3747e758d61d9bf8f8886edbb202039)

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
