dsh-graphify-plugin

把 Graphify 代码知识图谱接入 DSH,注册依赖遍历、God Nodes、社区聚类、最短路径和 PR 影响分析工具,并通过本地 MCP stdio 子进程查询 graphify-out。

快速判断

安装前先看这几项

配置资料
配置资料完整
配置难度
较高
适合新手
建议具备相关经验
兼容状态
声明兼容,尚未实测
验证状态
源码已审阅,未标记运行实测
本页目录(9)
中文教程

按照固定来源完成安装、配置与验证

教程包含独立 Profile、精确安装目标、配置证据、最小验证任务、回退和数据清理。

查看 dsh-graphify-plugin 安装与配置教程 →
功能

这个插件能做什么

把 Graphify 代码知识图谱接入 DSH,注册依赖遍历、God Nodes、社区聚类、最短路径和 PR 影响分析工具,并通过本地 MCP stdio 子进程查询 graphify-out。

适合谁

需要知识库、RAG、文档问答能力的用户

使用门槛

该插件涉及较高配置难度或敏感权限,不建议在生产工作区直接试装。

准备

安装前准备

  • 隔离代码仓库(必需)只在可恢复的测试仓库生成图谱,不让插件扫描个人目录或生产源码。
  • Python 3.10+ 与 Graphify(必需)预先固定并审查 graphifyy 版本;不要依赖首次启动时临时下载未知版本。
  • Node.js 20+ 与 DSH Web(必需)使用独立 DSH Web Profile,确保子进程和索引可随时停止及清理。
安装

如何安装 dsh-graphify-plugin

下面的命令使用本站核验的 DSH 基线,并锁定插件版本或 Git commit,避免默认分支变化导致安装内容漂移。本站已核对安装目标,但尚未在你的系统和 Profile 中实际执行。

安装到
web Profile
DSH 基线
0.1.1-rc.2
安装来源
GitHub 源码(锁定提交)
固定目标
dsh-graphify@0.1.0
  1. 01
    检查 Node.js 与 pnpm

    DSH 当前基线需要 Node.js 22.19 或 Node.js 24 及以上,并且 pnpm 必须已在 PATH 中。先运行:

    环境检查
    node --version && pnpm --version
  2. 02
    安装到 Web Profile

    这条命令会把插件加入 web Profile,并在插件声明 DSH Bundle 时自动加入配置层。

    GitHub 源码(锁定提交)
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 plugin --profile web add dsh-graphify@0.1.0
  3. 03
    如遇构建脚本拦截

    GitHub 源码插件可能通过 prepare 构建。pnpm 10 及以上会先阻止未授权构建;只把终端明确提示的包名加入该 Profile 的 pnpm-workspace.yamlallowBuilds,审阅脚本后再重复上一步,不要使用全局放行。

  4. 04
    确认 Bundle 已进入配置

    安装成功后先导出组合配置,不启动 Agent。输出中应能找到包名 dsh-graphify或对应 Bundle 层。

    检查配置
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 --profile web --dump-config
  5. 05
    启动并完成最小验证

    启动 Web Profile 后,只测试一个与插件功能直接相关的最小任务,并检查日志、文件、网络和凭据访问是否符合预期。

    启动 DSH Web
    npx --yes @deepseek-ai/dsh@0.1.1-rc.2 web
卸载与回退

测试不通过时先停止 DSH,再从同一 Profile 移除插件。移除后重新运行配置检查,确认对应 Bundle 层已经消失;插件自己创建的数据和外部账号配置可能需要另行清理。

从 Web Profile 移除
npx --yes @deepseek-ai/dsh@0.1.1-rc.2 plugin --profile web remove dsh-graphify
配置

插件专属配置

隔离仓库/graphify-out/graph.json
Graphify 生成的代码知识图谱,插件默认从工作区及父目录自动发现。
profiles/web/cordis.patch.yml
启用 dsh-graphify,并限制工作目录、图谱路径和单次工具超时。

web Profile 的 Cordis Patch · yaml。示例中的账号、路径和凭据占位符必须替换,不要提交真实密钥。

复制 web Profile 的 Cordis Patch 配置
- insert:
    - id: graphify
      name: dsh-graphify
      config:
        cwd: /绝对路径/隔离测试仓库
        graphPath: /绝对路径/隔离测试仓库/graphify-out/graph.json
        autoDetect: false
        enablePromptSection: true
        timeoutMs: 60000

