导航知识图谱技能 nav-graph

统一项目知识图谱查询和管理工具,集成任务、SOPs、系统文档和经验记忆,支持上下文感知检索和关系遍历,提升团队知识共享和决策效率。

DevOps 0 次安装 0 次浏览 更新于 3/4/2026

导航知识图谱技能

查询和管理统一的项目知识图谱。从任务、SOPs、系统文档和经验记忆中检索相关知识。

为什么存在这个技能

Navigator v6.0.0引入了项目知识图谱:

  • 统一搜索:通过一个界面查询所有知识类型
  • 经验记忆:模式、陷阱、决策、学习持久化
  • 上下文感知检索:只加载相关知识(约1-2k令牌)
  • 关系遍历:找到相关概念和文档

何时调用

查询触发器

  • “我们对X了解多少?”
  • “显示与X相关的一切”
  • “X有什么陷阱吗?”
  • “关于X的决策是什么?”
  • “找到关于X的所有知识”

记忆捕获触发器

  • “记住这个模式: …”
  • “记住这个陷阱: …”
  • “记住我们决定: …”
  • “记住这个学习: …”

图管理触发器

  • “初始化知识图谱”
  • “重建知识图谱”
  • “显示图统计信息”

图谱位置

.agent/knowledge/graph.json (约1-2k令牌,查询时加载)

执行步骤

第1步:确定行动

查询(搜索知识):

用户:"我们对认证了解多少?"
→ 按概念查询图谱

捕获(存储记忆):

用户:"记住:认证变更经常破坏会话测试"
→ 创建新的记忆节点

初始化(构建图谱):

用户:"初始化知识图谱"
→ 根据现有文档构建图谱

统计(查看图谱):

用户:"显示图统计信息"
→ 显示图谱统计信息

第2步:加载或初始化图谱

检查图谱是否存在

if [ -f ".agent/knowledge/graph.json" ]; then
  echo "Graph exists"
else
  echo "No graph found, will initialize"
fi

如果不存在则初始化

python skills/nav-graph/functions/graph_builder.py \
  --agent-dir .agent \
  --output .agent/knowledge/graph.json

第3A步:查询知识(如果是查询行动)

从用户输入中提取概念

用户:"我们对测试了解多少?"
→ 概念:测试

用户:"认证有什么陷阱吗?"
→ 概念:认证(标准化为认证)

运行查询

python skills/nav-graph/functions/graph_manager.py \
  --action query \
  --concept "testing" \
  --graph-path .agent/knowledge/graph.json

显示结果

知识图谱:"testing"

任务(3)
  - TASK-30:任务验证增强(已完成)
  - TASK-17:视觉回归集成(已完成)
  - TASK-11:项目技能生成(已完成)

记忆(2)
  - 陷阱:"认证变更破坏会话测试"(90%)
  - 模式:"总是先运行单元测试再集成"(85%)

SOPs(1)
  - visual-regression-setup

文件(5)
  - skills/backend-test/*
  - skills/frontend-test/*

加载详情:"阅读 TASK-30" 或 "显示测试记忆"

第3B步:捕获记忆(如果是捕获行动)

从用户输入中解析记忆

用户:"记住这个陷阱:认证变更经常破坏会话测试"
→ 类型:陷阱
→ 摘要:"认证变更经常破坏会话测试"
→ 概念:[认证,测试]

用户:"记住我们决定使用JWT而不是会话以实现扩展"
→ 类型:决策
→ 摘要:"使用JWT而不是会话以实现扩展"
→ 概念:[认证,架构]

确定记忆类型

用户说 记忆类型
“模式”,“我们使用”,“方法” 模式
“陷阱”,“小心”,“注意” 陷阱
“决定”,“选择”,“因为” 决策
“学习”,“发现”,“意识到” 学习

创建记忆

python skills/nav-graph/functions/graph_manager.py \
  --action add-memory \
  --memory-type pitfall \
  --summary "auth changes often break session tests" \
  --concepts "auth,testing" \
  --confidence 0.9 \
  --graph-path .agent/knowledge/graph.json

可选创建详细记忆文件

# 陷阱:认证变更破坏会话测试

## 摘要
认证变更经常破坏会话测试的原因...

## 上下文
在TASK-XX期间发现当...

## 推荐方法
修改认证时,总是运行...

## 相关
- TASK-12:V3 Skills-Only
- SOP:autonomous-completion

确认捕获

记忆捕获:mem-001

类型:陷阱
摘要:"认证变更经常破坏会话测试"
概念:认证,测试
置信度:90%

这将在处理认证或测试主题时浮现。

第3C步:初始化图谱(如果是初始化行动)

从现有文档构建

python skills/nav-graph/functions/graph_builder.py \
  --agent-dir .agent \
  --output .agent/knowledge/graph.json

显示结果

知识图谱初始化

扫描:
  - 任务:35
  - SOPs:12
  - 系统文档:3
  - 标记:8

提取:
  - 概念:15
  - 关系:47

图谱保存到 .agent/knowledge/graph.json

查询:"我们对[主题]了解多少?"

第3D步:显示统计信息(如果是统计行动)

显示图谱统计信息

python skills/nav-graph/functions/graph_manager.py \
  --action stats \
  --graph-path .agent/knowledge/graph.json

输出

知识图谱统计信息
==========================
总节点数:65
总边数:47
记忆:5
最后更新时间:2025-01-23T10:30:00Z

按类型:
  任务:35
  SOPs:12
  系统:3
  标记:8
  概念:15
  记忆:5

第4步:查找相关(可选)

如果用户询问相关项目

用户:"TASK-29与什么相关?"

运行遍历

python skills/nav-graph/functions/graph_manager.py \
  --action related \
  --node-id "TASK-29" \
  --max-depth 2 \
  --graph-path .agent/knowledge/graph.json

记忆类型

模式

“我们在这个项目中使用X做Y”

  • 可重用的方法
  • 项目约定
  • 最佳实践

陷阱

“当接触Y时要小心X”

  • 常见错误
  • 陷阱
  • 失败模式

决策

“我们选择X而不是Y因为Z”

  • 架构决策
  • 技术选择
  • 权衡理由

学习

“在这个代码库中X通常意味着Y”

  • 项目特定知识
  • 错误解释
  • 领域洞察

置信度系统

基础置信度

  • 基于纠正:0.8
  • 显式捕获:0.9

衰减

  • 自上次验证以来每周1%

提升

  • 每次使用+5%(最多+25%)

阈值

  • 低于0.3:修剪候选
  • 高于0.7:可靠的记忆

与其他技能的集成

nav-start(会话开始)

会话开始时加载图谱统计信息:

知识图谱:65个节点,5个记忆
相关:当前上下文中的2个记忆

nav-task(任务创建)

从新任务中自动提取概念:

创建TASK-35:项目记忆
提取的概念:知识,记忆,图谱
添加到图谱。

nav-profile(纠正)

纠正通过 correction_to_memory.py 自动创建记忆:

# 在nav-profile中检测到纠正时:
python3 skills/nav-graph/functions/correction_to_memory.py \
  --action convert-one \
  --correction-json '{"pattern": "...", "context": "...", "confidence": "high"}'

# 输出:
[纠正检测到]
→ 类型:陷阱(基于模式分析)
→ 概念:[认证,测试](自动提取)
→ 创建记忆:mem-002
→ 添加到图谱

同步所有纠正

python3 skills/nav-graph/functions/correction_to_memory.py \
  --action sync \
  --profile-path .agent/.user-profile.json \
  --graph-path .agent/knowledge/graph.json

nav-marker(上下文标记)

标记引用图谱状态:

## 图谱状态
- 浮现的记忆:mem-001, mem-003
- 活跃的概念:认证,测试

配置

.agent/.nav-config.json 中:

{
  "knowledge_graph": {
    "enabled": true,
    "auto_capture_corrections": true,
    "auto_capture_decisions": true,
    "auto_surface_relevant": true,
    "max_session_memories": 5,
    "confidence_decay_rate": 0.01,
    "staleness_threshold_days": 90,
    "git_tracked": true
  }
}

图谱维护

健康检查

python3 skills/nav-graph/functions/graph_maintenance.py --action health

输出:

知识图谱健康检查
========================================
总节点数:94
总边数:819
记忆:2(2个高置信度)
健康评分:100/100

未检测到问题!

冲突检测

找到可能相互矛盾的记忆:

python3 skills/nav-graph/functions/graph_maintenance.py --action conflicts

过时记忆检测

找到90+天未验证的记忆:

python3 skills/nav-graph/functions/graph_maintenance.py --action stale --stale-days 90

低置信度修剪

找到并可选移除低置信度记忆:

# 预览将被移除的内容
python3 skills/nav-graph/functions/graph_maintenance.py --action prune --threshold 0.3 --dry-run

# 实际移除(慎用)
python3 skills/nav-graph/functions/graph_maintenance.py --action prune --threshold 0.3 --execute

应用衰减

降低过时记忆的置信度:

python3 skills/nav-graph/functions/graph_maintenance.py --action decay --decay-rate 0.01

令牌预算

组件 令牌 何时
graph.json(50个节点) ~1000 查询时
graph.json(200个节点) ~2000 查询时
记忆摘要(5) ~500 会话开始时
完整记忆详情 ~500每个 按需

会话开销:~1.3k令牌


成功标准

图谱技能成功时:

  • [ ] 查询返回跨知识类型的相关结果
  • [ ] 记忆持久化并适当浮现
  • [ ] 概念连接相关项目
  • [ ] 置信度衰减/提升工作
  • [ ] 图谱保持在2k令牌开销以下

最佳实践

好的查询

  • “我们对认证了解多少?”(具体概念)
  • “测试有什么陷阱吗?”(范围类型)
  • “显示与TASK-29相关的一切”(节点遍历)

好的记忆捕获

  • “记住:我们使用X做Y”(清晰的模式)
  • “记住这个陷阱:X破坏Y”(具体问题)
  • “记住我们决定X因为Y”(包括理由)

避免

  • 过于宽泛的查询(“我们了解什么?”)
  • 在记忆中存储代码片段(使用路径代替)
  • 捕获显而易见的知识(专注于项目特定洞察)

这项技能将Navigator从无状态助手转变为知识型团队成员