XG

xdotech/goatlas

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

34 stars 2 forks 质量 67 趋势 12MIT

GoAtlas:AI驱动的代码智能引擎——一个服务器端MCP平台,通过AST解析深度索引Go/TypeScript代码库,构建Neo4j知识图谱,并提供混合语义......

概览

是一个由人工智能驱动的代码智能平台,帮助大型语言模型和开发者深入理解大型代码库——结合了多语言AST解析、Neo4j知识图谱、pgvector语义搜索和可插拔的LLM后端,全部通过 . - — 通过 AST(树置)解析 Go、TypeScript/JSX、Python 和 Java;每种语言提取的符号、端点、导入 - — 读取 go.mod、package.json、requirements.txt、pom.xml,自动激活 gRPC、Kafka、HTTP 客户端等的连接检测模式 - — 无需配置即可检测跨 Go、TS、Python 和 Java 的服务间连接(gRPC、Kafka、HTTP) - — Neo4j 包、文件、函数、类型的图,带有导入/调用/实现边缘 - — Reciprocal Rank Fusion 合并关键词和向量结果;通过 Gemini 或 Ollama 嵌入进行语义搜索 - — 从入口点的 BFS 追踪执行流程;Louvain 集群代码社区 - 支持 Gemini(gemini-2。

概述(AI 翻译)

GoAtlas 是一个由人工智能驱动的代码智能平台,帮助大型语言模型和开发者深入理解大型代码库——结合了多语言 AST 解析、Neo4j 知识图、pgvector 语义搜索和可插拔的 LLM 后端,所有这些都通过 模型上下文协议(MCP) 公开。

它有什么不同

  • 多语言 — 通过 AST(树置法)解析 Go、TypeScript/JSX、Python 和 Java;每种语言提取符号、端点和导入
  • 零配置自动发现 — 读取 go.mod、package.json、requirements.txt、pom.xml],自动激活 gRPC、Kafka、HTTP 客户端等的连接检测模式
  • 跨服务连接检测 — 检测跨Go、TS、Python和Java的服务间连接(gRPC、Kafka、HTTP),无需配置
  • 知识图谱 — 包含包、文件、函数、类型的 Neo4j 图,带有导入/调用/实现边缘
  • 混合BM25 + 语义搜索 — 互易秩融合合并关键词和向量结果;通过Gemini或Ollama嵌入实现语义搜索
  • 进程与社区检测 — 来自入口点的BFS追踪执行流程;鲁汶集群组代码社区

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

GoAtlas

GoAtlas is an AI-powered code intelligence platform that helps LLMs and developers deeply understand large codebases — combining multi-language AST parsing, a Neo4j knowledge graph, pgvector semantic search, and a pluggable LLM backend, all exposed via the Model Context Protocol (MCP).

What Makes It Different

  • Multi-Language — Go, TypeScript/JSX, Python, and Java parsed via AST (tree-sitter); symbols, endpoints, imports extracted per language
  • Zero-Config Auto-Discovery — Reads go.mod, package.json, requirements.txt, pom.xml to automatically activate connection detection patterns for gRPC, Kafka, HTTP clients, and more
  • Cross-Service Connection Detection — Detects inter-service connections (gRPC, Kafka, HTTP) across Go, TS, Python, and Java with no config required
  • Knowledge Graph — Neo4j graph of packages, files, functions, types with import/call/implementation edges
  • Hybrid BM25 + Semantic Search — Reciprocal Rank Fusion merges keyword and vector results; semantic search via Gemini or Ollama embeddings
  • Process & Community Detection — BFS from entry points traces execution flows; Louvain clustering groups code communities
  • Pluggable LLM — Supports Gemini (gemini-2.0-flash), Ollama (any local model), and any OpenAI-compatible API (vLLM, LiteLLM, etc.) for both embeddings and agentic Q&A
  • MCP Server — 22 tools, 5 resources, 3 prompts via stdio for Cursor, Claude Desktop, and any MCP client
  • Claude Code Hooks — SessionStart/PreToolUse/PostToolUse integration for session context injection, semantic enrichment, and incremental re-indexing
  • AI-Generated Docs — SKILL.md per community cluster and full Markdown wiki from the knowledge graph

Architecture

graph TB
    subgraph CLI["GoAtlas CLI"]
        direction LR
        IDX["index"]
        EMB["embed"]
        GR["build-graph"]
        DET["detect"]
        ASK["ask"]
        CHT["chat"]
        SRV["serve"]
        SKL["skills"]
        WK["wiki"]
    end

    subgraph Core["Core Engine"]
        direction TB
        PARSER["AST Parsers\nGo · TS/JSX · Python · Java"]
        INDEXER["Code Indexer\nsymbols · endpoints · connections"]
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "goatlas": { "command": "/path/to/goatlas", "args": ["serve"], "env": { "DATABASE_DSN": "postgres://goatlas:goatlas@localhost:5432/goatlas", "NEO4J_URL": "bolt://localhost:7687", "NEO4J_USER": "neo4j", "NEO4J_PASS": "goatlas_neo4j", "GEMINI_API_KEY": "your_gemini_api_key" } } } }