cloudwego/abcoder

deep, reliable and confidential coding-context

解決的問題

ABCoder 是一個旨在提升大型語言模型(LLMs)所獲得的程式碼上下文品質的框架,透過提供一種結構化、語言無關的程式碼表示方式,減少幻覺並提高 AI 輔助程式設計的精確度。它解決了 LLM 在理解大型複雜程式碼庫時的困難,透過提供一種標準化、AI 友好的程式碼結構化表示來實現。

工作原理

該框架引入了 通用抽象語法樹(UniAST),這是一種將多種程式語言的程式碼轉換為標準化、AI 友好格式的規範。它包含一個通用解析器(General Parser),用於將程式碼轉換為 UniAST,以及一個通用產生器(General Writer),用於將 UniAST 轉換回原始程式碼。

ABCoder 作為一個 模型上下文協定(MCP)伺服器 運作,允許 AI 代理(如 Claude Code)使用一組工具在本地精確地導航和分析程式碼倉儲。它提供了一個多層分析鏈(從倉儲到套件、檔案,再到特定的 AST 節點),幫助 LLM 理解相依關係和參考。

適用對象

開發 AI 輔助程式設計應用(如程式碼審查器、最佳化器或翻譯器)的開發者,以及使用 AI 代理進行程式碼庫分析和實作的軟體工程師。

主要亮點

  • UniAST 規範:面向 AI 的語言無關、結構化程式碼上下文。
  • Code-RAG:本地化、保密的 Code-Retrieval-Augmented-Generation,支援工作區內外及第三方套件。
  • Claude Code 集成:透過自訂斜線指令(/abcoder:schedule, /abcoder:task, /abcoder:recheck)實現 AST 驅動的工作流程深度整合。
  • 多語言支援:支援 Go、Rust、C、Python、JS/TS 和 Java 的解析。
  • MCP 伺服器能力:可整合至任何支援 Model Context Protocol 的 AI 代理中。

相關

  • 專案
  • 專案
  • 專案
  • 專案