← 返回目录
C

CKB

社区
了解你的代码。安全地修改。自信地发布。
GitHub 源仓库 ↗
★ 108 Stars 分类 · 开发工具 热门 源版本 041d5ddb7429
43FMRS · D
可靠性
5/20
安全与权限
8/20
维护活跃度
6/20
文档质量
12/20
安装易用性
12/20

CKB是一个功能丰富的代码智能MCP服务器,提供丰富的工具集(80+),涵盖导航、影响分析、架构、安全、所有权和质量。其复合操作和预设可显著减少AI token消耗。主要优势是静态分析能力和支持多种语言,但质量参差不齐(Go最好,PHP实验性)。它需要索引,可能过时,且不处理动态行为。总体而言,非常适用于重构、审阅和AI辅助开发,但需注意静态分析的限制和索引维护。

查看 FMRS 评分方法 →

CKB(代码知识后端)将你的代码库转化为可查询的知识库。它提供80多个MCP工具、CLI和HTTP API,实现符号导航、影响分析、架构映射、死代码检测、秘密扫描、代码所有权等功能。利用SCIP索引、LSP、Git和可选的LIP语义嵌入,为AI助手提供精确的代码智能,或作为CI/CD和自定义工具的后端。它支持如explore、understand和prepareChange等复合操作,可将AI工具调用减少60-70%,并通过预设减少高达77%的token用量。CKB采用分层语言支持,其中Go、TypeScript、JavaScript和Python最佳。

工具能力

explore
区域探索:符号、依赖、热点
understand
符号深潜:引用、调用者、解释
prepareChange
变更前分析:影响、测试、风险
batchGet
一次获取最多50个符号
batchSearch
一次运行最多10个搜索
searchSymbols
语义搜索符号
findReferences
查找对符号的所有引用
callGraph
生成调用图
traceUsage
追踪符号的使用
findEntrypoints
找到代码入口点
impactAnalysis
分析变更的影响范围
riskScore
计算风险分数
affectedTests
找出受影响的测试
compareAPI
比较API向后兼容性
blastRadius
确定爆炸半径
architecture
获取架构概览
moduleOverview
获取模块概览
adrs
检索架构决策记录
dependencyGraph
生成依赖图
explainOrigin
解释符号的起源
findDeadCode
检测死代码
couplingAnalysis
分析耦合度
complexity
计算代码复杂度
hotspots
识别热点区域
ownership
查找代码所有权
reviewerSuggestions
推荐审阅者
driftDetection
检测所有权漂移
detectSecrets
检测暴露的秘密
scanCredentials
扫描凭据
securitySensitive
识别安全敏感代码
docSymbols
文档-符号链接
docStaleness
检查文档过期
docCoverage
文档覆盖率指标
federation
跨仓库查询
openTelemetry
OpenTelemetry集成
observedUsage
观察生产环境使用
streamReferences
流式传输引用
streamSearch
流式传输搜索结果
expandToolset
动态扩展工具集

安装接入

可选方案:1) npm(推荐):npm install -g @tastehub/ckb;2) Homebrew(macOS/Linux):brew tap SimplyLiz/ckb && brew install ckb;3) 从源码构建:git clone https://github.com/SimplyLiz/CodeMCP.git && cd CodeMCP && go build -o ckb ./cmd/ckb。安装后,在项目目录运行ckb init,可选地运行ckb index生成SCIP索引,然后运行ckb setup连接Claude Code。您也可以手动在MCP配置中使用npx @tastehub/ckb mcp

claude_desktop_config.json
{
  "mcpServers": {
    "ckb": {
      "command": "npx",
      "args": [
        "@tastehub/ckb",
        "mcp"
      ]
    }
  }
}

选型与风险

适合谁

  • 使用AI编码助手并希望它们具有精确代码感知能力的开发者
  • 拥有大型代码库且需要高效导航的团队
  • 任何希望安全重构的人
  • 需要全面变更视角的代码审阅者
  • 追踪架构健康度的技术负责人

不适合谁

  • 动态调度或运行时行为分析(需要使用调试器)
  • 未索引的生成代码
  • 代码生成、代码检查或格式化
  • 跨仓库调用(可使用federation)

所需权限

  • 读取代码库文件和git历史
  • 生成和维护SCIP索引(本地文件)
  • 执行指定的MCP服务器进程(stdio)
  • 可选:在访问索引时创建API令牌以进行身份验证
  • 可选的网络访问,用于运行HTTP API服务器

风险与副作用

  • SCIP索引可能过时,导致引用或影响分析不准确
  • 索引较大的代码库可能消耗大量时间和磁盘
  • 动态或反射代码可能被错误分析
  • 可能需要安装SCIP索引器,不同语言的支持质量不同
  • 输入未经静默验证,因此需验证输出

常见排障

  1. 运行`ckb status`检查系统健康
  2. 运行`ckb doctor --tier standard`检查语言工具
  3. 如果索引过时,运行`ckb index`或使用`ckb mcp --watch`
  4. 对于TypeScript monorepos,可能需要`--infer-tsconfig`标志
  5. C/C++需要`compile_commands.json`
  6. 对于最佳搜索质量,手动安装LIP守护进程,或使用`cargo install lip-cli && lip daemon --socket ~/.local/share/lip/lip.sock`启动

使用场景

AI辅助开发(Claude Code、Cursor等)中的语义代码导航
重构前的影响分析和风险评分
识别受影响的测试以缩小测试范围
通过CODEOWNERS和git blame进行代码所有权跟踪和审阅者推荐
死代码检测和技术债务跟踪
秘密扫描和凭据检测以增强安全性
架构映射和模块理解
CI/CD集成,用于PR审查和质量门禁

支持客户端

Claude Desktop完整支持
Claude Code完整支持
Cursor完整支持
Windsurf完整支持
VS Code完整支持
OpenCode完整支持
Grok完整支持