项目简介
CKB(Code Knowledge Backend)是一个语言无关的代码库理解层,能够协调现有的代码智能后端(SCIP、LSP、Git),为LLM提供语义压缩、优化的视图。
主要功能
- 符号导航 - 快速查找函数、类和变量
- 调用流程追踪 - 从API端点、CLI命令或作业追踪代码调用路径
- 影响分析 - 评估重构变更的风险和影响范围
- 架构图谱 - 生成模块依赖关系图
- 所有权智能 - 结合CODEOWNERS和git-blame分析代码归属
- 热点检测 - 跟踪变更趋势和风险预测
- 死代码检测 - 基于使用分析给出保留/调查/移除建议
- 跨仓库联邦查询 - 支持多代码库的联合分析
- 运行时可观测性 - 结合OpenTelemetry数据增强静态分析
- 开发智能分析 - 代码起源追踪、共变耦合分析
安装步骤
- 克隆并构建项目:
git clone https://github.com/SimplyLiz/CodeMCP.git cd CodeMCP go build -o ckb ./cmd/ckb
- 在项目中初始化:
cd /path/to/your/project /path/to/ckb init
- 生成代码索引(以Go为例):
go install github.com/sourcegraph/scip-go/cmd/scip-go@latest scip-go --repository-root=.
MCP服务器配置
CKB作为MCP服务器运行,通过stdio传输协议与客户端通信。
配置信息(JSON格式):
{ "mcpServers": { "ckb": { "command": "/path/to/ckb", "args": ["mcp"] } }
基本使用方法
启动MCP服务器:
ckb mcp --stdio
连接Claude Code:
claude mcp add --transport stdio ckb -- /path/to/ckb mcp
验证连接:
claude mcp list
支持的工具
CKB通过MCP协议暴露58个代码智能工具,包括:
- 'searchSymbols' - 按名称搜索符号
- 'getSymbol' - 获取符号详细信息
- 'findReferences' - 查找所有引用
- 'analyzeImpact** - 变更风险分析
- 'getArchitecture** - 架构概览
- 'traceUsage' - 追踪符号使用路径
- 'getHotspots' - 获取代码热点
- 'explainSymbol' - AI友好的符号解释
- 'getCallGraph' - 调用者/被调用者关系
- 'listEntrypoints' - 系统入口点列表
- 'auditRisk** - 多信号风险审计
信息
分类
开发者工具