Skip to content

DaiOwen/code-knowledge-graph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Code Knowledge Graph - 代码知识图谱问答系统

基于 GraphRAG 的智能代码分析平台,支持代码结构解析、业务语义推断、自然语言问答和代码溯源。

License: MIT Java Spring Boot Vue

✨ 功能特性

功能 说明 状态
🔍 代码结构解析 类、方法、字段、调用关系、继承关系 ✅ 已完成
🧠 智能问答 自然语言查询代码,四层架构,28个模板,三层fallback ✅ 已完成
📊 图谱可视化 WebGL 渲染,多布局切换,5000+ 节点流畅 ✅ 已完成
🔗 代码溯源 Git 提交历史追溯,定位代码作者 ✅ 已完成
📝 代码定位 Monaco Editor + 面包屑导航 + Git 历史版本对比 ✅ 已完成
🔄 自动同步 Webhook + 定时任务自动更新图谱 ✅ 已完成
🌐 多 LLM 支持 OpenAI / 通义千问 / DeepSeek / Anthropic / Azure ✅ 已完成
📦 ZIP 上传导入 上传 ZIP 文件快速导入项目代码 ✅ 已完成
📂 文件夹拖拽导入 拖拽文件夹批量导入项目代码 ✅ 已完成
🔎 代码质量分析 复杂度、异味、安全风险、热点检测、死代码发现 ✅ 已完成
🧩 MCP 服务暴露 12 个 MCP Tool,SSE + stdio 双传输 ✅ 已完成
🎯 向量语义检索 TF-IDF + 余弦相似度混合检索 (70% 向量 + 30% Jaccard) ✅ 已完成
🏷️ 业务语义推断 业务域、流程、实体自动识别 ✅ 已完成
🏗️ 多模块支持 Maven/Gradle 多模块检测,模块依赖图,跨模块调用推断 ✅ 已完成
👥 项目成员管理 OWNER/ADMIN/MEMBER 角色体系 ✅ 已完成
📖 代码阅读策略 Pipeline (轻量) / Agent (深度) 双策略自动路由 ✅ 已完成
🌙 深色主题 赛博朋克风格暗色模式,90+ CSS 变量,主题感知图谱渲染 ✅ 已完成
💬 流式问答 SSE 实时 Token 流式输出,V2 四层管道阶段指示 ✅ 已完成
🔁 多轮对话 上下文感知追问,代词消解,相似问题复用 ✅ 已完成

🚀 快速开始

方式一:Docker Compose(推荐)

# 1. 克隆项目
git clone https://github.com/DaiOwen/code-knowledge-graph.git
cd code-knowledge-graph

# 2. 创建配置文件
cp .env.example .env
# 编辑 .env 文件,配置 LLM_API_KEY 等必要参数

# 3. 启动所有服务
docker-compose -f docker-compose.prod.yml up -d

# 4. 访问系统
# 前端: http://localhost
# 后端: http://localhost:8080/api
# Neo4j Browser: http://localhost:7474

方式二:本地开发

# 1. 启动基础设施
docker-compose up -d neo4j postgres redis

# 2. 启动后端
cd backend
export LLM_API_KEY=your-api-key
mvn spring-boot:run

# 3. 启动前端
cd frontend
npm install
npm run dev

环境要求

软件 版本 说明
Docker 20.10+ 容器化部署
Docker Compose 2.0+ 服务编排
Java 17+ 本地开发后端
Node.js 18+ 本地开发前端
Maven 3.8+ 后端构建
codegraph latest 代码解析引擎(Docker 部署已内置)

📖 详细文档

文档 说明
完整操作手册 快速启动、项目管理、代码同步、智能问答、API 接口
部署运维指南 生产环境部署与运维配置
用户快速上手 5 分钟快速上手指南
系统架构设计 系统架构与详细设计文档
项目进度与里程碑 开发进度与里程碑追踪
后续开发计划 后续开发路线图
渐进式优化设计方案 详细设计文档
Phase 1 实施计划 问答系统重构实施计划
MCP 服务暴露设计 MCP Tool 设计与实现
MCP 集成使用说明 MCP 客户端接入指南

