用途
Code Context Finder 用于在编码过程中主动查找并呈现相关上下文。它把知识图谱搜索与代码关系分析结合起来,通过智能检测判断何时补充上下文会有所帮助,然后检索两类信息:知识图谱实体(既往决策、项目上下文、相关概念)和代码关系(依赖、导入、函数调用、类层级)。
主要能力
智能检测(何时使用)
该技能在检测到以下触发条件时自动激活:
- 打开不熟悉的文件:搜索知识图谱中的文件/模块上下文,以及代码中的导入/依赖。
- 开发新功能:搜索既往决策、相关概念、相似实现。
- 调试错误:搜索相关议题、错误模式、受影响组件。
- 重构代码:搜索依赖文件、调用方/被调用方、测试覆盖。
- 做架构决策:搜索历史 ADR、相关设计文档、既定模式。
- 修改配置/基础设施文件:搜索相关部署、环境说明、既往问题。
检测触发条件的详细参考见 references/detection_triggers.md。
核心工作流
-
检测上下文需求:识别暗示上下文有帮助的触发信号,例如打开新的/不熟悉的文件、出现提及未知组件的错误消息、询问某事物“为什么”或“如何”工作、修改共享/核心模块、进行架构或设计讨论。
-
搜索知识图谱:使用 MCP memory 工具查找相关实体:
# 搜索相关上下文
mcp__memory__search_nodes(query="<topic>")
# 在已知时打开特定实体
mcp__memory__open_nodes(names=["entity1", "entity2"])
# 查看关系
mcp__memory__read_graph()
搜索策略:模块/文件名 → 项目上下文;错误类型 → 既往问题、解决方案;功能名称 → 既往决策、理由;人名 → 归属、专长。
- 分析代码关系:查找代码层面的上下文:
# 查找谁导入了此模块
grep -r "from module import" --include="*.py"
grep -r "import module" --include="*.py"
# 查找函数调用方
grep -r "function_name(" --include="*.py"
# 查找类使用
grep -r "ClassName" --include="*.py"
# 查找测试覆盖
find . -name "*test*.py" -exec grep -l "module_name" {} \;
常见搜索模式见 references/search_patterns.md。
- 综合上下文:简洁呈现发现结果,包括知识图谱内容、代码关系(被谁导入、依赖什么、测试情况)以及建议操作。
快速参考
知识图谱查询:
- 查找项目上下文:search_nodes("project-name")
- 查找既往决策:search_nodes("decision") 或 search_nodes("<feature>")
- 查找相关概念:search_nodes("<concept>")
- 查找人员/归属:search_nodes("<person-name>")
- 浏览全部:read_graph()
代码关系查询:
- 查找导入方:grep -r "from X import|import X"
- 查找调用方:grep -r "function("
- 查找实现:grep -r "def function|class Class"
- 查找测试:find -name "test" -exec grep -l "X"
- 查找配置:grep -r "X" *.json *.yaml *.toml
与编码工作流的集成
做出修改之前
- 检查知识图谱获取模块/功能上下文
- 查找所有导入/依赖目标的文件
- 定位相关测试
- 若涉及架构,回顾既往决策
做出修改之后
- 若做出重要决策,更新知识图谱
- 记录新模式或经验
- 向现有实体添加观察
调试时
- 在知识图谱中搜索相似错误
- 查找通往受影响组件的所有代码路径
- 检查相关议题/决策
- 若解决方案新颖,则记录文档
资源
references/:
- detection_triggers.md - 智能检测的详细触发模式
- search_patterns.md - 代码关系的常见搜索模式
scripts/:
- find_code_relationships.py - 分析导入、依赖和调用图
限制
资料未提供该技能的收费、价格、平台支持范围或安装方式等具体信息,暂未提供。