CodeGraphContext

Um servidor MCP que indexa código local em um banco de dados de grafos para fornecer contexto a assistentes de IA.

Documentação

🏗️ CodeGraphContext (CGC)

Transforme repositórios de código em um grafo consultável para agentes de IA.

🌐 Idiomas:

🌍 Ajude a traduzir o CodeGraphContext para o seu idioma abrindo uma issue e um PR no GitHub Issues!


Preencha a lacuna entre grafos de código profundos e contexto de IA.

PyPI Version PyPI Downloads License MCP Compatible

Stars Forks Issues PRs Contributors

Tests E2E Tests Website Docs YouTube Demo

Um poderoso servidor MCP e kit de ferramentas CLI que indexa código local em um banco de dados de grafos para fornecer contexto a assistentes de IA e desenvolvedores. Use-o como uma CLI autônoma para análise abrangente de código ou conecte-o ao seu IDE de IA favorito via MCP para compreensão de código com IA.


📍 Navegação Rápida


✨ Experimente o CGC

👨🏻‍💻 Instalação e CLI

Instale em segundos com pip e desbloqueie uma CLI poderosa para análise de grafos de código. Install and unlock the CLI instantly

🛠️ Indexação em Segundos

A CLI analisa inteligentemente seus nós tree-sitter para construir o grafo. Indexing using an MCP client

🤖 Potencializando seu Assistente de IA

Use linguagem natural para consultar cadeias de chamadas complexas via MCP. Using the MCP server


Por que CodeGraphContext?

O CodeGraphContext foi criado para o momento em que a busca por texto simples deixa de ser suficiente. Ele transforma um repositório em um grafo de arquivos, símbolos, chamadas, heranças, importações e relacionamentos, para que você possa passar de "onde isso está definido?" para "como isso realmente se conecta?" sem alternar entre ferramentas.

flowchart LR
  A[Source code] --> B[Tree-sitter and SCIP indexers]
  B --> C[Graph database]
  C --> D[CLI queries]
  C --> E[MCP server]
  D --> F[Direct analysis]
  E --> G[AI assistants with repo context]

Comparação em resumo

AbordagemMelhor paraCompromisso
grep / busca em arquivosBusca exata de stringsPerde relacionamentos e estrutura do código
RAG sobre blocos de códigoRecuperação em linguagem naturalPode perder precisão em nível de símbolo
CodeGraphContextRaciocínio em todo o repositórioExige uma etapa de indexação

Casos de uso comuns

  • Rastreie cadeias de chamadas entre arquivos e pacotes.
  • Entenda hierarquias de classes, importações e limites de módulos.
  • Encontre código morto, pontos críticos e dependências inesperadas.
  • Dê a um assistente de IA o mesmo contexto estrutural que um mantenedor usaria.

FAQ

  • Preciso de um serviço remoto? Não. O CGC funciona localmente com backends incorporados ou com bancos de dados de grafos externos quando você quiser.
  • É apenas para uma linguagem? Não. Ele suporta uma ampla variedade de linguagens mainstream e está em constante expansão.
  • Posso usá-lo com um assistente de IA? Sim. Esse é um dos principais motivos pelos quais o servidor MCP existe.

Detalhes do Projeto


👨‍💻 Mantenedor

CodeGraphContext é criado e mantido ativamente por:

Shashank Shekhar Singh

Contribuições e feedback são sempre bem-vindos! Sinta-se à vontade para entrar em contato para dúvidas, sugestões ou oportunidades de colaboração.


Histórico de Estrelas

Gráfico de Histórico de Estrelas ↗


Recursos

  • Indexação de Código: Analisa o código e constrói um grafo de conhecimento de seus componentes.
  • Análise de Relacionamentos: Consulte chamadores, chamados, hierarquias de classes, cadeias de chamadas e muito mais.
  • Pacotes Pré-indexados: Carregue repositórios famosos instantaneamente com pacotes .cgc - sem necessidade de indexação! (Saiba mais)
  • Monitoramento de Arquivos em Tempo Real: Monitore diretórios em busca de alterações e atualize o grafo automaticamente em tempo real (cgc watch).
  • Configuração Interativa: Um assistente de linha de comando amigável para configuração fácil.
  • Modo Duplo: Funciona como um kit de ferramentas CLI autônomo para desenvolvedores e como um servidor MCP para agentes de IA.
  • Suporte a Múltiplas Linguagens: Suporte completo para 23 linguagens de programação.
  • Backend de Banco de Dados Flexível: FalkorDB Lite (Padrão), KuzuDB, LadybugDB, FalkorDB Remoto, Nornic DB ou Neo4j (todas as plataformas via Docker/nativo).

Visão Geral da Arquitetura

O CodeGraphContext transforma código-fonte em um grafo de conhecimento consultável que pode ser explorado por meio da CLI ou de assistentes de IA via MCP.

flowchart TD
    A[Code Repository] --> B[Tree-sitter / SCIP Indexing]
    B --> C[Knowledge Graph]
    C --> D[Graph Database]
    D --> E[CLI Toolkit]
    D --> F[MCP Server]
    F --> G[AI Assistant]

Fluxo de Trabalho

  1. O código-fonte é analisado usando indexadores Tree-sitter ou SCIP.
  2. Relacionamentos entre funções, classes, importações e chamadas são extraídos.
  3. Um grafo de conhecimento é gerado e armazenado em um banco de dados de grafos.
  4. Os usuários podem consultar o grafo por meio da CLI ou de assistentes de IA usando MCP.

🏗️ Arquitetura e Fluxo de Trabalho

O CodeGraphContext analisa seu código-fonte e constrói um grafo de conhecimento abrangente. Esse grafo pode ser consultado diretamente via kit de ferramentas CLI ou exposto a assistentes de IA por meio do servidor MCP.

flowchart TD
    A[Code Repository] -->|Parsed by| B[Tree-sitter / SCIP Indexing]
    B -->|Generates| C[Knowledge Graph]
    C -->|Stored in| D[(Graph Database)]
    D -->|Queried via| E[CLI Toolkit]
    D -->|Served by| F[MCP Server]
    F -->|Provides context to| G[🤖 AI Assistant]

    classDef default fill:#1f2937,stroke:#8b5cf6,stroke-width:2px,color:#fff;
    classDef db fill:#0f172a,stroke:#3b82f6,stroke-width:2px,color:#fff;
    classDef ai fill:#312e81,stroke:#a855f7,stroke-width:2px,color:#fff;
    
    D:::db
    G:::ai

🏗️ Arquitetura e Fluxo de Trabalho

O CodeGraphContext analisa seu código-fonte e constrói um grafo de conhecimento abrangente. Esse grafo pode ser consultado diretamente via kit de ferramentas CLI ou exposto a assistentes de IA por meio do servidor MCP.

flowchart TD
    A[Code Repository] -->|Parsed by| B[Tree-sitter / SCIP Indexing]
    B -->|Generates| C[Knowledge Graph]
    C -->|Stored in| D[(Graph Database)]
    D -->|Queried via| E[CLI Toolkit]
    D -->|Served by| F[MCP Server]
    F -->|Provides context to| G[🤖 AI Assistant]

    classDef default fill:#1f2937,stroke:#8b5cf6,stroke-width:2px,color:#fff;
    classDef db fill:#0f172a,stroke:#3b82f6,stroke-width:2px,color:#fff;
    classDef ai fill:#312e81,stroke:#a855f7,stroke-width:2px,color:#fff;
    
    D:::db
    G:::ai

Linguagens de Programação Suportadas

O CodeGraphContext fornece análise e parsing abrangentes para as seguintes linguagens:

LinguagemLinguagemLinguagem
🐍Python📜JavaScript🔷TypeScript
☕Java🔵C➕C++
#️⃣C#🐹Go🦀Rust
💎Ruby🐘PHP🍎Swift
🎨Kotlin🎯Dart🐪Perl
🌙Lua🚀ScalaλHaskell
💧Elixir📜Emacs Lisp (elisp)🌐HTML
🎨CSS⚛️TSX⛓️Solidity

Cada analisador de linguagem extrai funções, classes, métodos, parâmetros, relacionamentos de herança, chamadas de função e importações para construir um grafo de código abrangente.

Notas sobre Solidity: .sol usa Tree-sitter via tree-sitter-language-pack (sem SCIP). Suporta remapeamentos Foundry, invocações de modificadores, using Lib for T e emit / revert de erro personalizado como CALLS. Consulte docs/docs/contributing_languages.md § Solidity.

Notas sobre Kotlin: Anotações são registradas em funções e classes como decorators, retendo seus argumentos (@Preview(showBackground = true)). Isso torna o find_dead_code's exclude_decorated_with utilizável em bases de código Kotlin e Android — por exemplo, excluindo Composable, Preview, Test e Provides. Esse filtro corresponde a funções, portanto, anotações em nível de classe não o afetam. Anotações em interfaces, objetos, construtores, parâmetros e propriedades ainda não são registradas.