🎯 使用示例

智能问答

问题: "谁调用了 createOrder 方法?"

回答:
createOrder 方法被以下位置调用:

1. OrderController.createOrder()
   文件: src/main/java/OrderController.java:25

2. OrderService.processOrder()
   文件: src/main/java/OrderService.java:42

图谱可视化

  • 🔵 蓝色节点:类/接口
  • 🟢 绿色节点:方法
  • 🟡 黄色节点:模块
  • 🔴 红色节点:业务域
  • 🟠 橙色节点:业务流程/实体
  • 绿色实线箭头:CALLS 调用关系
  • 蓝色虚线:EXTENDS / IMPLEMENTS 继承/实现
  • 深色模式下自动切换为霓虹色调,支持 4 种布局(力导向/层次/环形/网格)

代码导入

支持四种导入方式:

  1. Git URL 克隆 — 输入仓库地址自动克隆
  2. ZIP 文件上传 — 上传 ZIP 压缩包导入
  3. 文件夹拖拽 — 拖拽本地文件夹批量导入
  4. 本地路径 — 指定服务器本地路径导入

代码同步

支持三种同步方式:

  1. Webhook 自动触发 — GitLab / GitHub / Gitee Push Event
  2. 定时增量同步 — 每小时检查更新
  3. 手动触发 — API 或界面操作

深色主题

