codegraph-summary
README.md
# codegraph-summary
> CodeGraph 中文语义摘要工具 — 为代码符号生成中文业务摘要,支持语义搜索和 PRD 关联分析。
将代码知识图谱与 LLM 结合,让你用中文业务术语搜索代码、理解系统架构、追踪需求覆盖。
## 特性
- **一键初始化** — `codegraph-summary init` 自动构建索引 + 生成摘要
- **中文语义搜索** — 用 "交易查询"、"清退流程" 等业务术语搜索代码
- **FTS5 trigram** — 高质量中文子串匹配,无需分词器
- **图谱扩展** — 搜索结果展示调用链(谁调用了它、它调用了谁)
- **PRD 关联** — 导入需求文档,自动关联到代码实现
- **多协议 LLM** — 支持 Anthropic / OpenAI 兼容 API
- **启发式降级** — 无 LLM API Key 时仍可生成基础摘要
- **三种接口** — CLI / HTTP API / MCP Server
## 快速开始
### 安装
```bash
npm install -g codegraph-summary
```
需要先安装 [CodeGraph](https://github.com/colbymchenry/codegraph):
```bash
npm install -g @colbymchenry/codegraph
```
### 一键初始化
```bash
cd your-project
codegraph-summary init
```
这会自动完成:
1. 构建 CodeGraph 代码索引(如果不存在)
2. 用 LLM 为所有导出符号生成中文摘要
### 配置 LLM(可选)
在项目根目录创建 `.env` 文件:
```env
SUMMARY_LLM_API_KEY=your-api-key
SUMMARY_LLM_BASE_URL=https://api.anthropic.com
SUMMARY_LLM_MODEL=claude-sonnet-4-20250514
SUMMARY_LLM_API_TYPE=anthropic
```
不配置 API Key 也能用(启发式模式,用函数签名作为摘要)。
## 使用
### 搜索代码
```bash
codegraph-summary search "交易查询" -p /path/to/project
```
### 查看状态
```bash
codegraph-summary status -p /path/to/project
```
### 强制重新生成
```bash
codegraph-summary init -f
codegraph-summary generate -f -p /path/to/project
```
### PRD 关联
```bash
# 导入 PRD 文档(支持 .md / .docx / .pdf / .txt)
codegraph-summary prd-import ./docs/prd.md -p /path/to/project
# 用需求描述搜索代码
codegraph-summary prd-search "用户清退流程" -p /path/to/project
# 查看需求覆盖率
codegraph-summary prd-coverage -p /path/to/project
```
### MCP Server(AI 助手集成)
```bash
codegraph-summary mcp
```
在 Claude Code 的 MCP 配置中添加即可让 AI 助手直接搜索代码摘要。
### HTTP API
```bash
codegraph-summary serve --port 3000
```
## 环境变量
| 变量 | 说明 | 默认值 |
|------|------|--------|
| `SUMMARY_LLM_API_KEY` | LLM API Key | (空,启发式模式) |
| `SUMMARY_LLM_BASE_URL` | LLM API 地址 | (空) |
| `SUMMARY_LLM_MODEL` | 模型名称 | (空) |
| `SUMMARY_LLM_API_TYPE` | `anthropic` 或 `openai` | `anthropic` |
| `SUMMARY_LLM_BATCH_SIZE` | 每批符号数量 | `10` |
| `SUMMARY_LLM_CONCURRENCY` | 并发请求数 | `3` |
| `SUMMARY_VECTOR_GATEWAY_URL` | 向量服务地址(可选) | (空) |
| `CODEGRAPH_BIN` | 自定义 codegraph 路径 | (自动查找) |
## 系统要求
- Node.js >= 22.5.0
- [CodeGraph](https://github.com/colbymchenry/codegraph) (用于代码索引)
- PDF 支持需要 `poppler-utils`(macOS: `brew install poppler`)
- DOCX 支持需要 `unzip` 命令
## License
MIT
TDQS
A3.7/5.0
Scored across 6 tools
Disambiguation5/5
Each tool has a distinct purpose: generating summaries, importing PRDs, searching via PRD or summaries, analyzing coverage, and checking status. No overlap.
Naming Consistency5/5
Tool names follow a clear domain_action pattern: 'summary_generate', 'prd_import', 'prd_search', etc. Consistent prefixing and verb usage.
Tool Count5/5
6 tools is well-scoped for the server's purpose of code summary and PRD management. Not excessive or insufficient.
Completeness4/5
Covers core workflows: generation, import, search, coverage, status. Minor gap: no explicit tool for deleting or updating individual summaries, but incremental generation works around.
Maintenance
ActivitySlowing
ResponsivenessNo issues