Opções de Banco de Dados

O CodeGraphContext suporta vários backends de banco de dados de grafos para se adequar ao seu ambiente:

RecursoKuzuDBLadybugDBFalkorDB LiteNeo4j / Nornic DB
Padrão típicoFallback multiplataforma quando o FalkorDB Lite não está disponívelBackend incorporado opcionalPadrão no Unix (Python 3.12+, quando falkordblite está instalado)Quando configurado explicitamente via cgc config db
ConfiguraçãoZero-config / IncorporadoZero-config / IncorporadoZero-config / Em processoDocker / Externo
PlataformaTodas (Windows nativo, macOS, Linux)Todas (Windows nativo, macOS, Linux)Somente Unix (Linux/macOS/WSL)Todas as plataformas
Caso de usoDesktop, IDE, desenvolvimento localProjetos de pesquisa personalizadosDesenvolvimento Unix especializadoEmpresarial, grafos massivos
Requisitopip install kuzupip install ladybugpip install falkordbliteServidor Neo4j / Docker / Nornic Cloud
Velocidade⚡ Extremamente rápido⚡ Rápido🚀 Escalável🌐 Dependente de rede
PersistênciaSim (em disco)Sim (em disco)Sim (em disco)Sim (no servidor)

KuzuDB/LadybugDB incorporados usam por padrão um pool de buffer de 4 GiB (CGC_EMBEDDED_BUFFER_POOL_MB). Defina essa variável de ambiente para outro valor em MiB, ou 0 para o padrão da biblioteca (~80% da RAM do sistema).


Indexação SCIP (opcional)

Quando SCIP_INDEXER=true na sua configuração do CGC (~/.codegraphcontext/.env), algumas linguagens usam indexadores SCIP externos para chamadas e heranças mais precisas do que as heurísticas do Tree-sitter sozinhas.

C e C++ usam scip-clang, que requer um arquivo compile_commands.json (um banco de dados de compilação JSON): uma entrada por unidade de tradução com o comando real do compilador (caminhos de inclusão, defines -D, -std, etc.). Sem ele, o scip-clang não pode ser executado; o CGC registra um aviso e volta para o Tree-sitter para esse repositório. Maneiras típicas de produzir o arquivo: CMake com -DCMAKE_EXPORT_COMPILE_COMMANDS=ON, ou envolva sua compilação real com Bear (por exemplo, bear -- make). O CGC também procura em build/ e cmake-build-*/ por esse nome de arquivo.

C# usa scip-dotnet (Roslyn); você precisa de um .csproj / .sln normal e um restore bem-sucedido — sem compile_commands.json.

O SCIP é independente do banco de dados de grafos que você usa (Kuzu, Neo4j, etc.); o mesmo sinalizador se aplica a todos os backends.


Usado Por

O CodeGraphContext já está sendo explorado por desenvolvedores e projetos para:

  • Análise estática de código em assistentes de IA
  • Visualização baseada em grafos de projetos
  • Detecção de código morto e complexidade

Se você está usando o CodeGraphContext no seu projeto, sinta-se à vontade para abrir um PR e adicioná-lo aqui! 🚀


Dependências

  • neo4j>=5.15.0
  • watchdog>=3.0.0
  • stdlibs>=2023.11.18
  • typer>=0.9.0
  • rich>=13.7.0
  • inquirerpy>=0.3.4
  • python-dotenv>=1.0.0
  • tree-sitter>=0.24.0,<0.26.0
  • tree-sitter-language-pack>=1.6,<2.0
  • pyyaml
  • pathspec>=0.12.1
  • falkordb>=1.0,<1.6
  • falkordblite>=0.7,<0.10 (somente Unix, Python 3.12+)
  • kuzu (mecanismo KuzuDB)
  • fastapi>=0.100.0
  • uvicorn>=0.22.0
  • requests>=2.28.0
  • protobuf>=3.20,<3.21

Observação: Python 3.10-3.14 é suportado.


🚀 Instalação e Início Rápido

  1. Instale o kit de ferramentas:

    pip install codegraphcontext
    
  2. Solução de problemas (comando não encontrado): Se o comando codegraphcontext não for encontrado, execute esta correção de uma linha:

    curl -sSL https://raw.githubusercontent.com/CodeGraphContext/CodeGraphContext/main/scripts/post_install_fix.sh | bash
    
  3. Configuração do Banco de Dados (Automática): O CodeGraphContext usa um banco de dados de grafos incorporado por padrão.

    • FalkorDB Lite: Backend padrão.
    • KuzuDB: Backend incorporado multiplataforma.
    • Neo4j: Execute codegraphcontext neo4j setup para usar um servidor externo.

