冷启动
图谱为空时系统没有价值。冷启动管线分层建立初始内容。
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.jsonLayer 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_BY、DEPENDS_ON、CONFLICTS_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 可以随时中断和恢复。