原汁原昧 Claude Code 可运行,可构建, 可调试版; 生产级工程化, 企业级可靠性; 安全无毒, 内存泄露修复
Go to file
claude-code-best bddd146f25
feat: 重构供应商层次 (#286)
* refactor: 创建 @anthropic-ai/model-provider 包骨架与类型定义

- 新建 workspace 包 packages/@anthropic-ai/model-provider
- 定义 ModelProviderHooks 接口(依赖注入:分析、成本、日志等)
- 定义 ClientFactories 接口(Anthropic/OpenAI/Gemini/Grok 客户端工厂)
- 搬入核心类型:Message 体系、NonNullableUsage、EMPTY_USAGE、SystemPrompt、错误常量
- 主项目 src/types/message.ts 等改为 re-export,保持向后兼容

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: 提升 OpenAI 转换器和模型映射到 model-provider 包

- 搬入 OpenAI 消息转换(convertMessages)、工具转换(convertTools)、流适配(streamAdapter)
- 搬入 OpenAI 和 Grok 模型映射(resolveOpenAIModel、resolveGrokModel)
- 主项目文件改为 thin re-export proxy

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: 搬入 Gemini 兼容层到 model-provider 包

- 搬入 Gemini 类型定义、消息转换、工具转换、流适配、模型映射
- 主项目 gemini/ 目录下文件改为 thin re-export proxy

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: 搬入 errorUtils 并迁移消费者导入到 model-provider

- 搬入 formatAPIError、extractConnectionErrorDetails 等 errorUtils
- 迁移 10 个消费者文件直接从 @anthropic-ai/model-provider 导入
- 更新 emptyUsage、sdkUtilityTypes、systemPromptType 为 re-export proxy

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: compact 模型降级为 -1 模式(Opus→Sonnet, Sonnet→Haiku)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs: 添加 agent-loop 绘图

* Revert "feat: compact 模型降级为 -1 模式(Opus→Sonnet, Sonnet→Haiku)"

This reverts commit e458d6391d.

* docs: 添加简化版 agent loop

* fix: 修复 n 快捷键导致关闭的问题

* fix: 修复 node 下 ws 没打包问题

* docs: 修复链接

* test: 添加测试支持

* fix: 修复类型问题(#267) (#271)

* fix: 修复 Bun 的 polyfill 问题

* fix: 类型修复完成

* feat: 统一所有包的类型文件

* fix: 修复构建问题

* test: 修复类型校验 (#279)

* fix: 修复 Bun 的 polyfill 问题

* fix: 类型修复完成

* feat: 统一所有包的类型文件

* fix: 修复构建问题

* fix(remote-control): harden self-hosted session flows (#278)

Co-authored-by: chengzifeng <chengzifeng@meituan.com>

* docs: update contributors

* build: 新增 vite 构建流程

* feat: 添加环境变量支持以覆盖 max_tokens 设置

* feat(langfuse): LLM generation 记录工具定义

将 Anthropic 格式的工具定义转换为 Langfuse 兼容的 OpenAI 格式,
并在 generation 的 input 中以 { messages, tools } 结构传入,
以便在 Langfuse UI 中查看完整的工具定义信息。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: 添加对 ACP 协议的支持 (#284)

* feat: 适配 zed acp 协议

* docs: 完善 acp 文档

* chore: 1.4.0

* conflict: 解决冲突

* feat: 添加测试覆盖率上报

* style: 改名加移动文件夹位置

* refactor: 移动测试用例及实现

* test: 修复测试用例完成

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Cheng Zi Feng <1154238323@qq.com>
Co-authored-by: chengzifeng <chengzifeng@meituan.com>
Co-authored-by: claude-code-best <272536312+claude-code-best@users.noreply.github.com>
2026-04-17 09:33:14 +08:00
.claude feat: 添加 interview 模式 2026-04-06 14:59:06 +08:00
.githooks claude-code with OpenAI mode fix (#102) 2026-04-04 10:54:13 +08:00
.github/workflows feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
.vscode fix: 删除 debug 限制 2026-04-07 16:13:15 +08:00
docs feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
learn Learn/20260401 (#39) 2026-04-02 21:47:49 +08:00
packages feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
scripts Feat/integrate lint preview (#285) 2026-04-16 20:59:29 +08:00
src feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
tests Feat/integrate lint preview (#285) 2026-04-16 20:59:29 +08:00
vendor feat: enable /voice mode with native audio binaries 2026-04-03 21:14:44 +08:00
.dockerignore feat: 支持自托管的 remote-control-server (#214) 2026-04-09 17:40:50 +08:00
.editorconfig feat: 配置 Biome 代码格式化与校验工具 2026-04-01 01:40:27 +08:00
.gitignore Feat/integrate lint preview (#285) 2026-04-16 20:59:29 +08:00
.mintignore fix: 修复 mintlify ignore, 修复侧边栏 2026-04-10 18:14:07 +08:00
biome.json chore: 调整配置 2026-04-01 09:52:43 +08:00
build.ts Feat/integrate lint preview (#285) 2026-04-16 20:59:29 +08:00
bun.lock feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
bunfig.toml feat: 搭建单元测试基础设施 — Bun test runner + 示例测试 2026-04-01 02:08:38 +08:00
CLAUDE.md fix: 修复类型问题(#267) (#271) 2026-04-15 10:54:00 +08:00
contributors.svg docs: update contributors 2026-04-16 02:46:47 +00:00
DEV-LOG.md feat: 远程群控 (#243) 2026-04-11 23:22:55 +08:00
docs.json docs: 尝试 docs 文档更新 2026-04-10 10:15:19 +08:00
Friends.md docs: 新增留影文档 2026-04-06 11:04:13 +08:00
knip.json feat: 添加 knip 冗余代码检查工具 2026-04-01 04:57:34 +08:00
mint.json feat: 工具层及 mcp 大重构 (#252) 2026-04-13 09:52:05 +08:00
package.json feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
README_EN.md 更新大量 tsx 原始文件; 已经迁移 login panel; 部分 (#121) 2026-04-04 23:24:27 +08:00
README.md feat: 添加对 ACP 协议的支持 (#284) 2026-04-16 20:31:50 +08:00
SECURITY.md Create SECURITY.md 2026-04-01 08:54:08 +08:00
tsconfig.base.json feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
tsconfig.json feat: 重构供应商层次 (#286) 2026-04-17 09:33:14 +08:00
V6.md Revert "docs: 更新 README,新增 Run.ps1/TODO.md,删除 V6.md" 2026-04-04 23:31:21 +08:00
vite.config.ts build: 新增 vite 构建流程 2026-04-16 12:39:19 +08:00

Claude Code Best V5 (CCB)

GitHub Stars GitHub Contributors GitHub Issues GitHub License Last Commit Bun

Which Claude do you like? The open source one is the best.

A reverse-engineered / decompiled source restoration of Anthropic's official Claude Code CLI tool. The goal is to reproduce most of Claude Code's functionality and engineering capabilities. It's abbreviated as CCB.

Documentation (Chinese) — PR contributions welcome.

Sponsor placeholder.

  • v1: Basic runability and type checking pass
  • V2: Complete engineering infrastructure
    • Biome formatting may not be implemented first to avoid code conflicts
    • Build pipeline complete, output runnable on both Node.js and Bun
  • V3: Extensive documentation and documentation site improvements
  • V4: Large-scale test suite for improved stability
    • Buddy pet feature restored Docs
    • Auto Mode restored Docs
    • All features now configurable via environment variables instead of bun --feature
  • V5: Enterprise-grade monitoring/reporting, missing tools补全, restrictions removed
    • Removed anti-distillation code
    • Web search capability (using Bing) Docs
    • Debug mode support Docs
    • Disabled auto-updates
    • Custom Sentry error reporting support Docs
    • Custom GrowthBook support (GB is open source — configure your own feature flag platform) Docs
    • Custom login mode — configure Claude models your way
  • V6: Large-scale refactoring, full modular packaging
    • V6 will be a new branch; main branch will be archived as a historical version

I don't know how long this project will survive. Star + Fork + git clone + .zip is the safest bet.

This project updates rapidly — Opus continuously optimizes in the background, with new changes almost every few hours.

Claude has burned over $1000, out of budget, switching to GLM to continue; @zai-org GLM 5.1 is quite capable.

Quick Start

Prerequisites

Make sure you're on the latest version of Bun, otherwise you'll run into all sorts of weird bugs. Run bun upgrade!

  • Bun >= 1.3.11
  • Standard Claude Code configuration — each provider has its own setup method

Install

bun install

Run

# Dev mode — if you see version 888, it's working
bun run dev

# Build
bun run build

The build uses code splitting (build.ts), outputting to dist/ (entry dist/cli.js + ~450 chunk files).

The build output runs on both Bun and Node.js — you can publish to a private registry and run directly.

If you encounter a bug, please open an issue — we'll prioritize it.

First-time Setup /login

After the first run, enter /login in the REPL to access the login configuration screen. Select Anthropic Compatible to connect to third-party API-compatible services (no Anthropic account required).

Fields to fill in:

Field Description Example
Base URL API service URL https://api.example.com/v1
API Key Authentication key sk-xxx
Haiku Model Fast model ID claude-haiku-4-5-20251001
Sonnet Model Balanced model ID claude-sonnet-4-6
Opus Model High-performance model ID claude-opus-4-6
  • Tab / Shift+Tab to switch fields, Enter to confirm and move to the next, press Enter on the last field to save
  • Model fields auto-fill from current environment variables
  • Configuration saves to ~/.claude/settings.json under the env key, effective immediately

You can also edit ~/.claude/settings.json directly:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.example.com/v1",
    "ANTHROPIC_AUTH_TOKEN": "sk-xxx",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-6"
  }
}

Supports all Anthropic API-compatible services (e.g., OpenRouter, AWS Bedrock proxies, etc.) as long as the interface is compatible with the Messages API.

Feature Flags

All feature toggles are enabled via FEATURE_<FLAG_NAME>=1 environment variables, for example:

FEATURE_BUDDY=1 FEATURE_FORK_SUBAGENT=1 bun run dev

See docs/features/ for detailed descriptions of each feature. Contributions welcome.

VS Code Debugging

The TUI (REPL) mode requires a real terminal and cannot be launched directly via VS Code's launch config. Use attach mode:

Steps

  1. Start inspect server in terminal:

    bun run dev:inspect
    

    This outputs an address like ws://localhost:8888/xxxxxxxx.

  2. Attach debugger from VS Code:

    • Set breakpoints in src/ files
    • Press F5 → select "Attach to Bun (TUI debug)"

Contributors

Star History

Star History Chart

License

This project is for educational and research purposes only. All rights to Claude Code belong to Anthropic.