系统支持亮色/深色双主题,通过侧边栏或设置页切换:

  • 亮色模式:iOS 风格,白色/半透明背景,蓝色主色调 (#007AFF)
  • 深色模式:赛博朋克风格,深蓝背景,青色主色调 (#00f0ff) + 发光效果
  • 90+ CSS 变量 (--ckg-* 命名空间) 覆盖全局样式
  • 图谱节点、Monaco 编辑器、Element Plus 组件均随主题自动适配
  • 300ms 平滑过渡动画

代码质量分析

说明:代码质量分析基于项目已有的 Neo4j 知识图谱数据,采用自研启发式分析器,未依赖 SonarQube / PMD / Checkstyle 等外部工具,解析完成后即可使用,零配置零依赖。

数据来源

分析器通过 3 条 Cypher 查询从 Neo4j 获取原始数据:

查询 数据 用途
MATCH (m:Method) → name, fullName, filePath, startLine, endLine, signature 所有方法节点 异味检测、安全风险、热点、方法指标
MATCH (c:Class) → name, fullName, filePath 所有类节点 统计 totalClasses
MATCH (caller:Method)-[:CALLS]->(m:Method) → 被调方法的 fullName 调用关系边 死代码检测

五项分析逻辑

1. 方法指标(MethodMetrics)— 纯统计

指标 计算方式
方法行数 endLine - startLine(含空行和注释)
平均/中位数行数 全部方法行数的描述性统计
长方法 行数 > 50 行
超长方法 行数 > 100 行
长方法占比 longMethodCount / totalMethods × 100%

2. 代码异味(Code Smells)— 阈值 + 签名解析

类型 检测方式 阈值 严重性
VERY_LONG_METHOD endLine - startLine > 100 100 行 HIGH
LONG_METHOD endLine - startLine > 50 50 行 MEDIUM
TOO_MANY_PARAMETERS 解析方法签名中的逗号数(正确处理泛型 <> 嵌套,如 Map<String, Integer> 计为 1 个参数) > 5 个参数 MEDIUM
POOR_NAMING 方法名长度 ≤ 2(排除 go/do/id/ok) LOW

枚举中还声明了 DEEP_NESTINGDUPLICATE_CODEGOD_CLASS,暂未实现检测逻辑。

3. 安全风险(Security Risks)— 方法名关键词匹配

对方法名做 toLowerCase().contains(keyword) 匹配,分两组:

类型 关键词 严重性
SENSITIVE_OPERATION password, passwd, secret, token, auth, login, credential, encrypt, decrypt, hash, salt, key, certificate, validate, verify, check, sanitize, escape, encode MEDIUM
POTENTIAL_INJECTION exec, execute, eval, runtime, process, script, sql, query, statement, upload, download, file, read, write, delete, remove, drop HIGH

去重逻辑:同一方法名 + 类型只保留严重性最高的。> ⚠️ 仅基于方法名推断,不看代码内容和数据流,属于"名称暗示风险"而非"代码确实有风险",可能产生误报。

4. 死代码检测(Dead Code)— 知识图谱调用关系分析

核心逻辑:如果一个 Method 节点不是任何 CALLS 边的目标 → 没有被其他方法调用 → 可能是死代码

排除规则(以下方法即使无显式调用者也不算死代码):

  • 框架方法:toStringhashCodeequalsclonecompareTo
  • 构造函数:<init><clinit>
  • Getter / Setter / 谓词:get*set*is*has*can*should*
  • 入口方法:maininitsetuprunhandleonCreatedoGet 等 Spring/Servlet 生命周期方法

置信度估算(基础 0.5,范围 0.1 ~ 0.95):

  • 方法名以 _internal 开头:+0.2(更像私有死代码)
  • 文件路径含 /test/:-0.3(测试框架调用,非死代码可能性大)
  • 方法名以 helperutil 开头:+0.1

按置信度降序排列,最多返回 50 个候选。

5. 热点方法(Hotspots)— 启发式复杂度估算

estimatedComplexity = lines × 0.3 + paramCount × 2 + 名称加分

名称加分:

  • process / handle / execute:+5
  • validate / check / verify:+3
  • parse / convert / transform:+4

筛选:复杂度 > 5 的方法,按复杂度降序,最多返回 20 个。风险等级:>20 → HIGH,>10 → MEDIUM,其余 → LOW。

⚠️ 这不是真正的圈复杂度(Cyclomatic Complexity),代码注释也明确说明"真正的圈复杂度需要解析AST"。

综合评分(0-100 扣分制)

起始 100 分,扣分项:

扣分项 每项扣分
HIGH 代码异味 -3
MEDIUM 代码异味 -1.5
LOW 代码异味 -0.5
HIGH 安全风险 -5
MEDIUM 安全风险 -2
长方法占比 -0.5 × 百分比

最低 0 分。评分 ≥ 80 为"优秀",≥ 60 为"一般",< 60 为"较差"。

优势与局限

优势 局限
零配置零依赖,解析完即可用 行数用 endLine - startLine 估算,非真正有效代码行
死代码检测利用图谱 CALLS 关系,比纯静态分析更有价值 安全风险只看方法名,不看代码内容/数据流,误报率较高
与项目深度集成,每个发现可直接跳转到源码 缺少深层嵌套、重复代码、上帝类的检测
没有圈复杂度、认知复杂度等标准指标

📁 项目结构

code-knowledge-graph/
├── backend/                 # Spring Boot 后端
│   ├── src/main/java/       # Java 源码
│   │   └── com/example/ckg/
│   │       ├── controller/  # REST API 接口 (9 个控制器)
│   │       ├── service/
│   │       │   ├── parse/   # 代码解析 (13 个文件)
│   │       │   ├── qa/      # 智能问答 (21 个文件)
│   │       │   │   └── code/ # 代码阅读策略 (7 个文件)
│   │       │   ├── project/ # 项目管理 (5 个文件)
│   │       │   ├── quality/ # 代码质量分析
│   │       │   ├── semantic/# 业务语义推断 (7 个文件)
│   │       │   ├── sync/    # 增量同步 (2 个文件)
│   │       │   ├── webhook/ # Webhook 处理
│   │       │   ├── llm/     # LLM 适配 (2 个文件, 支持 OpenAI/Azure/Qwen/DeepSeek/Anthropic)
│   │       │   └── user/    # 用户认证
│   │       ├── entity/      # JPA 实体 (9 个)
│   │       ├── repository/  # 数据访问层 (9 个)
│   │       ├── config/      # Spring 配置 (8 个)
│   │       ├── security/    # JWT 认证 + 文件安全 (3 个)
│   │       ├── dto/         # 请求/响应 DTO (9 个)
│   │       ├── common/      # Result<T>, ErrorCode
│   │       ├── exception/   # BusinessException + GlobalExceptionHandler
│   │       └── mcp/         # CKG 自身 MCP Server (15 个)
│   │           ├── McpProtocolHandler, McpToolHandler, McpToolResult
│   │           ├── McpSseTransport, McpStdioTransport, McpServerBootstrap
│   │           └── tools/   # 12 个工具实现
│   ├── Dockerfile           # 后端 Docker 镜像
│   └── pom.xml              # Maven 配置
├── frontend/                # Vue3 前端
│   ├── src/                 # 前端源码
│   │   ├── views/           # 页面组件 (7 个: Home, Login, Settings, ProjectList, ProjectDetail, Graph, QA)
│   │   ├── components/      # 功能组件 (5 个: AppIcon, FileViewer, ChatInput, SessionSidebar, MessageList)
│   │   ├── stores/          # Pinia 状态管理 (3 个: user, theme, qa)
│   │   ├── api/             # API 服务层 (7 个: user, project, graph, qa, file, parse, quality)
│   │   ├── assets/icons/    # SVG 图标 (17 个)
│   │   └── router/          # 路由配置
│   ├── Dockerfile           # 前端 Docker 镜像
│   └── package.json         # NPM 配置
├── docker/                  # Docker 配置
│   └── nginx/               # Nginx 反向代理配置
├── docs/                    # 文档
│   ├── superpowers/         # 设计和计划文档
│   │   ├── specs/           # 设计方案
│   │   └── plans/           # 实施计划
│   ├── architecture/        # 架构设计文档
│   ├── deployment/          # 部署运维文档
│   └── user/                # 用户文档
├── docker-compose.yml       # 开发环境编排(仅基础设施)
├── docker-compose.prod.yml  # 生产环境编排(全栈)
├── .env.example             # 环境变量模板
├── CONTRIBUTING.md          # 贡献指南
├── CHANGELOG.md             # 变更日志
└── LICENSE                  # MIT 许可证

🔧 配置说明

必要配置

# .env 文件

# LLM API (必填)
LLM_PROVIDER=openai           # 支持: openai, azure, qwen, deepseek, anthropic
LLM_API_KEY=sk-your-key       # API 密钥
LLM_MODEL=gpt-4o              # 模型名称
# LLM_BASE_URL=               # 可选: 自定义 API 端点

# 数据库密码 (建议修改默认值)
POSTGRES_PASSWORD=your-password
NEO4J_PASSWORD=your-password

# JWT 密钥 (建议修改默认值)
JWT_SECRET=your-jwt-secret

LLM 提供者配置

提供者 LLM_PROVIDER LLM_MODEL 示例 说明
OpenAI openai gpt-4o 也支持 OpenAI 兼容接口
Azure OpenAI azure gpt-4o Azure 部署的 OpenAI
通义千问 qwen qwen-max 阿里云 DashScope
DeepSeek deepseek deepseek-chat DeepSeek 官方 API
Anthropic anthropic claude-sonnet-4-20250514 Claude 系列 (OpenAI 兼容模式)
讯飞星程 openai astron-code-latest OpenAI 兼容模式 + LLM_BASE_URL

代码阅读策略配置

通过 application.ymlckg.code-reading 前缀配置:

配置项 默认值 说明
pipeline.max-lines 800 Pipeline 模式最大读取行数
pipeline.max-files 15 Pipeline 模式最大读取文件数
pipeline.timeout-seconds 15 Pipeline 模式超时时间
agent.max-lines 1500 Agent 模式最大读取行数
agent.max-files 20 Agent 模式最大读取文件数
agent.max-rounds 3 Agent 模式最大阅读轮数
agent.timeout-seconds 30 Agent 模式超时时间
router.deep-reading-intents BUSINESS_FLOW,IMPACT_ANALYSIS,CODE_EXPLANATION 触发 Agent 模式的意图类型
router.confidence-threshold 0.6 低于此置信度触发 Agent 模式

🔌 MCP Tool 接口

系统通过 MCP (Model Context Protocol) 暴露 12 个工具,支持 AI 编码助手直接访问知识图谱:

Tool 说明
ckg_project_list 列出所有已解析项目
ckg_project_create 从 Git 仓库创建项目
ckg_project_parse 触发全量代码解析
ckg_project_parse_progress 查询解析进度
ckg_file_tree 获取项目文件树
ckg_file_content 获取文件内容
ckg_graph_search 搜索图谱节点
ckg_graph_callees 查询方法调用链
ckg_graph_callers 查询方法被谁调用
ckg_graph_impact 影响分析(修改某方法的影响范围)
ckg_graph_node_detail 获取节点详情及关系
ckg_qa_ask 自然语言问答

传输方式

  • SSE 模式(默认):GET /api/mcp/sse + POST /api/mcp/message
  • stdio 模式:启动参数添加 --mcp.stdio

安全机制

  • 所有工具输入均进行 Cypher 注入防护(关键词黑名单、参数绑定校验)
  • 方法名/节点类型等参数通过正则白名单验证
  • 图谱搜索限制返回数量,防止数据泄露

详见 MCP 集成使用说明

🛡️ 安全与限流

API 限流

端点分类 限流策略 说明
通用 API 30 次/分钟/IP Nginx + Redis 双层限流
QA 问答 10 次/分钟/IP 防止 LLM API 滥用
代码解析 5 次/分钟/IP 解析为资源密集操作

超出限流返回 HTTP 429,响应头包含 X-RateLimit-LimitX-RateLimit-Remaining

API 文档

启动后端后,访问 Swagger UI:http://localhost:8080/api/swagger-ui.html

📊 API 接口概览

认证

接口 方法 说明
/api/auth/register POST 用户注册
/api/auth/login POST 用户登录,返回 JWT

项目管理

接口 方法 说明
/api/projects GET 项目列表
/api/projects POST 创建项目
/api/projects/{id} GET 项目详情
/api/projects/{id} PUT 更新项目名称/描述
/api/projects/{id} DELETE 删除项目
/api/projects/{id}/parse POST 触发解析(便捷接口)
/api/projects/{id}/tasks GET 项目解析任务列表
/api/projects/{id}/tasks/latest GET 最新解析任务
/api/projects/{id}/members GET 项目成员列表
/api/projects/{id}/members POST 添加项目成员
/api/projects/{id}/members/{memberUserId} DELETE 移除项目成员
/api/projects/{id}/modules GET 项目模块列表
/api/projects/{id}/module-dependencies GET 模块依赖图
/api/projects/import-zip POST ZIP 上传导入
/api/projects/import-folder POST 文件夹拖拽导入

代码解析

接口 方法 说明
/api/parse/full/{id} POST 全量解析
/api/parse/incremental/{id} POST 增量解析
/api/parse/progress/{id} GET 解析进度
/api/parse/task/{taskId} GET 查询指定任务状态
/api/parse/tasks/{projectId} GET 项目任务列表
/api/parse/cancel/{taskId} POST 取消任务
/api/parse/sync/{id} POST 强制同步

智能问答

接口 方法 说明
/api/qa/ask POST 快速问答(V1,无会话)
/api/qa/ask-v2 POST V2 四层架构问答
/api/qa/stream POST SSE 流式问答(V1 管道)
/api/qa/stream-v2 POST SSE 流式问答(V2 四层架构,含阶段事件)
/api/qa/sessions GET 问答会话列表
/api/qa/sessions POST 创建问答会话
/api/qa/sessions/{id} DELETE 删除会话
/api/qa/sessions/{id} PATCH 重命名会话
/api/qa/sessions/{id}/ask POST 会话内问答
/api/qa/sessions/{id}/messages GET 会话消息历史

图谱与文件

接口 方法 说明
/api/graph/{id} GET 图谱数据(支持 nodeType/moduleName/limit 过滤)
/api/graph/{id}/callers GET 方法调用者
/api/graph/{id}/callees GET 方法被调用
/api/graph/{id}/impact GET 影响分析(支持 depth 参数,默认 3,最大 10)
/api/graph/{id}/search GET 搜索节点(支持 q/type/moduleName/limit 参数)
/api/graph/{id}/node/{nodeId} GET 节点详情及入出关系
/api/projects/{id}/files/tree GET 文件树(支持 path 参数)
/api/projects/{id}/files/content GET 文件内容(支持 startLine/endLine 参数)
/api/projects/{id}/files/history GET Git 历史(最多 50 条)
/api/projects/{id}/files/version GET 指定版本文件内容

代码质量

接口 方法 说明
/api/quality/{projectId} GET 质量报告(含评分、异味、安全风险、热点、死代码)
/api/quality/{projectId}/smells GET 代码异味(支持 minSeverity 参数)
/api/quality/{projectId}/security GET 安全风险
/api/quality/{projectId}/hotspots GET 热点方法

Webhook

接口 方法 说明
/api/webhook/gitlab/{id} POST GitLab Webhook (X-Gitlab-Token 验证)
/api/webhook/github/{id} POST GitHub Webhook (HMAC-SHA256 签名验证)
/api/webhook/gitee/{id} POST Gitee Webhook (X-Gitee-Token 验证)
/api/webhook/events/{id} GET Webhook 事件历史

健康检查

接口 方法 说明
/api/health GET 服务健康检查

🧪 测试

# 后端单元测试(H2 内存数据库)
cd backend
mvn test

# 集成测试(需要 Neo4j)
docker-compose up -d neo4j
mvn test -Dtest=QAServiceTest

# 前端代码检查
cd frontend
npm run lint

当前测试覆盖:96 个单元测试全部通过,涵盖 Cypher 安全校验、查询模板匹配、实体提取、问题理解、查询规划、数据获取、V2 问答等核心模块。

🛠️ 技术栈

后端

组件 技术 版本
框架 Spring Boot 3.2.5
图数据库 Neo4j 5.15
关系数据库 PostgreSQL 15
缓存 Redis 7
LLM 框架 LangChain4j 0.35.0
MCP SDK io.modelcontextprotocol 0.7.3
Git 操作 JGit 6.10.0
JWT jjwt 0.12.5
结构化日志 logstash-logback-encoder 7.4
测试 Mockito 5.14.2

前端

组件 技术 版本
框架 Vue 3.4
状态管理 Pinia 2.1
UI 组件 Element Plus 2.5
图谱可视化 force-graph (WebGL) 1.51
力导向布局 d3-force 7.8
代码编辑器 Monaco Editor 0.45
Markdown 渲染 marked 12.0
HTML 净化 DOMPurify 3.4
语法高亮 highlight.js 11.9
HTTP 客户端 Axios 1.6
构建工具 Vite 5.0
语言 TypeScript 5.3

🏗️ 系统架构

智能问答四层架构

用户问题
    ↓
┌─────────────────────────┐
│  问题理解层              │  IntentClassifier → EntityExtractor → ContextResolver → SimilarQuestionService
│  (Understanding)         │
└────────────┬────────────┘
             ↓
┌─────────────────────────┐
│  查询规划层              │  QueryTemplateMatcher (28 模板) → SimilarQuestion 复用 → LLM 生成 Cypher (三层 fallback)
│  (Planning)              │  CypherValidator 安全校验
└────────────┬────────────┘
             ↓
┌─────────────────────────┐
│  数据获取层              │  DataFetcher → Neo4jExecutor (Cypher 执行) + CodeReadingRouter
│  (Fetching)              │  CodeReadingRouter 自动路由:
│                          │    Pipeline (轻量, 图谱关系驱动) → 快速定位
│                          │    Agent (深度, LLM 多轮决策) → 跨文件理解
└────────────┬────────────┘
             ↓
┌─────────────────────────┐
│  答案生成层              │  AnswerGenerator (LLM 生成自然语言 + 代码引用)
│  (Generation)            │
└─────────────────────────┘

代码阅读策略

策略 适用场景 特点
Pipeline CALL_CHAIN, CLASS_METHODS, CALLEES 等明确意图 图谱关系 (CALLS/IMPLEMENTS/EXTENDS) 驱动定位,单轮读取,无 LLM 开销
Agent BUSINESS_FLOW, IMPACT_ANALYSIS, CODE_EXPLANATION 或低置信度 LLM 多轮自主决策读取策略,跨文件深度理解,生成代码摘要

知识图谱 Schema

节点类型:Class、Interface、Method、Module、Commit、Author、Domain、BusinessFlow、BusinessStep、Entity

关系类型

关系 方向 说明
CALLS Method → Method 方法调用
HAS_METHOD Class/Interface → Method 包含方法
EXTENDS Class → Class 类继承
IMPLEMENTS Class → Interface 接口实现
CONTAINS Module → Class/Interface 模块包含
MAVEN_DEPENDS_ON Module → Module Maven 依赖
AUTHORED_BY Commit → Author 提交作者
MODIFIED_BY Method → Commit 方法修改记录
BELONGS_DOMAIN Class → Domain 领域归属
PART_OF_FLOW BusinessStep → BusinessFlow 流程步骤
NEXT_STEP BusinessStep → BusinessStep 流程顺序
IMPLEMENTS_FLOW Method → BusinessFlow 流程实现
USES_ENTITY Class → Entity 实体使用

📊 开发进度

阶段 内容 状态
Phase 0 技术验证 ✅ 完成
Phase 1 智能问答系统重构 ✅ 完成(28 模板 + 四层架构 + V2 API)
Phase 2 图谱可视化升级 ✅ 完成(WebGL 渲染 + 多布局)
Phase 3 项目导入增强 ✅ 完成(Git / 本地路径)
Phase 4 代码查看器重构 ✅ 完成(面包屑导航 + Git 历史版本)
Phase 5 基础设施增强 ✅ 完成(MCP 健康检查 + 增量同步)
Phase 6 集成测试与优化 ✅ 完成(96 个测试通过)
Phase 7 功能增强 ✅ 完成(ZIP 导入 + 文件夹拖拽)
Phase 8 技术债务清理 ✅ 完成(测试修复 + 结构化日志)
Phase 9 扩展功能 ✅ 完成(代码质量 + 语义检索 + 语义推断)
Phase 10 多模块/微服务支持 ✅ 完成(模块检测 + 跨模块推断 + 模块依赖图)
Phase 11 P0 修复 ✅ 完成(代码质量闭环 + SSE 流式 + V2 管道 + 死代码检测)
Phase 12 解析质量提升 ✅ 完成(Interface 标签 + IMPLEMENTS 边 + codegraph_explore)
Phase 13 代码溯源闭环 ✅ 完成(AUTHORED_BY + MODIFIED_BY + Git 变更文件)
Phase 14 代码阅读增强 ✅ 完成(Pipeline/Agent 双策略 + 自动路由 + 配置化)
Phase 15 深色主题 ✅ 完成(90+ CSS 变量 + 赛博朋克风格 + 图谱/编辑器主题适配)

🤝 贡献

欢迎贡献代码!请阅读 贡献指南 了解:

  • 开发环境搭建
  • 代码风格与提交规范
  • Pull Request 流程
  • 测试要求

📄 License

MIT License © 2024-2026 Code Knowledge Graph

About

代码知识图谱问答系统 - 基于GraphRAG的智能代码分析平台

Resources

License

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors