好的,我将这份插件说明文档整理为结构清晰、层次分明的 Markdown 格式,方便阅读和展示。
Codebase-Cognition(双图谱协同认知)
本插件通过固定路由决策树 与协同增强流程 ,协调 codegraph 与 codebase-memory-mcp 两个 MCP 服务器在同一项目中的协作,实现 1+1 > 2 的代码理解效果。
一、它解决什么问题?
在同一项目中同时启用两个代码认知 MCP 时,常见痛点:
| 痛点 | 描述 |
|---|---|
| 🔁 重复检索 | 两个工具都能"找代码",来回调用浪费 Token 与轮次 |
| 🧭 职责不清 | 不知道哪个工具适合当前任务,导致选择错误 |
| ⚖️ 结论冲突 | 图谱推断(聚类/相似度)与源码事实不一致时不知以谁为准 |
| 🗂️ 索引混乱 | 两套索引(.codegraph/ 与 .codebase-memory/)的维护时机不明确 |
解决方案 :一张查询路由决策树 + 五条防冲突硬性规则 + 五条协同增强流程。
二、核心分工(一句话版)
| 工具 | 回答的问题 | 输出性质 |
|---|---|---|
| codegraph_explore | 这段代码是什么?改了影响谁? | 源码事实(Ground Truth) |
| codebase-memory-mcp | 系统架构如何?哪里是热路径?谁和谁语义相关? | 图谱推断(统计/结构) |
三、包含内容
codebase-cognition/
├── .qoder-plugin/plugin.json # 插件清单
├── README.md # 本文档
├── assets/avatar.svg # 插件 Logo(原创)
└── skills/
└── codebase-cognition/
├── SKILL.md # 主工作流:决策树 + 防冲突规则 + 协同流程
└── references/
├── coordination-rules.md # 场景→工具→补充工具 详细对照表
└── cypher-patterns.md # query_graph 常用 Cypher 模板
四、使用方式
安装插件后,向助手描述任务即可,技能会在以下场景自动生效:
- 理解某段代码 / 某个符号如何工作
- 修改代码前的影响评估(Blast Radius)
- 项目整体架构分析、模块边界测绘
- 热路径、性能风险扫描
- 代码审查(结构风险 + 变更背景)
💡 也可以显式触发:
/codebase-cognition <任务描述>
五、前置条件
⚠️ 本插件是工作流编排,不捆绑 MCP 服务器,需环境已配置以下内容:
| MCP 服务器 | 所需工具 | 索引要求 |
|---|---|---|
| codegraph MCP | codegraph_explore |
项目根存在 .codegraph/ 索引(由 codegraph 侧工具建立/更新) |
| codebase-memory-mcp | search_graph / query_graph / get_architecture / detect_changes / index_repository |
项目已通过 index_repository 完成索引(数据落在 .codebase-memory/) |
两套索引相互独立、各自维护;插件只规定 "何时查、何时更新、谁说了算",不写入任何一方的存储。
六、来源说明
| 项目 | 说明 |
|---|---|
| 设计 | 原创设计(非外部源转换),基于当前环境中 codegraph 与 codebase-memory-mcp 两个 MCP 服务器的实际工具定义编写 |
| Logo | 原创 SVG:深色底上青色(codegraph)与蓝色(codebase-memory)两个节点组通过虚线汇聚到中心菱形,象征双图谱协同 |
| 未包含 | 未打包任何 MCP 服务器本体、无脚本、无命令、无 hooks------插件的全部价值在技能工作流与参考文档中 |
七、验证
- ✅ 通过 Qoder 离线校验器
validate_qoder_plugin.py校验(结构、清单路径、frontmatter) - ✅ 技能 frontmatter 包含
name/version/description/description_zh/user-invocable/argument-hint
八、安装到 Qoder
将整个 codebase-cognition 目录复制到 Qoder 插件目录:
- 用户级 :
~/.qoder-cn/plugins/codebase-cognition - 项目级 :
.qoder/plugins/codebase-cognition
或在 Qoder 插件设置中选择本目录导入。
如果还需要进一步调整(比如补充具体的决策树流程图、Cypher 模板示例,或适配其他平台的安装说明),随时告诉我,我可以继续帮你完善。 😊