Skip to content

冷启动

图谱为空时系统没有价值。冷启动管线分层建立初始内容。

Layer 0:代码结构(Joern CPG)

Joern 解析代码库,建立结构骨架:

  • 函数/类/模块节点
  • 调用关系边
  • API endpoint 定义
  • import/export 关系

纯结构信息,没有决策——但为后续所有决策提供了锚定目标。

bash
# Dashboard: System → Generate CPG
# 或 CLI:
joern-parse /path/to/src --output data/project.cpg.bin
joern --script joern/extract-code-entities.sc \
  --param cpgFile=data/project.cpg.bin \
  --param outFile=data/project.json
npm run ingest:cpg -- --file data/project.json

Layer 1:决策提取

analyze_function 模块逐函数读代码,从图谱查调用上下文,调 LLM 提取决策。

bash
# Dashboard: Quick Scan → 选 repo → Scan
# 或 CLI:
npm run analyze -- --repo my-repo
npm run analyze -- --repo my-repo --continue    # 中断后恢复

所有决策标记为 confidence: auto_generated。随着 session 摄入加入真实对话提取的决策,质量会持续提升。

Layer 2:决策关系

提取完成后,连接相关决策:

bash
npm run connect

处理 PENDING_COMPARISON 边——分组、LLM 分析关系、创建 CAUSED_BYDEPENDS_ONCONFLICTS_WITH 边。

管线顺序

1. docker compose up -d           # 启动 Memgraph
2. npm run dashboard              # 启动 Dashboard
3. System → 添加 repo + 生成 CPG + Full Setup
4. Quick Scan 或 npm run analyze  # 提取决策
5. npm run connect                # 建立关系

步骤 4 和 5 可以随时中断和恢复。

基于 Apache 2.0 协议发布