Graphify-Labs/graphify

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.

解決的問題

Graphify 將專案中零散的檔案(包括程式碼、文件、PDF、圖片和影片)轉換為結構化的知識圖譜。這讓開發者能夠查詢概念之間的關係,並追蹤程式碼庫不同部分之間的路徑,而不必手動搜尋(grep)檔案。

運作方式

Graphify 使用確定性和語意方法相結合的方式來解析專案資產:

  • 程式碼解析: 使用 tree-sitter AST 在本地進行確定性程式碼映射,無需使用 LLM。
  • 語意處理: 使用 LLM(透過設定的 API 金鑰或使用者的 AI 助手)來處理非程式碼資產,如 PDF、圖片和影片。
  • 圖譜結構: 它建立一個真正的圖譜(而非向量索引),其中每個連接都被標記為 EXTRACTED(明確從來源中發現)或 INFERRED(由工具解析)。
  • 整合: 它作為各種 AI 程式設計助手(例如 Claude Code、Cursor、GitHub Copilot)的「技能」進行整合,使它們能夠使用 /graphify 來映射專案並查詢產生的 graph.json。

目標對象

需要理解複雜程式碼庫、追蹤依賴關係,以及跨多種檔案類型進行高階架構審查的開發者和架構師。

特色亮點

  • 本地優先的程式碼映射: 程式碼透過 tree-sitter 在本地解析,確保程式碼不會離開機器。
  • 多資產支援: 將程式碼、文件、PDF、圖片和影音整合為單一統一圖譜。
  • 關係追蹤: 提供 explain 和 path 指令,以找出兩個概念之間的最短連接。
  • 廣泛的助手相容性: 可與 20 多種 AI 程式設計助手搭配使用。
  • 視覺化: 產生互動式的 graph.html,用於以力導向圖(force-directed graph)的形式瀏覽程式碼庫。

相關