在 DeepSeek Harness (DSH) 的生態中,讓智能體理解整個代碼庫是提高推理質量的關鍵。傳統的 RAG(檢索增強生成)方式通常直接將整個文件塞進上下文,這不僅消耗大量 Token,還容易丟失架構關係和依賴細節。dsh-understand-anything 通過生成結構化的知識圖譜,解決了這個問題。它讓 AI 先看懂整個代碼庫,再基於圖譜回答問題、分析改動影響,並生成上手指南。
插件介紹¶
dsh-understand-anything 是一個由 GongYuanCaiJi 維護的插件,移植自開源項目 Egonex-AI/Understand-Anything(MIT 許可證)。它將代碼庫分析轉化爲結構化的知識圖譜,使 DSH 智能體能基於圖譜進行聊天、影響分析和架構理解,無需將原始文件全部塞入上下文。
核心功能¶
該插件提供以下核心能力:
- 交互式知識圖譜:掃描代碼庫,產出
knowledge-graph.json,包含架構、依賴、調用關係和複雜度。 - 基於圖譜回答:通過
/understand-chat命令,基於圖譜回答代碼庫問題,而非直接讀取文件。 - 改動影響分析:通過
/understand-diff分析當前改動影響了哪些組件及潛在風險。 - 新手上手指南:通過
/understand-onboard爲新成員生成項目導讀。 - 業務領域提取:通過
/understand-domain從代碼中識別業務領域、流程與步驟。 - 知識庫分析:通過
/understand-knowledge分析 Karpathy 模式的 LLM wiki 知識庫。 - 設計稿分析:通過
/understand-figma利用 Figma API 生成設計知識圖譜。 - 多語言支持:通過
--language zh生成中文摘要、標籤與說明。
安裝與配置¶
在安裝前,請確保環境滿足以下依賴:
- Node.js ≥ 22
- pnpm ≥ 10
使用官方命令安裝:
dsh plugin --profile <你的 profile> add github:GongYuanCaiJi/dsh-understand-anything
安裝過程中會運行 prepare 腳本進行結構校驗。首次運行 /understand 時,插件會按照上游流程使用 pnpm 構建分析引擎。如果 pnpm 攔截了構建步驟,需要在 profile 的 pnpm-workspace.yaml 配置文件裏將本套件加入 allowBuilds(本套件自帶的 pnpm-workspace.yaml 已包含 tree-sitter 語法的 allowBuilds)。
典型用法¶
安裝完成後,在 DSH 中使用以下命令:
# 分析當前代碼庫(生成 .ua/knowledge-graph.json)
/understand
# 中文分析
/understand --language zh
# 增量更新(只重新分析改過的文件)
/understand
# 問代碼庫問題
/understand-chat 這個項目的架構是怎麼樣的?
# 分析當前改動的影響
/understand-diff
# 生成新手指南
/understand-onboard
注意:分析引擎與技能文本均爲上游英文原文,未做翻譯(移植規則:100% 原樣複製)。
適用場景與限制¶
該插件適合需要深入理解代碼庫結構的 DSH 智能體開發場景。需要注意的是,出於插件形態的兼容性考慮,以下功能未包含在本插件中:
- Web 應用:上游的官網(
homepage/)、交互式看板(packages/dashboard)及獨立查看器(packages/viewer)均未搬入。 - Claude Code 專屬功能:Claude Code 專屬的 hooks(提交後自動更新)未搬入。
- 分析語言:目前分析引擎與技能文本保持上游英文原文。
結語¶
dsh-understand-anything 爲 DeepSeek Harness 提供了構建代碼庫級理解能力的工具。通過知識圖譜的方式,它使得智能體能夠在不突破上下文窗口限制的前提下,實現深度的代碼分析和業務理解。更多詳情請參考 GitHub 倉庫。