🧪 Configuração de Desenvolvimento Local

Se você quiser executar o CodeGraphContext a partir de um clone local e contribuir com alterações, use uma instalação editável:

git clone https://github.com/CodeGraphContext/CodeGraphContext.git
cd CodeGraphContext
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

Em seguida, verifique a instalação e experimente os comandos locais:

cgc --help
cgc doctor
cgc index .
cgc analyze callers main

Para trabalhar com o servidor MCP, finalize a configuração com:

cgc mcp setup
cgc mcp start

Se você estiver apenas instalando o pacote publicado, pip install codegraphcontext é suficiente. Se você estiver desenvolvendo recursos com uso intensivo de parser e quiser também os extras opcionais de parsing, instale com pip install -e ".[dev,parsing]".


🐳 Docker (Python Não Necessário)

Execute o CodeGraphContext sem instalar Python — baixe a imagem e comece a indexar:

Início Rápido

# Pull the latest image
docker pull codegraphcontext/codegraphcontext:latest

# Index your current directory
docker run --rm -v "$(pwd):/workspace" codegraphcontext/codegraphcontext cgc index .

# List indexed repos
docker run --rm -v cgc-data:/home/cgc/.codegraphcontext \
    codegraphcontext/codegraphcontext cgc list

# Interactive shell
docker run -it --rm -v "$(pwd):/workspace" \
    -v cgc-data:/home/cgc/.codegraphcontext \
    codegraphcontext/codegraphcontext bash

Docker Compose

# Clone the repo and start with Docker Compose
git clone https://github.com/CodeGraphContext/CodeGraphContext.git
cd CodeGraphContext

# Start with embedded DB
docker compose run --rm cgc index .

# Start with external FalkorDB
docker compose --profile falkordb up -d

# Start with visualization server
docker compose --profile viz up -d
# Open http://localhost:8080

Tags Docker Disponíveis

TagDescrição
latestÚltima versão estável
edgeÚltima versão do branch main (pode ser instável)
0.4.19Versão específica
0.4Última correção na série 0.4.x

Para usos mais avançados do Docker, incluindo executar o Servidor MCP ou conectar bancos de dados externos, consulte nosso Guia Abrangente de Docker.


📋 Pré-requisitos

Antes de instalar o CodeGraphContext, garanta que você tenha:

  • Python 3.10 ou posterior
  • Gerenciador de pacotes pip
  • Git (opcional, para clonar repositórios)

Verifique sua instalação do Python:

python --version

🚀 Guia de Configuração Passo a Passo

Passo 1: Instalar o CodeGraphContext

pip install codegraphcontext  # Installs CodeGraphContext and required dependencies

Este comando instala o CodeGraphContext e todas as dependências necessárias.

Passo 2: Verificar a Instalação

codegraphcontext --help

Se o comando exibir os comandos CLI disponíveis, a instalação foi bem-sucedida.

Passo 3: Configuração do Banco de Dados

O CodeGraphContext usa automaticamente um banco de dados embutido por padrão, portanto nenhuma configuração adicional é necessária para a maioria dos usuários.


🏃 Como Executar o Projeto Localmente

Indexar um Repositório

codegraphcontext index .  # Scans current directory and builds code graph

Isso examina o projeto atual e cria um grafo de código pesquisável.

Visualizar Repositórios Indexados

codegraphcontext list

Exibe todos os repositórios atualmente indexados pelo CodeGraphContext.

Analisar Código

codegraphcontext analyze dead-code

Encontra código potencialmente não utilizado no repositório indexado.


✅ Verifique se Tudo Funciona

Após indexar um repositório, execute:

codegraphcontext list  # Shows all indexed repositories in the system

Se o comando for executado com sucesso e exibir os repositórios indexados, sua configuração está completa e o CodeGraphContext está pronto para uso.

Para o Modo CLI Toolkit

Comece a usar imediatamente com comandos CLI:

# Index your current directory
codegraphcontext index .

# List all indexed repositories
codegraphcontext list

# Analyze who calls a function
codegraphcontext analyze callers my_function

# Find complex code
codegraphcontext analyze complexity --threshold 10

# Find dead code
codegraphcontext analyze dead-code

# Watch for live changes (optional)
codegraphcontext watch .