核对配置证据外部链接,在新标签页打开

  1. 先在隔离仓库中用已固定的 Graphify 版本执行索引,确认 graphify-out/graph.json、GRAPH_REPORT.md 和 graph.html 生成。
  2. 把 cwd 与 graphPath 写成隔离仓库绝对路径并关闭 autoDetect,避免向父目录扩大扫描范围。
  3. 重启独立 DSH Web Profile,观察 Graphify MCP 子进程是否只在该仓库内启动。
验证

配置检查与成功结果

  1. 01
    检查隔离仓库中的 graphify-out/graph.json 是否存在,并记录生成工具的固定版本。

    期望结果:图谱文件位于预期目录,未在仓库父目录或其他工作区产生额外 graphify-out。

  2. 02
    查看 web Profile 组合配置,确认 cwd、graphPath、autoDetect=false 和 60 秒超时生效。

    期望结果:组合配置只指向隔离仓库,不包含个人目录或生产仓库路径。

  3. 03
    在测试会话中请求只读查询关键节点,不触发重新索引或 GitHub PR 工具。

    期望结果:Agent 返回图谱节点或明确错误;测试过程中不修改源码,也不访问未授权 GitHub 数据。

使用

第一次使用建议这样验证

  • 查询隔离仓库的 God Nodes,并解释它们为什么可能影响多个模块;不要修改文件。
  • 查找测试模块 A 到模块 B 的最短依赖路径,只返回节点和边。
权限

它可能接触哪些数据和能力

执行本机命令读取本地文件

会启动 uv 或 Python Graphify MCP 子进程、扫描项目及父目录、读取或生成 graphify-out,并允许模型工具或斜杠命令传入项目路径;PR 工具还可能访问 GitHub。

数据存储:Graphify 把 graph.json、报告和 HTML 写入测试仓库 graphify-out;dsh-graphify 通过本地 stdio 子进程读取这些文件,本身不声明独立云端存储。

请注意:源码已审阅”说明本站检查到的证据范围,不等于安全认证。重要工作区应锁定版本、备份数据并在最小权限下测试。

排查

故障排查与数据清理

找不到 uv、Python 或 graphify
不要让插件临时拉取未知版本;先在隔离环境固定安装 graphifyy,并把 command 与 args 指向该受控环境。
提示找不到 graph.json
在隔离仓库重新生成 graphify-out/graph.json,并使用明确 graphPath 和 cwd,保持 autoDetect 关闭。
大型仓库查询超时
先缩小测试仓库或重新生成图谱;确认资源占用可接受后再谨慎提高 timeoutMs。
卸载后的清理步骤
  1. 从独立 web Profile 移除 dsh-graphify@0.1.0 并重启,确认 Graphify MCP 子进程和工具已退出。
  2. 确认没有残留 uv 或 Python Graphify 进程后,按需删除隔离仓库的 graphify-out;Python 工具依赖需用原包管理器单独卸载。
深入审计:兼容性、数据流与来源
证据

兼容性与审阅记录

兼容性说明

作者要求 Node.js 不低于 20、Python 不低于 3.10、Cordis 不低于 4,并声明 DSH Bundle;固定提交静态审阅未验证 graphifyy 当前版本或 dsh-v0.1.2-alpha.3 运行兼容。

数据流

工作区源码 → Graphify 索引进程 → graphify-out/graph.json、报告与 HTML → dsh-graphify MCP stdio → DSH Agent 工具和系统提示;PR 分析工具可能再访问 GitHub。

源码审阅结论

固定提交静态审阅发现,uv 回退路径可能动态解析 Python 包,project_path 未由插件强制限制在当前 DSH 工作区;子进程环境会删除多数秘密变量,但仍保留名称含 deepseek 或 graphify 的变量。应仅在隔离代码仓库使用、固定 Python 依赖并先检查 graphify-out;这是第三方适配器,不是 DeepSeek 官方插件。本站未运行插件或索引真实项目。

来源与维护信息

本页根据固定提交的仓库、包清单和本站审阅资料生成。版本变化后,请重新核对作者说明。

来源快照
GitHub Topic 采集记录
固定提交
5d919980d694
许可证
MIT
主要语言
TypeScript
中文资料
有完整中文配置资料