前言¶
DeepSeek Harness (DSH) 采用插件化架构。在处理复杂代码库时,智能体往往需要从问题定位到符号、依赖路径、架构社区和变更影响的全景视图,而非仅仅依赖传统的文件搜索。dsh-graphify 是一个原生插件,它将 Graphify 的本地知识图谱引擎连接到 DSH,帮助智能体在会话中构建对项目的结构化理解。
插件介绍¶
该插件由 QuantumKuba 维护,归类于“记忆”类工具。它解决的核心问题是:如何让 DSH 智能体在不将仓库视为非结构化文件堆栈的情况下,获得当前、本地且结构化的代码地图。
核心功能¶
该插件提供以下核心能力:
- 会话感知的项目解析:图请求自动跟随当前 DSH 会话的工作区,默认阻止对工作区外的访问。
- 新鲜度检查:通过
graphify_status命令检查图谱是否与源码索引状态匹配,识别过期图谱。 - 安全更新策略:支持增量更新与全量构建。增量更新仅针对代码提取,若检测到不支持的变更(如文档或配置),会保持图谱标记为过期并请求全量构建。
- DSH 原生操作:通过
/graphify命令构建或刷新当前会话的项目图谱。 - 本地运行时韧性:插件能自动发现 Graphify 运行时,并在进程意外退出后尝试重连。
- 双模式工具集:
- Compact 模式:为小模型(如 20B–30B)提供 6 个高频工具(状态、图查询、节点检查、邻居、最短路径、会话资源)。
- Full 模式:暴露完整能力,包括社区分析、神节点识别和 PR 影响分析。
- 图查询工具:支持节点查询、路径查找、社区识别以及 PR 影响分析。
安装与配置¶
在使用前,请确保环境已安装必要的依赖:Node.js 22.18+、Python 3.10+ 以及 uv。
- 安装插件:
使用官方命令将插件添加到指定的 DSH Profile:
dsh plugin --profile <profile> add dsh-graphify
- 配置模式:
默认使用full模式。如需为小模型配置compact模式,可在配置中指定:
- insert:
- id: dsh-graphify
name: dsh-graphify
config:
toolMode: compact
典型用法¶
安装并启动 DSH 后,进入目标代码库目录,即可使用以下命令:
- 构建/刷新图谱:
在对话中直接输入:
/graphify
这将执行全量构建,结果写入 `graphify-out/graph.json`。
- 更新变更:
仅更新发生变化的代码文件:
/graphify update
注意:此命令保守,仅提取代码变更,不覆盖文档或配置文件的变更。
- 诊断状态:
检查运行时可用性、项目路径和图谱新鲜度:
graphify_status
注意事项¶
- 操作系统支持:该插件在 macOS 和 Ubuntu 上经过测试,Windows 平台尚未验证。
- 输出路径:生成的图谱文件默认写入
graphify-out/graph目录。 - 更新限制:
/graphify update仅处理代码文件的提取。若修改了 Markdown 文档、包元数据或配置文件,必须运行/graphify进行全量构建,因为这些变更不会包含在增量更新中。