# See all commands
codegraphcontext help

Consulte o Guia Completo de Comandos CLI para todos os comandos disponíveis e cenários de uso.

🎨 Visualização Interativa Premium

O CodeGraphContext pode gerar grafos de conhecimento interativos e impressionantes do seu código. Diferente de diagramas estáticos, estes são exploradores web premium:

  • Estética Premium: Modo escuro, glassmorphism e tipografia moderna (Outfit/JetBrains Mono).
  • Inspeção Interativa: Clique em qualquer nó para abrir um painel lateral detalhado com informações de símbolos, caminhos de arquivos e contexto.
  • Busca Rápida: Pesquisa ao vivo no grafo para encontrar símbolos específicos instantaneamente.
  • Layouts Inteligentes: Layouts direcionados por força e hierárquicos que tornam relacionamentos complexos legíveis.
  • Visualização Sem Dependências: Arquivos HTML autônomos que funcionam em qualquer navegador moderno.
# Visualize function calls
codegraphcontext analyze calls my_function --viz

# Explore class hierarchies
codegraphcontext analyze tree MyClass --viz

# Visualize search results
codegraphcontext find pattern "Auth" --viz

🤖 Para o Modo Servidor MCP

Configure seu assistente de IA para usar o CodeGraphContext:

  1. Configuração: Execute o assistente de configuração do MCP para configurar seu IDE/assistente de IA:

    codegraphcontext mcp setup
    

    O assistente pode detectar e configurar automaticamente:

    • VS Code
    • Cursor
    • Windsurf
    • Zed
    • Claude
    • Gemini CLI
    • ChatGPT Codex
    • Cline
    • RooCode
    • Amazon Q Developer
    • Kiro
    • Goose
    • OpenCode

    Após a configuração bem-sucedida, o codegraphcontext mcp setup gerará e colocará os arquivos de configuração necessários:

    • Ele cria um arquivo mcp.json no seu diretório atual para referência.
    • Ele armazena suas credenciais de banco de dados com segurança em ~/.codegraphcontext/.env.
    • Ele atualiza o arquivo de configurações do seu IDE/CLI escolhido (por exemplo, .claude.json ou o settings.json do VS Code).
  2. Iniciar: Inicie o servidor MCP:

    codegraphcontext mcp start
    
  3. Usar: Agora interaja com sua base de código através do seu assistente de IA usando linguagem natural! Veja exemplos abaixo.


Ignorando Arquivos (.cgcignore)

Você pode instruir o CodeGraphContext a ignorar arquivos e diretórios específicos criando um arquivo .cgcignore na raiz do seu projeto. Este arquivo usa a mesma sintaxe do .gitignore.

Exemplo de arquivo .cgcignore:

# Ignore build artifacts
/build/
/dist/

# Ignore dependencies
/node_modules/
/vendor/

# Ignore logs
*.log

Configuração do Cliente MCP

O comando codegraphcontext mcp setup tenta configurar automaticamente seu IDE/CLI. Se você optar por não usar a configuração automática, ou se sua ferramenta não for suportada, você pode configurá-la manualmente.

Adicione a seguinte configuração de servidor ao arquivo de configurações do seu cliente (por exemplo, o settings.json ou .claude.json do VS Code):

