* docs: 修正 docs/conversation 文档与源码的偏差(multi-turn/streaming/the-loop) - multi-turn: TranscriptWriter→Project 私有类, 会话路径改用 sanitized-cwd, 补充 StoredCostState.lastDuration 字段, 模型切换改为 setModel(), QueryEngine 状态补全 loadedNestedMemoryPaths/hasHandledOrphanedPermission, 行号改为符号引用 - streaming: STALL_THRESHOLD_MS 10s→30s, 新增 90s 主动空闲看门狗描述, 非流式降级补充 didFallBackToNonStreaming/executeNonStreamingRequest, 行号改为符号引用 - the-loop: 终止条件 7→11, 继续条件重整为 5 组层级结构, max_output_tokens 拆分 escalate/recovery 子阶段, prompt-too-long 拆分 collapse_drain/reactive_compact 子策略, State 类型修正 autoCompactTracking 为可选, 行号改为符号引用 - 全部: 添加 sourceRef 版本锚定(3ec5675) * docs: 修正 docs/extensibility 文档与源码的偏差(custom-agents/hooks/skills) - custom-agents: Verification 模型修正为 inherit, 补充 Plugin Agent 字段限制 (permissionMode/hooks/mcpServers 被安全忽略, isolation 仅 worktree), 加载流程修正为 6 层优先级, 补充 memory snapshot 门控条件 - hooks: 事件数 22→27(补充 Notification), Hook 类型定义位置修正为 3 个文件, 行号改为符号引用, Zod schema 范围修正, 去重键修正为四部分复合键, registerFrontmatterHooks/clearSessionHooks 区分定义位置和调用位置 - skills: 字段数 17→16, 权限层级 4→5(补充 remote canonical auto-allow), SAFE_SKILL_PROPERTIES 28→30, skillUsageTracking 路径修正, 行号改为符号引用 - mcp-protocol: 全部验证通过, 无需修改 - 全部: 添加 sourceRef 版本锚定(3ec5675) * Revert "docs: 修正 docs/extensibility 文档与源码的偏差(custom-agents/hooks/skills)" * docs: 修正 docs/extensibility 文档与源码的偏差(hooks/skills/mcp-protocol) hooks: - 事件数 22→27(补充 Notification 事件) - Hook 类型定义位置修正为 3 个文件分布 (schemas/hooks.ts / types/hooks.ts / utils/hooks/sessionHooks.ts) - Zod schema 引用从硬编码行号改为符号引用 - hookSpecificOutput 表从 6 扩展至 15 个事件 (补全 permissionDecisionReason / PostToolUseFailure / SubagentStart 等) - 去重键从 pluginRoot\0command 修正为四部分复合键 (pluginRoot\0shell\0command\0ifCondition) - 全部硬编码行号改为符号引用以避免版本漂移 skills: - parseSkillFrontmatterFields 字段数 17→16 - SAFE_SKILL_PROPERTIES 属性数 28→30 - checkPermissions 层级 4→5 - 第 2 层描述从"官方市场"修正为"远程 canonical" mcp-protocol: - 配置层级从"三级"修正为 "enterprise 独占或合并 user/project/local + plugin + claude.ai" * docs: 修正 system-prompt.mdx 中 Boundary 章节的层级与可读性 - Boundary 插入条件从 ### 降为 blockquote,不再打断三种分块模式的并列结构 - 表格中 Boundary 缓存策略列补充说明其分割作用 - 新增 Boundary 概念释义(blockquote),解释其分割静态区/动态区以实现全局缓存的设计意图
Claude Code Best V5 (CCB)
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
- 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.jsonunder theenvkey, 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
-
Start inspect server in terminal:
bun run dev:inspectThis outputs an address like
ws://localhost:8888/xxxxxxxx. -
Attach debugger from VS Code:
- Set breakpoints in
src/files - Press F5 → select "Attach to Bun (TUI debug)"
- Set breakpoints in
Documentation & Links
- Online docs (Mintlify): ccb.agent-aura.top — source in
docs/, PR contributions welcome - DeepWiki: https://deepwiki.com/claude-code-best/claude-code
Contributors
Star History
License
This project is for educational and research purposes only. All rights to Claude Code belong to Anthropic.