{
  "mcpServers": {
    "CodeGraphContext": {
      "command": "codegraphcontext",
      "args": [
        "mcp",
        "start"
      ],
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

Configuração do OpenCode

Para instruções sobre como instalar e configurar servidores MCP com o OpenCode, consulte o Guia MCP do OpenCode.

Se instalado via pipx

Se você instalou o CodeGraphContext usando pipx, use a seguinte configuração:

{
  "mcpServers": {
    "CodeGraphContext": {
      "command": "pipx",
      "args": [
        "run",
        "codegraphcontext",
        "mcp",
        "start"
      ],
      "env": {
        "NEO4J_URI": "YOUR_NEO4J_URI",
        "NEO4J_USERNAME": "YOUR_NEO4J_USERNAME",
        "NEO4J_PASSWORD": "YOUR_NEO4J_PASSWORD"
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

Saída Otimizada por Tokens (GCF)

Reduza os tokens de resposta das ferramentas em ~62% com o formato de saída GCF opcional:

pip install gcf-python
CGC_OUTPUT_FORMAT=gcf codegraphcontext mcp start

Ou adicione-o à configuração do seu cliente MCP:

{
  "mcpServers": {
    "CodeGraphContext": {
      "command": "codegraphcontext",
      "args": ["mcp", "start"],
      "env": {
        "CGC_OUTPUT_FORMAT": "gcf"
      }
    }
  }
}

O GCF codifica dados estruturados com campos posicionais (chaves declaradas uma vez, valores separados por pipe). Os resultados de consulta do grafo de código (símbolos, relacionamentos, chamadores, complexidade) são exatamente o formato de dados onde o GCF mais economiza. Compreensão 100% por LLMs em todos os modelos de fronteira. Retorna ao JSON se o gcf-python não estiver instalado.


Exemplos de Interação em Linguagem Natural

Uma vez que o servidor esteja em execução, você pode interagir com ele através do seu assistente de IA usando inglês simples. Aqui estão alguns exemplos do que você pode dizer:

Indexação e Observação de Arquivos

  • Para indexar um novo projeto:

    • "Por favor, indexe o código no diretório /path/to/my-project." OU
    • "Adicione o projeto em ~/dev/my-other-project ao grafo de código."
  • Para começar a observar um diretório para mudanças ao vivo:

    • "Observe o diretório /path/to/my-active-project para mudanças." OU
    • "Mantenha o grafo de código atualizado para o projeto em que estou trabalhando em ~/dev/main-app."

    Quando você pede para observar um diretório, o sistema executa duas ações ao mesmo tempo:

    1. Ele inicia uma varredura completa para indexar todo o código naquele diretório. Este processo roda em segundo plano, e você receberá um job_id para acompanhar seu progresso.
    2. Ele começa a observar o diretório para quaisquer mudanças de arquivos, mantendo o grafo atualizado em tempo real.

    Isso significa que você pode começar simplesmente pedindo ao sistema para observar um diretório, e ele lidará automaticamente tanto com a indexação inicial quanto com as atualizações contínuas.

Consultando e Entendendo Código

  • Encontrando onde o código é definido:

    • "Onde está a função process_payment?"
    • "Encontre a classe User para mim."
    • "Mostre-me qualquer código relacionado a 'conexão de banco de dados'."
  • Analisando relacionamentos e impacto:

    • "Quais outras funções chamam a função get_user_by_id?"
    • "Se eu mudar a função calculate_tax, quais outras partes do código serão afetadas?"
    • "Mostre-me a hierarquia de herança da classe BaseController."
    • "Quais métodos a classe Order possui?"
  • Explorando dependências:

    • "Quais arquivos importam a biblioteca requests?"
    • "Encontre todas as implementações do método render."
  • Rastreamento Avançado de Cadeias de Chamadas e Dependências (Atravessando Centenas de Arquivos): O CodeGraphContext se destaca em rastrear fluxos de execução complexos e dependências em vastas bases de código. Aproveitando o poder dos bancos de dados de grafos, ele pode identificar chamadores e chamados diretos e indiretos, mesmo quando uma função é chamada através de múltiplas camadas de abstração ou em vários arquivos. Isso é inestimável para:

    • Análise de Impacto: Entenda o efeito cascata completo de uma mudança em uma função central.

    • Depuração: Trace o caminho de execução de um ponto de entrada até um bug específico.

    • Compreensão de Código: Entenda como diferentes partes de um grande sistema interagem.

    • "Mostre-me a cadeia de chamadas completa da função main até process_data."

    • "Encontre todas as funções que chamam validate_input direta ou indiretamente."

    • "Quais são todas as funções que initialize_system eventualmente chama?"

    • "Trace as dependências do módulo DatabaseManager."

  • Qualidade e Manutenção de Código:

    • "Há algum código morto ou não utilizado neste projeto?"
    • "Calcule a complexidade ciclomática da função process_data em src/utils.py."
    • "Encontre as 5 funções mais complexas na base de código."
  • Gerenciamento de Repositórios:

    • "Liste todos os repositórios atualmente indexados."
    • "Exclua o repositório indexado em /path/to/old-project."

Solução de Problemas

Enfrentando um erro de bloqueio, um loop de "indexação que nunca termina" ou um recurso silencioso? Consulte docs/TROUBLESHOOTING.md — cada entrada mapeia um problema real relatado para sua correção ou solução alternativa.


Contribuindo

Contribuições são bem-vindas! 🎉
Consulte nosso CONTRIBUTING.md para diretrizes detalhadas. Se você tiver ideias para novos recursos, integrações ou melhorias, abra uma issue ou envie um Pull Request.

Participe das discussões e ajude a moldar o futuro do CodeGraphContext.